pulumi-github 6.11.0a1768542226__py3-none-any.whl → 6.11.0a1768966924__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
pulumi_github/__init__.py CHANGED
@@ -15,6 +15,7 @@ from .actions_organization_secret import *
15
15
  from .actions_organization_secret_repositories import *
16
16
  from .actions_organization_secret_repository import *
17
17
  from .actions_organization_variable import *
18
+ from .actions_organization_workflow_permissions import *
18
19
  from .actions_repository_access_level import *
19
20
  from .actions_repository_oidc_subject_claim_customization_template import *
20
21
  from .actions_repository_permissions import *
@@ -245,6 +246,14 @@ _utilities.register(
245
246
  "github:index/actionsOrganizationVariable:ActionsOrganizationVariable": "ActionsOrganizationVariable"
246
247
  }
247
248
  },
249
+ {
250
+ "pkg": "github",
251
+ "mod": "index/actionsOrganizationWorkflowPermissions",
252
+ "fqn": "pulumi_github",
253
+ "classes": {
254
+ "github:index/actionsOrganizationWorkflowPermissions:ActionsOrganizationWorkflowPermissions": "ActionsOrganizationWorkflowPermissions"
255
+ }
256
+ },
248
257
  {
249
258
  "pkg": "github",
250
259
  "mod": "index/actionsRepositoryAccessLevel",
pulumi_github/_inputs.py CHANGED
@@ -65,6 +65,8 @@ __all__ = [
65
65
  'OrganizationRulesetRulesCommitMessagePatternArgsDict',
66
66
  'OrganizationRulesetRulesCommitterEmailPatternArgs',
67
67
  'OrganizationRulesetRulesCommitterEmailPatternArgsDict',
68
+ 'OrganizationRulesetRulesCopilotCodeReviewArgs',
69
+ 'OrganizationRulesetRulesCopilotCodeReviewArgsDict',
68
70
  'OrganizationRulesetRulesFileExtensionRestrictionArgs',
69
71
  'OrganizationRulesetRulesFileExtensionRestrictionArgsDict',
70
72
  'OrganizationRulesetRulesFilePathRestrictionArgs',
@@ -123,6 +125,8 @@ __all__ = [
123
125
  'RepositoryRulesetRulesCommitMessagePatternArgsDict',
124
126
  'RepositoryRulesetRulesCommitterEmailPatternArgs',
125
127
  'RepositoryRulesetRulesCommitterEmailPatternArgsDict',
128
+ 'RepositoryRulesetRulesCopilotCodeReviewArgs',
129
+ 'RepositoryRulesetRulesCopilotCodeReviewArgsDict',
126
130
  'RepositoryRulesetRulesFileExtensionRestrictionArgs',
127
131
  'RepositoryRulesetRulesFileExtensionRestrictionArgsDict',
128
132
  'RepositoryRulesetRulesFilePathRestrictionArgs',
@@ -1514,8 +1518,8 @@ if not MYPY:
1514
1518
 
1515
1519
  ~>Note: at the time of writing this, the following actor types correspond to the following actor IDs:
1516
1520
 
1517
- * `OrganizationAdmin` > `1`
1518
- * `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
1521
+ - `OrganizationAdmin` > `1`
1522
+ - `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
1519
1523
  """
1520
1524
  actor_id: NotRequired[pulumi.Input[_builtins.int]]
1521
1525
  """
@@ -1536,8 +1540,8 @@ class OrganizationRulesetBypassActorArgs:
1536
1540
 
1537
1541
  ~>Note: at the time of writing this, the following actor types correspond to the following actor IDs:
1538
1542
 
1539
- * `OrganizationAdmin` > `1`
1540
- * `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
1543
+ - `OrganizationAdmin` > `1`
1544
+ - `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
1541
1545
  :param pulumi.Input[_builtins.int] actor_id: (Number) The ID of the actor that can bypass a ruleset.
1542
1546
  """
1543
1547
  pulumi.set(__self__, "actor_type", actor_type)
@@ -1565,8 +1569,8 @@ class OrganizationRulesetBypassActorArgs:
1565
1569
 
1566
1570
  ~>Note: at the time of writing this, the following actor types correspond to the following actor IDs:
1567
1571
 
1568
- * `OrganizationAdmin` > `1`
1569
- * `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
1572
+ - `OrganizationAdmin` > `1`
1573
+ - `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
1570
1574
  """
1571
1575
  return pulumi.get(self, "bypass_mode")
1572
1576
 
@@ -1802,6 +1806,10 @@ if not MYPY:
1802
1806
  """
1803
1807
  (Block List, Max: 1) Parameters to be used for the committer_email_pattern rule. This rule only applies to repositories within an enterprise, it cannot be applied to repositories owned by individuals or regular organizations. (see below for nested schema)
1804
1808
  """
1809
+ copilot_code_review: NotRequired[pulumi.Input['OrganizationRulesetRulesCopilotCodeReviewArgsDict']]
1810
+ """
1811
+ (Block List, Max: 1) Automatically request Copilot code review for new pull requests if the author has access to Copilot code review and their premium requests quota has not reached the limit. (see below for nested schema)
1812
+ """
1805
1813
  creation: NotRequired[pulumi.Input[_builtins.bool]]
1806
1814
  """
1807
1815
  (Boolean) Only allow users with bypass permission to create matching refs.
@@ -1872,6 +1880,7 @@ class OrganizationRulesetRulesArgs:
1872
1880
  commit_author_email_pattern: Optional[pulumi.Input['OrganizationRulesetRulesCommitAuthorEmailPatternArgs']] = None,
1873
1881
  commit_message_pattern: Optional[pulumi.Input['OrganizationRulesetRulesCommitMessagePatternArgs']] = None,
1874
1882
  committer_email_pattern: Optional[pulumi.Input['OrganizationRulesetRulesCommitterEmailPatternArgs']] = None,
1883
+ copilot_code_review: Optional[pulumi.Input['OrganizationRulesetRulesCopilotCodeReviewArgs']] = None,
1875
1884
  creation: Optional[pulumi.Input[_builtins.bool]] = None,
1876
1885
  deletion: Optional[pulumi.Input[_builtins.bool]] = None,
1877
1886
  file_extension_restriction: Optional[pulumi.Input['OrganizationRulesetRulesFileExtensionRestrictionArgs']] = None,
@@ -1892,6 +1901,7 @@ class OrganizationRulesetRulesArgs:
1892
1901
  :param pulumi.Input['OrganizationRulesetRulesCommitAuthorEmailPatternArgs'] commit_author_email_pattern: (Block List, Max: 1) Parameters to be used for the commit_author_email_pattern rule. This rule only applies to repositories within an enterprise, it cannot be applied to repositories owned by individuals or regular organizations. (see below for nested schema)
1893
1902
  :param pulumi.Input['OrganizationRulesetRulesCommitMessagePatternArgs'] commit_message_pattern: (Block List, Max: 1) Parameters to be used for the commit_message_pattern rule. This rule only applies to repositories within an enterprise, it cannot be applied to repositories owned by individuals or regular organizations. (see below for nested schema)
1894
1903
  :param pulumi.Input['OrganizationRulesetRulesCommitterEmailPatternArgs'] committer_email_pattern: (Block List, Max: 1) Parameters to be used for the committer_email_pattern rule. This rule only applies to repositories within an enterprise, it cannot be applied to repositories owned by individuals or regular organizations. (see below for nested schema)
1904
+ :param pulumi.Input['OrganizationRulesetRulesCopilotCodeReviewArgs'] copilot_code_review: (Block List, Max: 1) Automatically request Copilot code review for new pull requests if the author has access to Copilot code review and their premium requests quota has not reached the limit. (see below for nested schema)
1895
1905
  :param pulumi.Input[_builtins.bool] creation: (Boolean) Only allow users with bypass permission to create matching refs.
1896
1906
  :param pulumi.Input[_builtins.bool] deletion: (Boolean) Only allow users with bypass permissions to delete matching refs.
1897
1907
  :param pulumi.Input['OrganizationRulesetRulesFileExtensionRestrictionArgs'] file_extension_restriction: (Block List, Max: 1) Prevent commits that include files with specified file extensions from being pushed to the commit graph. This rule only applies to rulesets with target `push`. (see below for nested schema)
@@ -1916,6 +1926,8 @@ class OrganizationRulesetRulesArgs:
1916
1926
  pulumi.set(__self__, "commit_message_pattern", commit_message_pattern)
1917
1927
  if committer_email_pattern is not None:
1918
1928
  pulumi.set(__self__, "committer_email_pattern", committer_email_pattern)
1929
+ if copilot_code_review is not None:
1930
+ pulumi.set(__self__, "copilot_code_review", copilot_code_review)
1919
1931
  if creation is not None:
1920
1932
  pulumi.set(__self__, "creation", creation)
1921
1933
  if deletion is not None:
@@ -1995,6 +2007,18 @@ class OrganizationRulesetRulesArgs:
1995
2007
  def committer_email_pattern(self, value: Optional[pulumi.Input['OrganizationRulesetRulesCommitterEmailPatternArgs']]):
1996
2008
  pulumi.set(self, "committer_email_pattern", value)
1997
2009
 
2010
+ @_builtins.property
2011
+ @pulumi.getter(name="copilotCodeReview")
2012
+ def copilot_code_review(self) -> Optional[pulumi.Input['OrganizationRulesetRulesCopilotCodeReviewArgs']]:
2013
+ """
2014
+ (Block List, Max: 1) Automatically request Copilot code review for new pull requests if the author has access to Copilot code review and their premium requests quota has not reached the limit. (see below for nested schema)
2015
+ """
2016
+ return pulumi.get(self, "copilot_code_review")
2017
+
2018
+ @copilot_code_review.setter
2019
+ def copilot_code_review(self, value: Optional[pulumi.Input['OrganizationRulesetRulesCopilotCodeReviewArgs']]):
2020
+ pulumi.set(self, "copilot_code_review", value)
2021
+
1998
2022
  @_builtins.property
1999
2023
  @pulumi.getter
2000
2024
  def creation(self) -> Optional[pulumi.Input[_builtins.bool]]:
@@ -2536,6 +2560,58 @@ class OrganizationRulesetRulesCommitterEmailPatternArgs:
2536
2560
  pulumi.set(self, "negate", value)
2537
2561
 
2538
2562
 
2563
+ if not MYPY:
2564
+ class OrganizationRulesetRulesCopilotCodeReviewArgsDict(TypedDict):
2565
+ review_draft_pull_requests: NotRequired[pulumi.Input[_builtins.bool]]
2566
+ """
2567
+ Copilot automatically reviews draft pull requests before they are marked as ready for review. Defaults to `false`.
2568
+ """
2569
+ review_on_push: NotRequired[pulumi.Input[_builtins.bool]]
2570
+ """
2571
+ Copilot automatically reviews each new push to the pull request. Defaults to `false`.
2572
+ """
2573
+ elif False:
2574
+ OrganizationRulesetRulesCopilotCodeReviewArgsDict: TypeAlias = Mapping[str, Any]
2575
+
2576
+ @pulumi.input_type
2577
+ class OrganizationRulesetRulesCopilotCodeReviewArgs:
2578
+ def __init__(__self__, *,
2579
+ review_draft_pull_requests: Optional[pulumi.Input[_builtins.bool]] = None,
2580
+ review_on_push: Optional[pulumi.Input[_builtins.bool]] = None):
2581
+ """
2582
+ :param pulumi.Input[_builtins.bool] review_draft_pull_requests: Copilot automatically reviews draft pull requests before they are marked as ready for review. Defaults to `false`.
2583
+ :param pulumi.Input[_builtins.bool] review_on_push: Copilot automatically reviews each new push to the pull request. Defaults to `false`.
2584
+ """
2585
+ if review_draft_pull_requests is not None:
2586
+ pulumi.set(__self__, "review_draft_pull_requests", review_draft_pull_requests)
2587
+ if review_on_push is not None:
2588
+ pulumi.set(__self__, "review_on_push", review_on_push)
2589
+
2590
+ @_builtins.property
2591
+ @pulumi.getter(name="reviewDraftPullRequests")
2592
+ def review_draft_pull_requests(self) -> Optional[pulumi.Input[_builtins.bool]]:
2593
+ """
2594
+ Copilot automatically reviews draft pull requests before they are marked as ready for review. Defaults to `false`.
2595
+ """
2596
+ return pulumi.get(self, "review_draft_pull_requests")
2597
+
2598
+ @review_draft_pull_requests.setter
2599
+ def review_draft_pull_requests(self, value: Optional[pulumi.Input[_builtins.bool]]):
2600
+ pulumi.set(self, "review_draft_pull_requests", value)
2601
+
2602
+ @_builtins.property
2603
+ @pulumi.getter(name="reviewOnPush")
2604
+ def review_on_push(self) -> Optional[pulumi.Input[_builtins.bool]]:
2605
+ """
2606
+ Copilot automatically reviews each new push to the pull request. Defaults to `false`.
2607
+ """
2608
+ return pulumi.get(self, "review_on_push")
2609
+
2610
+ @review_on_push.setter
2611
+ def review_on_push(self, value: Optional[pulumi.Input[_builtins.bool]]):
2612
+ pulumi.set(self, "review_on_push", value)
2613
+
2614
+
2539
2615
  if not MYPY:
2540
2616
  class OrganizationRulesetRulesFileExtensionRestrictionArgsDict(TypedDict):
2541
2617
  restricted_file_extensions: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]
@@ -2662,6 +2738,10 @@ class OrganizationRulesetRulesMaxFileSizeArgs:
2662
2738
 
2663
2739
  if not MYPY:
2664
2740
  class OrganizationRulesetRulesPullRequestArgsDict(TypedDict):
2741
+ allowed_merge_methods: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
2742
+ """
2743
+ Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.
2744
+ """
2665
2745
  dismiss_stale_reviews_on_push: NotRequired[pulumi.Input[_builtins.bool]]
2666
2746
  """
2667
2747
  New, reviewable commits pushed will dismiss previous pull request review approvals. Defaults to `false`.
@@ -2688,18 +2768,22 @@ elif False:
2688
2768
  @pulumi.input_type
2689
2769
  class OrganizationRulesetRulesPullRequestArgs:
2690
2770
  def __init__(__self__, *,
2771
+ allowed_merge_methods: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
2691
2772
  dismiss_stale_reviews_on_push: Optional[pulumi.Input[_builtins.bool]] = None,
2692
2773
  require_code_owner_review: Optional[pulumi.Input[_builtins.bool]] = None,
2693
2774
  require_last_push_approval: Optional[pulumi.Input[_builtins.bool]] = None,
2694
2775
  required_approving_review_count: Optional[pulumi.Input[_builtins.int]] = None,
2695
2776
  required_review_thread_resolution: Optional[pulumi.Input[_builtins.bool]] = None):
2696
2777
  """
2778
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_merge_methods: Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.
2697
2779
  :param pulumi.Input[_builtins.bool] dismiss_stale_reviews_on_push: New, reviewable commits pushed will dismiss previous pull request review approvals. Defaults to `false`.
2698
2780
  :param pulumi.Input[_builtins.bool] require_code_owner_review: Require an approving review in pull requests that modify files that have a designated code owner. Defaults to `false`.
2699
2781
  :param pulumi.Input[_builtins.bool] require_last_push_approval: Whether the most recent reviewable push must be approved by someone other than the person who pushed it. Defaults to `false`.
2700
2782
  :param pulumi.Input[_builtins.int] required_approving_review_count: The number of approving reviews that are required before a pull request can be merged. Defaults to `0`.
2701
2783
  :param pulumi.Input[_builtins.bool] required_review_thread_resolution: All conversations on code must be resolved before a pull request can be merged. Defaults to `false`.
2702
2784
  """
2785
+ if allowed_merge_methods is not None:
2786
+ pulumi.set(__self__, "allowed_merge_methods", allowed_merge_methods)
2703
2787
  if dismiss_stale_reviews_on_push is not None:
2704
2788
  pulumi.set(__self__, "dismiss_stale_reviews_on_push", dismiss_stale_reviews_on_push)
2705
2789
  if require_code_owner_review is not None:
@@ -2711,6 +2795,18 @@ class OrganizationRulesetRulesPullRequestArgs:
2711
2795
  if required_review_thread_resolution is not None:
2712
2796
  pulumi.set(__self__, "required_review_thread_resolution", required_review_thread_resolution)
2713
2797
 
2798
+ @_builtins.property
2799
+ @pulumi.getter(name="allowedMergeMethods")
2800
+ def allowed_merge_methods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
2801
+ """
2802
+ Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.
2803
+ """
2804
+ return pulumi.get(self, "allowed_merge_methods")
2805
+
2806
+ @allowed_merge_methods.setter
2807
+ def allowed_merge_methods(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
2808
+ pulumi.set(self, "allowed_merge_methods", value)
2809
+
2714
2810
  @_builtins.property
2715
2811
  @pulumi.getter(name="dismissStaleReviewsOnPush")
2716
2812
  def dismiss_stale_reviews_on_push(self) -> Optional[pulumi.Input[_builtins.bool]]:
@@ -3820,8 +3916,8 @@ if not MYPY:
3820
3916
 
3821
3917
  > Note: at the time of writing this, the following actor types correspond to the following actor IDs:
3822
3918
 
3823
- * `OrganizationAdmin` > `1`
3824
- * `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
3919
+ - `OrganizationAdmin` > `1`
3920
+ - `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
3825
3921
  """
3826
3922
  actor_id: NotRequired[pulumi.Input[_builtins.int]]
3827
3923
  """
@@ -3842,8 +3938,8 @@ class RepositoryRulesetBypassActorArgs:
3842
3938
 
3843
3939
  > Note: at the time of writing this, the following actor types correspond to the following actor IDs:
3844
3940
 
3845
- * `OrganizationAdmin` > `1`
3846
- * `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
3941
+ - `OrganizationAdmin` > `1`
3942
+ - `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
3847
3943
  :param pulumi.Input[_builtins.int] actor_id: The ID of the actor that can bypass a ruleset. If `actor_type` is `Integration`, `actor_id` is a GitHub App ID. App ID can be obtained by following instructions from the [Get an App API docs](https://docs.github.com/en/rest/apps/apps?apiVersion=2022-11-28#get-an-app)
3848
3944
  """
3849
3945
  pulumi.set(__self__, "actor_type", actor_type)
@@ -3871,8 +3967,8 @@ class RepositoryRulesetBypassActorArgs:
3871
3967
 
3872
3968
  > Note: at the time of writing this, the following actor types correspond to the following actor IDs:
3873
3969
 
3874
- * `OrganizationAdmin` > `1`
3875
- * `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
3970
+ - `OrganizationAdmin` > `1`
3971
+ - `RepositoryRole` (This is the actor type, the following are the base repository roles and their associated IDs.)
3876
3972
  """
3877
3973
  return pulumi.get(self, "bypass_mode")
3878
3974
 
@@ -3992,6 +4088,10 @@ if not MYPY:
3992
4088
  """
3993
4089
  (Block List, Max: 1) Parameters to be used for the committer_email_pattern rule. This rule only applies to repositories within an enterprise, it cannot be applied to repositories owned by individuals or regular organizations. (see below for nested schema)
3994
4090
  """
4091
+ copilot_code_review: NotRequired[pulumi.Input['RepositoryRulesetRulesCopilotCodeReviewArgsDict']]
4092
+ """
4093
+ (Block List, Max: 1) Automatically request Copilot code review for new pull requests if the author has access to Copilot code review and their premium requests quota has not reached the limit. (see below for nested schema)
4094
+ """
3995
4095
  creation: NotRequired[pulumi.Input[_builtins.bool]]
3996
4096
  """
3997
4097
  (Boolean) Only allow users with bypass permission to create matching refs.
@@ -4070,6 +4170,7 @@ class RepositoryRulesetRulesArgs:
4070
4170
  commit_author_email_pattern: Optional[pulumi.Input['RepositoryRulesetRulesCommitAuthorEmailPatternArgs']] = None,
4071
4171
  commit_message_pattern: Optional[pulumi.Input['RepositoryRulesetRulesCommitMessagePatternArgs']] = None,
4072
4172
  committer_email_pattern: Optional[pulumi.Input['RepositoryRulesetRulesCommitterEmailPatternArgs']] = None,
4173
+ copilot_code_review: Optional[pulumi.Input['RepositoryRulesetRulesCopilotCodeReviewArgs']] = None,
4073
4174
  creation: Optional[pulumi.Input[_builtins.bool]] = None,
4074
4175
  deletion: Optional[pulumi.Input[_builtins.bool]] = None,
4075
4176
  file_extension_restriction: Optional[pulumi.Input['RepositoryRulesetRulesFileExtensionRestrictionArgs']] = None,
@@ -4092,6 +4193,7 @@ class RepositoryRulesetRulesArgs:
4092
4193
  :param pulumi.Input['RepositoryRulesetRulesCommitAuthorEmailPatternArgs'] commit_author_email_pattern: (Block List, Max: 1) Parameters to be used for the commit_author_email_pattern rule. This rule only applies to repositories within an enterprise, it cannot be applied to repositories owned by individuals or regular organizations. (see below for nested schema)
4093
4194
  :param pulumi.Input['RepositoryRulesetRulesCommitMessagePatternArgs'] commit_message_pattern: (Block List, Max: 1) Parameters to be used for the commit_message_pattern rule. This rule only applies to repositories within an enterprise, it cannot be applied to repositories owned by individuals or regular organizations. (see below for nested schema)
4094
4195
  :param pulumi.Input['RepositoryRulesetRulesCommitterEmailPatternArgs'] committer_email_pattern: (Block List, Max: 1) Parameters to be used for the committer_email_pattern rule. This rule only applies to repositories within an enterprise, it cannot be applied to repositories owned by individuals or regular organizations. (see below for nested schema)
4196
+ :param pulumi.Input['RepositoryRulesetRulesCopilotCodeReviewArgs'] copilot_code_review: (Block List, Max: 1) Automatically request Copilot code review for new pull requests if the author has access to Copilot code review and their premium requests quota has not reached the limit. (see below for nested schema)
4095
4197
  :param pulumi.Input[_builtins.bool] creation: (Boolean) Only allow users with bypass permission to create matching refs.
4096
4198
  :param pulumi.Input[_builtins.bool] deletion: (Boolean) Only allow users with bypass permissions to delete matching refs.
4097
4199
  :param pulumi.Input['RepositoryRulesetRulesFileExtensionRestrictionArgs'] file_extension_restriction: (Block List, Max: 1) Prevent commits that include files with specified file extensions from being pushed to the commit graph. This rule only applies to rulesets with target `push`. (see below for nested schema)
@@ -4118,6 +4220,8 @@ class RepositoryRulesetRulesArgs:
4118
4220
  pulumi.set(__self__, "commit_message_pattern", commit_message_pattern)
4119
4221
  if committer_email_pattern is not None:
4120
4222
  pulumi.set(__self__, "committer_email_pattern", committer_email_pattern)
4223
+ if copilot_code_review is not None:
4224
+ pulumi.set(__self__, "copilot_code_review", copilot_code_review)
4121
4225
  if creation is not None:
4122
4226
  pulumi.set(__self__, "creation", creation)
4123
4227
  if deletion is not None:
@@ -4201,6 +4305,18 @@ class RepositoryRulesetRulesArgs:
4201
4305
  def committer_email_pattern(self, value: Optional[pulumi.Input['RepositoryRulesetRulesCommitterEmailPatternArgs']]):
4202
4306
  pulumi.set(self, "committer_email_pattern", value)
4203
4307
 
4308
+ @_builtins.property
4309
+ @pulumi.getter(name="copilotCodeReview")
4310
+ def copilot_code_review(self) -> Optional[pulumi.Input['RepositoryRulesetRulesCopilotCodeReviewArgs']]:
4311
+ """
4312
+ (Block List, Max: 1) Automatically request Copilot code review for new pull requests if the author has access to Copilot code review and their premium requests quota has not reached the limit. (see below for nested schema)
4313
+ """
4314
+ return pulumi.get(self, "copilot_code_review")
4315
+
4316
+ @copilot_code_review.setter
4317
+ def copilot_code_review(self, value: Optional[pulumi.Input['RepositoryRulesetRulesCopilotCodeReviewArgs']]):
4318
+ pulumi.set(self, "copilot_code_review", value)
4319
+
4204
4320
  @_builtins.property
4205
4321
  @pulumi.getter
4206
4322
  def creation(self) -> Optional[pulumi.Input[_builtins.bool]]:
@@ -4766,6 +4882,58 @@ class RepositoryRulesetRulesCommitterEmailPatternArgs:
4766
4882
  pulumi.set(self, "negate", value)
4767
4883
 
4768
4884
 
4885
+ if not MYPY:
4886
+ class RepositoryRulesetRulesCopilotCodeReviewArgsDict(TypedDict):
4887
+ review_draft_pull_requests: NotRequired[pulumi.Input[_builtins.bool]]
4888
+ """
4889
+ Copilot automatically reviews draft pull requests before they are marked as ready for review. Defaults to `false`.
4890
+ """
4891
+ review_on_push: NotRequired[pulumi.Input[_builtins.bool]]
4892
+ """
4893
+ Copilot automatically reviews each new push to the pull request. Defaults to `false`.
4894
+ """
4895
+ elif False:
4896
+ RepositoryRulesetRulesCopilotCodeReviewArgsDict: TypeAlias = Mapping[str, Any]
4897
+
4898
+ @pulumi.input_type
4899
+ class RepositoryRulesetRulesCopilotCodeReviewArgs:
4900
+ def __init__(__self__, *,
4901
+ review_draft_pull_requests: Optional[pulumi.Input[_builtins.bool]] = None,
4902
+ review_on_push: Optional[pulumi.Input[_builtins.bool]] = None):
4903
+ """
4904
+ :param pulumi.Input[_builtins.bool] review_draft_pull_requests: Copilot automatically reviews draft pull requests before they are marked as ready for review. Defaults to `false`.
4905
+ :param pulumi.Input[_builtins.bool] review_on_push: Copilot automatically reviews each new push to the pull request. Defaults to `false`.
4906
+ """
4907
+ if review_draft_pull_requests is not None:
4908
+ pulumi.set(__self__, "review_draft_pull_requests", review_draft_pull_requests)
4909
+ if review_on_push is not None:
4910
+ pulumi.set(__self__, "review_on_push", review_on_push)
4911
+
4912
+ @_builtins.property
4913
+ @pulumi.getter(name="reviewDraftPullRequests")
4914
+ def review_draft_pull_requests(self) -> Optional[pulumi.Input[_builtins.bool]]:
4915
+ """
4916
+ Copilot automatically reviews draft pull requests before they are marked as ready for review. Defaults to `false`.
4917
+ """
4918
+ return pulumi.get(self, "review_draft_pull_requests")
4919
+
4920
+ @review_draft_pull_requests.setter
4921
+ def review_draft_pull_requests(self, value: Optional[pulumi.Input[_builtins.bool]]):
4922
+ pulumi.set(self, "review_draft_pull_requests", value)
4923
+
4924
+ @_builtins.property
4925
+ @pulumi.getter(name="reviewOnPush")
4926
+ def review_on_push(self) -> Optional[pulumi.Input[_builtins.bool]]:
4927
+ """
4928
+ Copilot automatically reviews each new push to the pull request. Defaults to `false`.
4929
+ """
4930
+ return pulumi.get(self, "review_on_push")
4931
+
4932
+ @review_on_push.setter
4933
+ def review_on_push(self, value: Optional[pulumi.Input[_builtins.bool]]):
4934
+ pulumi.set(self, "review_on_push", value)
4935
+
4936
+
4769
4937
  if not MYPY:
4770
4938
  class RepositoryRulesetRulesFileExtensionRestrictionArgsDict(TypedDict):
4771
4939
  restricted_file_extensions: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]
@@ -5044,6 +5212,10 @@ class RepositoryRulesetRulesMergeQueueArgs:
5044
5212
 
5045
5213
  if not MYPY:
5046
5214
  class RepositoryRulesetRulesPullRequestArgsDict(TypedDict):
5215
+ allowed_merge_methods: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
5216
+ """
5217
+ Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.
5218
+ """
5047
5219
  dismiss_stale_reviews_on_push: NotRequired[pulumi.Input[_builtins.bool]]
5048
5220
  """
5049
5221
  New, reviewable commits pushed will dismiss previous pull request review approvals. Defaults to `false`.
@@ -5070,18 +5242,22 @@ elif False:
5070
5242
  @pulumi.input_type
5071
5243
  class RepositoryRulesetRulesPullRequestArgs:
5072
5244
  def __init__(__self__, *,
5245
+ allowed_merge_methods: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
5073
5246
  dismiss_stale_reviews_on_push: Optional[pulumi.Input[_builtins.bool]] = None,
5074
5247
  require_code_owner_review: Optional[pulumi.Input[_builtins.bool]] = None,
5075
5248
  require_last_push_approval: Optional[pulumi.Input[_builtins.bool]] = None,
5076
5249
  required_approving_review_count: Optional[pulumi.Input[_builtins.int]] = None,
5077
5250
  required_review_thread_resolution: Optional[pulumi.Input[_builtins.bool]] = None):
5078
5251
  """
5252
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_merge_methods: Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.
5079
5253
  :param pulumi.Input[_builtins.bool] dismiss_stale_reviews_on_push: New, reviewable commits pushed will dismiss previous pull request review approvals. Defaults to `false`.
5080
5254
  :param pulumi.Input[_builtins.bool] require_code_owner_review: Require an approving review in pull requests that modify files that have a designated code owner. Defaults to `false`.
5081
5255
  :param pulumi.Input[_builtins.bool] require_last_push_approval: Whether the most recent reviewable push must be approved by someone other than the person who pushed it. Defaults to `false`.
5082
5256
  :param pulumi.Input[_builtins.int] required_approving_review_count: The number of approving reviews that are required before a pull request can be merged. Defaults to `0`.
5083
5257
  :param pulumi.Input[_builtins.bool] required_review_thread_resolution: All conversations on code must be resolved before a pull request can be merged. Defaults to `false`.
5084
5258
  """
5259
+ if allowed_merge_methods is not None:
5260
+ pulumi.set(__self__, "allowed_merge_methods", allowed_merge_methods)
5085
5261
  if dismiss_stale_reviews_on_push is not None:
5086
5262
  pulumi.set(__self__, "dismiss_stale_reviews_on_push", dismiss_stale_reviews_on_push)
5087
5263
  if require_code_owner_review is not None:
@@ -5093,6 +5269,18 @@ class RepositoryRulesetRulesPullRequestArgs:
5093
5269
  if required_review_thread_resolution is not None:
5094
5270
  pulumi.set(__self__, "required_review_thread_resolution", required_review_thread_resolution)
5095
5271
 
5272
+ @_builtins.property
5273
+ @pulumi.getter(name="allowedMergeMethods")
5274
+ def allowed_merge_methods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
5275
+ """
5276
+ Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.
5277
+ """
5278
+ return pulumi.get(self, "allowed_merge_methods")
5279
+
5280
+ @allowed_merge_methods.setter
5281
+ def allowed_merge_methods(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
5282
+ pulumi.set(self, "allowed_merge_methods", value)
5283
+
5096
5284
  @_builtins.property
5097
5285
  @pulumi.getter(name="dismissStaleReviewsOnPush")
5098
5286
  def dismiss_stale_reviews_on_push(self) -> Optional[pulumi.Input[_builtins.bool]]:
@@ -5726,7 +5914,7 @@ if not MYPY:
5726
5914
  class RepositorySecurityAndAnalysisSecretScanningAiDetectionArgsDict(TypedDict):
5727
5915
  status: pulumi.Input[_builtins.str]
5728
5916
  """
5729
- The GitHub Pages site's build status e.g. `building` or `built`.
5917
+ Set to `enabled` to enable secret scanning AI detection on the repository. Can be `enabled` or `disabled`. If set to `enabled`, the repository's visibility must be `public`, `security_and_analysis[0].advanced_security[0].status` must also be set to `enabled`, or your Organization must have split licensing for Advanced security.
5730
5918
  """
5731
5919
  elif False:
5732
5920
  RepositorySecurityAndAnalysisSecretScanningAiDetectionArgsDict: TypeAlias = Mapping[str, Any]
@@ -5736,7 +5924,7 @@ class RepositorySecurityAndAnalysisSecretScanningAiDetectionArgs:
5736
5924
  def __init__(__self__, *,
5737
5925
  status: pulumi.Input[_builtins.str]):
5738
5926
  """
5739
- :param pulumi.Input[_builtins.str] status: The GitHub Pages site's build status e.g. `building` or `built`.
5927
+ :param pulumi.Input[_builtins.str] status: Set to `enabled` to enable secret scanning AI detection on the repository. Can be `enabled` or `disabled`. If set to `enabled`, the repository's visibility must be `public`, `security_and_analysis[0].advanced_security[0].status` must also be set to `enabled`, or your Organization must have split licensing for Advanced security.
5740
5928
  """
5741
5929
  pulumi.set(__self__, "status", status)
5742
5930
 
@@ -5744,7 +5932,7 @@ class RepositorySecurityAndAnalysisSecretScanningAiDetectionArgs:
5744
5932
  @pulumi.getter
5745
5933
  def status(self) -> pulumi.Input[_builtins.str]:
5746
5934
  """
5747
- The GitHub Pages site's build status e.g. `building` or `built`.
5935
+ Set to `enabled` to enable secret scanning AI detection on the repository. Can be `enabled` or `disabled`. If set to `enabled`, the repository's visibility must be `public`, `security_and_analysis[0].advanced_security[0].status` must also be set to `enabled`, or your Organization must have split licensing for Advanced security.
5748
5936
  """
5749
5937
  return pulumi.get(self, "status")
5750
5938
 
@@ -232,10 +232,10 @@ class ActionsEnvironmentVariable(pulumi.CustomResource):
232
232
 
233
233
  ## Import
234
234
 
235
- This resource can be imported using an ID made up of the repository name, environment name, and variable name:
235
+ This resource can be imported using an ID made of the repository name, environment name (any `:` in the name need to be escaped as `??`), and variable name all separated by a `:`.
236
236
 
237
237
  ```sh
238
- $ pulumi import github:index/actionsEnvironmentVariable:ActionsEnvironmentVariable test_variable myrepo:myenv:myvariable
238
+ $ pulumi import github:index/actionsEnvironmentVariable:ActionsEnvironmentVariable example myrepo:myenv:myvariable
239
239
  ```
240
240
 
241
241
  :param str resource_name: The name of the resource.
@@ -284,10 +284,10 @@ class ActionsEnvironmentVariable(pulumi.CustomResource):
284
284
 
285
285
  ## Import
286
286
 
287
- This resource can be imported using an ID made up of the repository name, environment name, and variable name:
287
+ This resource can be imported using an ID made of the repository name, environment name (any `:` in the name need to be escaped as `??`), and variable name all separated by a `:`.
288
288
 
289
289
  ```sh
290
- $ pulumi import github:index/actionsEnvironmentVariable:ActionsEnvironmentVariable test_variable myrepo:myenv:myvariable
290
+ $ pulumi import github:index/actionsEnvironmentVariable:ActionsEnvironmentVariable example myrepo:myenv:myvariable
291
291
  ```
292
292
 
293
293
  :param str resource_name: The name of the resource.