pulumi-gitlab 9.3.0a1759182301__py3-none-any.whl → 9.8.1__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.
Files changed (121) hide show
  1. pulumi_gitlab/__init__.py +107 -0
  2. pulumi_gitlab/_inputs.py +795 -0
  3. pulumi_gitlab/application_settings.py +16 -7
  4. pulumi_gitlab/branch.py +1 -1
  5. pulumi_gitlab/cluster_agent_token.py +1 -1
  6. pulumi_gitlab/config/__init__.pyi +15 -0
  7. pulumi_gitlab/config/vars.py +21 -0
  8. pulumi_gitlab/deploy_key_enable.py +4 -42
  9. pulumi_gitlab/deploy_token.py +11 -7
  10. pulumi_gitlab/get_artifact_file.py +266 -0
  11. pulumi_gitlab/get_branch.py +1 -1
  12. pulumi_gitlab/get_cluster_agent.py +3 -3
  13. pulumi_gitlab/get_cluster_agents.py +6 -6
  14. pulumi_gitlab/get_current_user.py +1 -1
  15. pulumi_gitlab/get_group.py +2 -2
  16. pulumi_gitlab/get_group_billable_member_memberships.py +2 -2
  17. pulumi_gitlab/get_group_hook.py +22 -3
  18. pulumi_gitlab/get_group_hooks.py +7 -3
  19. pulumi_gitlab/get_group_membership.py +2 -2
  20. pulumi_gitlab/get_group_saml_links.py +114 -0
  21. pulumi_gitlab/get_group_service_account.py +6 -2
  22. pulumi_gitlab/get_group_service_account_access_tokens.py +138 -0
  23. pulumi_gitlab/get_group_subgroups.py +1 -1
  24. pulumi_gitlab/get_group_variable.py +1 -1
  25. pulumi_gitlab/get_groups.py +1 -1
  26. pulumi_gitlab/get_instance_deploy_keys.py +1 -1
  27. pulumi_gitlab/get_instance_service_account.py +2 -2
  28. pulumi_gitlab/get_instance_variable.py +7 -7
  29. pulumi_gitlab/get_instance_variables.py +4 -4
  30. pulumi_gitlab/get_member_role.py +200 -0
  31. pulumi_gitlab/get_project.py +27 -7
  32. pulumi_gitlab/get_project_approval_rules.py +137 -0
  33. pulumi_gitlab/get_project_branches.py +1 -1
  34. pulumi_gitlab/get_project_hook.py +20 -5
  35. pulumi_gitlab/get_project_hooks.py +1 -1
  36. pulumi_gitlab/get_project_issue_label_events.py +170 -0
  37. pulumi_gitlab/get_project_membership.py +34 -16
  38. pulumi_gitlab/get_project_milestone.py +1 -1
  39. pulumi_gitlab/get_project_milestones.py +1 -1
  40. pulumi_gitlab/get_project_protected_tag.py +2 -2
  41. pulumi_gitlab/get_project_secure_file.py +247 -0
  42. pulumi_gitlab/get_project_tag.py +2 -2
  43. pulumi_gitlab/get_project_tags.py +1 -1
  44. pulumi_gitlab/get_project_variable.py +12 -12
  45. pulumi_gitlab/get_project_variables.py +4 -4
  46. pulumi_gitlab/get_projects.py +3 -3
  47. pulumi_gitlab/get_release_link.py +9 -9
  48. pulumi_gitlab/get_release_links.py +4 -4
  49. pulumi_gitlab/get_repository_file.py +1 -1
  50. pulumi_gitlab/get_repository_tree.py +1 -1
  51. pulumi_gitlab/get_security_policy_document.py +170 -0
  52. pulumi_gitlab/get_user.py +33 -1
  53. pulumi_gitlab/get_users.py +22 -2
  54. pulumi_gitlab/global_level_notifications.py +2 -2
  55. pulumi_gitlab/group.py +148 -7
  56. pulumi_gitlab/group_access_token.py +54 -7
  57. pulumi_gitlab/group_deploy_token.py +582 -0
  58. pulumi_gitlab/group_hook.py +163 -112
  59. pulumi_gitlab/group_label.py +7 -7
  60. pulumi_gitlab/group_level_mr_approvals.py +509 -0
  61. pulumi_gitlab/group_membership.py +10 -10
  62. pulumi_gitlab/group_service_account.py +38 -2
  63. pulumi_gitlab/group_service_account_access_token.py +146 -5
  64. pulumi_gitlab/group_share_group.py +13 -9
  65. pulumi_gitlab/instance_service_account.py +3 -3
  66. pulumi_gitlab/instance_variable.py +12 -12
  67. pulumi_gitlab/integration_custom_issue_tracker.py +4 -0
  68. pulumi_gitlab/integration_emails_on_push.py +9 -7
  69. pulumi_gitlab/integration_harbor.py +4 -0
  70. pulumi_gitlab/integration_jenkins.py +4 -0
  71. pulumi_gitlab/integration_redmine.py +4 -2
  72. pulumi_gitlab/integration_telegram.py +4 -0
  73. pulumi_gitlab/label.py +11 -7
  74. pulumi_gitlab/member_role.py +9 -9
  75. pulumi_gitlab/outputs.py +1279 -112
  76. pulumi_gitlab/pages_domain.py +7 -7
  77. pulumi_gitlab/personal_access_token.py +52 -5
  78. pulumi_gitlab/pipeline_schedule_variable.py +2 -2
  79. pulumi_gitlab/project.py +241 -105
  80. pulumi_gitlab/project_access_token.py +52 -5
  81. pulumi_gitlab/project_approval_rule.py +120 -0
  82. pulumi_gitlab/project_cicd_catalog.py +314 -0
  83. pulumi_gitlab/project_deploy_token.py +582 -0
  84. pulumi_gitlab/project_environment.py +4 -4
  85. pulumi_gitlab/project_external_status_check.py +469 -0
  86. pulumi_gitlab/project_freeze_period.py +22 -22
  87. pulumi_gitlab/project_hook.py +162 -109
  88. pulumi_gitlab/project_integration_emails_on_push.py +17 -7
  89. pulumi_gitlab/project_issue_link.py +502 -0
  90. pulumi_gitlab/project_job_token_scope.py +24 -4
  91. pulumi_gitlab/project_job_token_scopes.py +14 -14
  92. pulumi_gitlab/project_label.py +11 -11
  93. pulumi_gitlab/project_level_mr_approvals.py +2 -2
  94. pulumi_gitlab/project_level_notifications.py +2 -2
  95. pulumi_gitlab/project_membership.py +9 -9
  96. pulumi_gitlab/project_mirror.py +8 -6
  97. pulumi_gitlab/project_package_dependency_proxy.py +446 -0
  98. pulumi_gitlab/project_protected_environment.py +14 -14
  99. pulumi_gitlab/project_pull_mirror.py +837 -0
  100. pulumi_gitlab/project_push_mirror.py +547 -0
  101. pulumi_gitlab/project_secure_file.py +489 -0
  102. pulumi_gitlab/project_tag.py +3 -3
  103. pulumi_gitlab/project_target_branch_rule.py +2 -2
  104. pulumi_gitlab/project_variable.py +7 -7
  105. pulumi_gitlab/project_wiki_page.py +30 -0
  106. pulumi_gitlab/provider.py +76 -0
  107. pulumi_gitlab/pulumi-plugin.json +1 -1
  108. pulumi_gitlab/release_link.py +19 -19
  109. pulumi_gitlab/runner.py +8 -4
  110. pulumi_gitlab/system_hook.py +7 -7
  111. pulumi_gitlab/user_avatar.py +386 -0
  112. pulumi_gitlab/user_gpg_key.py +2 -2
  113. pulumi_gitlab/user_impersonation_token.py +52 -5
  114. pulumi_gitlab/user_runner.py +14 -14
  115. pulumi_gitlab/user_ssh_key.py +2 -2
  116. pulumi_gitlab/value_stream_analytics.py +92 -0
  117. {pulumi_gitlab-9.3.0a1759182301.dist-info → pulumi_gitlab-9.8.1.dist-info}/METADATA +1 -1
  118. pulumi_gitlab-9.8.1.dist-info/RECORD +207 -0
  119. pulumi_gitlab-9.3.0a1759182301.dist-info/RECORD +0 -188
  120. {pulumi_gitlab-9.3.0a1759182301.dist-info → pulumi_gitlab-9.8.1.dist-info}/WHEEL +0 -0
  121. {pulumi_gitlab-9.3.0a1759182301.dist-info → pulumi_gitlab-9.8.1.dist-info}/top_level.txt +0 -0
pulumi_gitlab/project.py CHANGED
@@ -78,6 +78,7 @@ class ProjectArgs:
78
78
  merge_requests_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
79
79
  merge_requests_template: Optional[pulumi.Input[_builtins.str]] = None,
80
80
  merge_trains_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
81
+ merge_trains_skip_train_allowed: Optional[pulumi.Input[_builtins.bool]] = None,
81
82
  mirror: Optional[pulumi.Input[_builtins.bool]] = None,
82
83
  mirror_overwrites_diverged_branches: Optional[pulumi.Input[_builtins.bool]] = None,
83
84
  mirror_trigger_builds: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -108,6 +109,7 @@ class ProjectArgs:
108
109
  request_access_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
109
110
  requirements_access_level: Optional[pulumi.Input[_builtins.str]] = None,
110
111
  resolve_outdated_diff_discussions: Optional[pulumi.Input[_builtins.bool]] = None,
112
+ resource_group_default_process_mode: Optional[pulumi.Input[_builtins.str]] = None,
111
113
  restrict_user_defined_variables: Optional[pulumi.Input[_builtins.bool]] = None,
112
114
  security_and_compliance_access_level: Optional[pulumi.Input[_builtins.str]] = None,
113
115
  shared_runners_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -130,10 +132,7 @@ class ProjectArgs:
130
132
  :param pulumi.Input[_builtins.bool] allow_merge_on_skipped_pipeline: Set to true if you want to treat skipped pipelines as if they finished with success.
131
133
  :param pulumi.Input[_builtins.bool] allow_pipeline_trigger_approve_deployment: Set whether or not a pipeline triggerer is allowed to approve deployments. Premium and Ultimate only.
132
134
  :param pulumi.Input[_builtins.str] analytics_access_level: Set the analytics access level. Valid values are `disabled`, `private`, `enabled`.
133
- :param pulumi.Input[_builtins.int] approvals_before_merge: Number of merge request approvals required for merging. Default is 0.
134
- This field **does not** work well in combination with the `ProjectApprovalRule` resource
135
- and is most likely gonna be deprecated in a future GitLab version (see [this upstream epic](https://gitlab.com/groups/gitlab-org/-/epics/7572)).
136
- In the meantime we recommend against using this attribute and use `ProjectApprovalRule` instead.
135
+ :param pulumi.Input[_builtins.int] approvals_before_merge: Number of merge request approvals required for merging. Default is 0. This field **does not** work well in combination with the `ProjectApprovalRule` resource. We recommend you do not use this deprecated field and use `ProjectApprovalRule` instead. To be removed in 19.0.
137
136
  :param pulumi.Input[_builtins.bool] archive_on_destroy: Set to `true` to archive the project instead of deleting on destroy. If set to `true` it will entire omit the `DELETE` operation.
138
137
  :param pulumi.Input[_builtins.bool] archived: Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
139
138
  :param pulumi.Input[_builtins.str] auto_cancel_pending_pipelines: Auto-cancel pending pipelines. This isn’t a boolean, but enabled/disabled.
@@ -159,7 +158,7 @@ class ProjectArgs:
159
158
  :param pulumi.Input[_builtins.bool] ci_separated_caches: Use separate caches for protected branches.
160
159
  :param pulumi.Input['ProjectContainerExpirationPolicyArgs'] container_expiration_policy: Set the image cleanup policy for this project. **Note**: this field is sometimes named `container_expiration_policy_attributes` in the GitLab Upstream API.
161
160
  :param pulumi.Input[_builtins.str] container_registry_access_level: Set visibility of container registry, for this project. Valid values are `disabled`, `private`, `enabled`.
162
- :param pulumi.Input[_builtins.bool] container_registry_enabled: Enable container registry for the project.
161
+ :param pulumi.Input[_builtins.bool] container_registry_enabled: Enable container registry for the project. Use `container_registry_access_level` instead. To be removed in 19.0.
163
162
  :param pulumi.Input[_builtins.str] default_branch: The default branch for the project.
164
163
  :param pulumi.Input[_builtins.str] description: A description of the project.
165
164
  :param pulumi.Input[_builtins.bool] emails_enabled: Enable email notifications.
@@ -176,7 +175,7 @@ class ProjectArgs:
176
175
  :param pulumi.Input[_builtins.str] infrastructure_access_level: Set the infrastructure access level. Valid values are `disabled`, `private`, `enabled`.
177
176
  :param pulumi.Input[_builtins.bool] initialize_with_readme: Create main branch with first commit containing a README.md file. Must be set to `true` if importing an uninitialized project with a different `default_branch`.
178
177
  :param pulumi.Input[_builtins.str] issues_access_level: Set the issues access level. Valid values are `disabled`, `private`, `enabled`.
179
- :param pulumi.Input[_builtins.bool] issues_enabled: Enable issue tracking for the project.
178
+ :param pulumi.Input[_builtins.bool] issues_enabled: Enable issue tracking for the project. Use `issues_access_level` instead. To be removed in 19.0.
180
179
  :param pulumi.Input[_builtins.str] issues_template: Sets the template for new issues in the project.
181
180
  :param pulumi.Input[_builtins.bool] keep_latest_artifact: Disable or enable the ability to keep the latest artifact for this project.
182
181
  :param pulumi.Input[_builtins.bool] lfs_enabled: Enable LFS for the project.
@@ -184,9 +183,10 @@ class ProjectArgs:
184
183
  :param pulumi.Input[_builtins.str] merge_method: Set the merge method. Valid values are `merge`, `rebase_merge`, `ff`.
185
184
  :param pulumi.Input[_builtins.bool] merge_pipelines_enabled: Enable or disable merge pipelines.
186
185
  :param pulumi.Input[_builtins.str] merge_requests_access_level: Set the merge requests access level. Valid values are `disabled`, `private`, `enabled`.
187
- :param pulumi.Input[_builtins.bool] merge_requests_enabled: Enable merge requests for the project.
186
+ :param pulumi.Input[_builtins.bool] merge_requests_enabled: Enable merge requests for the project. Use `merge_requests_access_level` instead. To be removed in 19.0.
188
187
  :param pulumi.Input[_builtins.str] merge_requests_template: Sets the template for new merge requests in the project.
189
188
  :param pulumi.Input[_builtins.bool] merge_trains_enabled: Enable or disable merge trains. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
189
+ :param pulumi.Input[_builtins.bool] merge_trains_skip_train_allowed: Allows merge train merge requests to be merged without waiting for pipelines to finish. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
190
190
  :param pulumi.Input[_builtins.bool] mirror: Enable project pull mirror.
191
191
  :param pulumi.Input[_builtins.bool] mirror_overwrites_diverged_branches: Enable overwrite diverged branches for a mirrored project.
192
192
  :param pulumi.Input[_builtins.bool] mirror_trigger_builds: Enable trigger builds on pushes for a mirrored project.
@@ -203,7 +203,7 @@ class ProjectArgs:
203
203
  :param pulumi.Input[_builtins.str] pages_access_level: Enable pages access control. Valid values are `public`, `private`, `enabled`, `disabled`.
204
204
  :param pulumi.Input[_builtins.str] path: The path of the repository.
205
205
  :param pulumi.Input[_builtins.bool] permanently_delete_on_destroy: Set to `true` to immediately permanently delete the project instead of scheduling a delete for Premium and Ultimate tiers.
206
- :param pulumi.Input[_builtins.bool] pipelines_enabled: Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls.
206
+ :param pulumi.Input[_builtins.bool] pipelines_enabled: Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls. Use `builds_access_level` instead. To be removed in 19.0.
207
207
  :param pulumi.Input[_builtins.bool] pre_receive_secret_detection_enabled: Whether Secret Push Detection is enabled. Requires GitLab Ultimate.
208
208
  :param pulumi.Input[_builtins.bool] prevent_merge_without_jira_issue: Set whether merge requests require an associated issue from Jira. Premium and Ultimate only.
209
209
  :param pulumi.Input[_builtins.bool] printing_merge_request_link_enabled: Show link to create/view merge request when pushing from the command line
@@ -217,7 +217,8 @@ class ProjectArgs:
217
217
  :param pulumi.Input[_builtins.bool] request_access_enabled: Allow users to request member access.
218
218
  :param pulumi.Input[_builtins.str] requirements_access_level: Set the requirements access level. Valid values are `disabled`, `private`, `enabled`.
219
219
  :param pulumi.Input[_builtins.bool] resolve_outdated_diff_discussions: Automatically resolve merge request diffs discussions on lines changed with a push.
220
- :param pulumi.Input[_builtins.bool] restrict_user_defined_variables: Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline.
220
+ :param pulumi.Input[_builtins.str] resource_group_default_process_mode: The default resource group process mode for the project.
221
+ :param pulumi.Input[_builtins.bool] restrict_user_defined_variables: Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.
221
222
  :param pulumi.Input[_builtins.str] security_and_compliance_access_level: Set the security and compliance access level. Valid values are `disabled`, `private`, `enabled`.
222
223
  :param pulumi.Input[_builtins.bool] shared_runners_enabled: Enable shared runners for this project.
223
224
  :param pulumi.Input[_builtins.bool] skip_wait_for_default_branch_protection: If `true`, the default behavior to wait for the default branch protection to be created is skipped.
@@ -225,19 +226,19 @@ class ProjectArgs:
225
226
  There is currently no known way to determine if the default branch protection is disabled on an instance-level for non-admin users.
226
227
  This attribute is only used during resource creation, thus changes are suppressed and the attribute cannot be imported.
227
228
  :param pulumi.Input[_builtins.str] snippets_access_level: Set the snippets access level. Valid values are `disabled`, `private`, `enabled`.
228
- :param pulumi.Input[_builtins.bool] snippets_enabled: Enable snippets for the project.
229
+ :param pulumi.Input[_builtins.bool] snippets_enabled: Enable snippets for the project. Use `snippets_access_level` instead. To be removed in 19.0.
229
230
  :param pulumi.Input[_builtins.str] squash_commit_template: Template used to create squash commit message in merge requests.
230
231
  :param pulumi.Input[_builtins.str] squash_option: Squash commits when merge request is merged. Valid values are `never` (Do not allow), `always` (Require), `default_on` (Encourage), or `default_off` (Allow). The default value is `default_off` (Allow).
231
232
  :param pulumi.Input[_builtins.str] suggestion_commit_message: The commit message used to apply merge request suggestions.
232
- :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The list of tags for a project; put array of tags, that should be finally assigned to a project. Use topics instead.
233
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. To be removed in 19.0.
233
234
  :param pulumi.Input[_builtins.str] template_name: When used without use*custom*template, name of a built-in project template. When used with use*custom*template, name of a custom project template. This option is mutually exclusive with `template_project_id`.
234
235
  :param pulumi.Input[_builtins.int] template_project_id: When used with use*custom*template, project ID of a custom project template. This is preferable to using template*name since template*name may be ambiguous (enterprise edition). This option is mutually exclusive with `template_name`. See `GroupProjectFileTemplate` to set a project as a template project. If a project has not been set as a template, using it here will result in an error.
235
236
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] topics: The list of topics for the project.
236
237
  :param pulumi.Input[_builtins.bool] use_custom_template: Use either custom instance or group (with group*with*project*templates*id) project template (enterprise edition).
237
- > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/15.7/ee/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
238
+ > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
238
239
  :param pulumi.Input[_builtins.str] visibility_level: Set to `public` to create a public project. Valid values are `private`, `internal`, `public`.
239
240
  :param pulumi.Input[_builtins.str] wiki_access_level: Set the wiki access level. Valid values are `disabled`, `private`, `enabled`.
240
- :param pulumi.Input[_builtins.bool] wiki_enabled: Enable wiki for the project.
241
+ :param pulumi.Input[_builtins.bool] wiki_enabled: Enable wiki for the project. Use `wiki_access_level` instead. To be removed in 19.0.
241
242
  """
242
243
  if allow_merge_on_skipped_pipeline is not None:
243
244
  pulumi.set(__self__, "allow_merge_on_skipped_pipeline", allow_merge_on_skipped_pipeline)
@@ -245,6 +246,9 @@ class ProjectArgs:
245
246
  pulumi.set(__self__, "allow_pipeline_trigger_approve_deployment", allow_pipeline_trigger_approve_deployment)
246
247
  if analytics_access_level is not None:
247
248
  pulumi.set(__self__, "analytics_access_level", analytics_access_level)
249
+ if approvals_before_merge is not None:
250
+ warnings.warn("""Use the resource `ProjectApprovalRule` instead. To be removed in 19.0.""", DeprecationWarning)
251
+ pulumi.log.warn("""approvals_before_merge is deprecated: Use the resource `ProjectApprovalRule` instead. To be removed in 19.0.""")
248
252
  if approvals_before_merge is not None:
249
253
  pulumi.set(__self__, "approvals_before_merge", approvals_before_merge)
250
254
  if archive_on_destroy is not None:
@@ -298,8 +302,8 @@ class ProjectArgs:
298
302
  if container_registry_access_level is not None:
299
303
  pulumi.set(__self__, "container_registry_access_level", container_registry_access_level)
300
304
  if container_registry_enabled is not None:
301
- warnings.warn("""Use `container_registry_access_level` instead.""", DeprecationWarning)
302
- pulumi.log.warn("""container_registry_enabled is deprecated: Use `container_registry_access_level` instead.""")
305
+ warnings.warn("""Use `container_registry_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
306
+ pulumi.log.warn("""container_registry_enabled is deprecated: Use `container_registry_access_level` instead. To be removed in 19.0.""")
303
307
  if container_registry_enabled is not None:
304
308
  pulumi.set(__self__, "container_registry_enabled", container_registry_enabled)
305
309
  if default_branch is not None:
@@ -334,6 +338,9 @@ class ProjectArgs:
334
338
  pulumi.set(__self__, "initialize_with_readme", initialize_with_readme)
335
339
  if issues_access_level is not None:
336
340
  pulumi.set(__self__, "issues_access_level", issues_access_level)
341
+ if issues_enabled is not None:
342
+ warnings.warn("""Use `issues_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
343
+ pulumi.log.warn("""issues_enabled is deprecated: Use `issues_access_level` instead. To be removed in 19.0.""")
337
344
  if issues_enabled is not None:
338
345
  pulumi.set(__self__, "issues_enabled", issues_enabled)
339
346
  if issues_template is not None:
@@ -350,12 +357,17 @@ class ProjectArgs:
350
357
  pulumi.set(__self__, "merge_pipelines_enabled", merge_pipelines_enabled)
351
358
  if merge_requests_access_level is not None:
352
359
  pulumi.set(__self__, "merge_requests_access_level", merge_requests_access_level)
360
+ if merge_requests_enabled is not None:
361
+ warnings.warn("""Use `merge_requests_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
362
+ pulumi.log.warn("""merge_requests_enabled is deprecated: Use `merge_requests_access_level` instead. To be removed in 19.0.""")
353
363
  if merge_requests_enabled is not None:
354
364
  pulumi.set(__self__, "merge_requests_enabled", merge_requests_enabled)
355
365
  if merge_requests_template is not None:
356
366
  pulumi.set(__self__, "merge_requests_template", merge_requests_template)
357
367
  if merge_trains_enabled is not None:
358
368
  pulumi.set(__self__, "merge_trains_enabled", merge_trains_enabled)
369
+ if merge_trains_skip_train_allowed is not None:
370
+ pulumi.set(__self__, "merge_trains_skip_train_allowed", merge_trains_skip_train_allowed)
359
371
  if mirror is not None:
360
372
  pulumi.set(__self__, "mirror", mirror)
361
373
  if mirror_overwrites_diverged_branches is not None:
@@ -389,8 +401,8 @@ class ProjectArgs:
389
401
  if permanently_delete_on_destroy is not None:
390
402
  pulumi.set(__self__, "permanently_delete_on_destroy", permanently_delete_on_destroy)
391
403
  if pipelines_enabled is not None:
392
- warnings.warn("""Deprecated in favor of `builds_access_level`""", DeprecationWarning)
393
- pulumi.log.warn("""pipelines_enabled is deprecated: Deprecated in favor of `builds_access_level`""")
404
+ warnings.warn("""Use `builds_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
405
+ pulumi.log.warn("""pipelines_enabled is deprecated: Use `builds_access_level` instead. To be removed in 19.0.""")
394
406
  if pipelines_enabled is not None:
395
407
  pulumi.set(__self__, "pipelines_enabled", pipelines_enabled)
396
408
  if pre_receive_secret_detection_enabled is not None:
@@ -422,6 +434,11 @@ class ProjectArgs:
422
434
  pulumi.set(__self__, "requirements_access_level", requirements_access_level)
423
435
  if resolve_outdated_diff_discussions is not None:
424
436
  pulumi.set(__self__, "resolve_outdated_diff_discussions", resolve_outdated_diff_discussions)
437
+ if resource_group_default_process_mode is not None:
438
+ pulumi.set(__self__, "resource_group_default_process_mode", resource_group_default_process_mode)
439
+ if restrict_user_defined_variables is not None:
440
+ warnings.warn("""Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.""", DeprecationWarning)
441
+ pulumi.log.warn("""restrict_user_defined_variables is deprecated: Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.""")
425
442
  if restrict_user_defined_variables is not None:
426
443
  pulumi.set(__self__, "restrict_user_defined_variables", restrict_user_defined_variables)
427
444
  if security_and_compliance_access_level is not None:
@@ -432,6 +449,9 @@ class ProjectArgs:
432
449
  pulumi.set(__self__, "skip_wait_for_default_branch_protection", skip_wait_for_default_branch_protection)
433
450
  if snippets_access_level is not None:
434
451
  pulumi.set(__self__, "snippets_access_level", snippets_access_level)
452
+ if snippets_enabled is not None:
453
+ warnings.warn("""Use `snippets_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
454
+ pulumi.log.warn("""snippets_enabled is deprecated: Use `snippets_access_level` instead. To be removed in 19.0.""")
435
455
  if snippets_enabled is not None:
436
456
  pulumi.set(__self__, "snippets_enabled", snippets_enabled)
437
457
  if squash_commit_template is not None:
@@ -440,6 +460,9 @@ class ProjectArgs:
440
460
  pulumi.set(__self__, "squash_option", squash_option)
441
461
  if suggestion_commit_message is not None:
442
462
  pulumi.set(__self__, "suggestion_commit_message", suggestion_commit_message)
463
+ if tags is not None:
464
+ warnings.warn("""Use `topics` instead. To be removed in 19.0.""", DeprecationWarning)
465
+ pulumi.log.warn("""tags is deprecated: Use `topics` instead. To be removed in 19.0.""")
443
466
  if tags is not None:
444
467
  pulumi.set(__self__, "tags", tags)
445
468
  if template_name is not None:
@@ -454,6 +477,9 @@ class ProjectArgs:
454
477
  pulumi.set(__self__, "visibility_level", visibility_level)
455
478
  if wiki_access_level is not None:
456
479
  pulumi.set(__self__, "wiki_access_level", wiki_access_level)
480
+ if wiki_enabled is not None:
481
+ warnings.warn("""Use `wiki_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
482
+ pulumi.log.warn("""wiki_enabled is deprecated: Use `wiki_access_level` instead. To be removed in 19.0.""")
457
483
  if wiki_enabled is not None:
458
484
  pulumi.set(__self__, "wiki_enabled", wiki_enabled)
459
485
 
@@ -495,12 +521,10 @@ class ProjectArgs:
495
521
 
496
522
  @_builtins.property
497
523
  @pulumi.getter(name="approvalsBeforeMerge")
524
+ @_utilities.deprecated("""Use the resource `ProjectApprovalRule` instead. To be removed in 19.0.""")
498
525
  def approvals_before_merge(self) -> Optional[pulumi.Input[_builtins.int]]:
499
526
  """
500
- Number of merge request approvals required for merging. Default is 0.
501
- This field **does not** work well in combination with the `ProjectApprovalRule` resource
502
- and is most likely gonna be deprecated in a future GitLab version (see [this upstream epic](https://gitlab.com/groups/gitlab-org/-/epics/7572)).
503
- In the meantime we recommend against using this attribute and use `ProjectApprovalRule` instead.
527
+ Number of merge request approvals required for merging. Default is 0. This field **does not** work well in combination with the `ProjectApprovalRule` resource. We recommend you do not use this deprecated field and use `ProjectApprovalRule` instead. To be removed in 19.0.
504
528
  """
505
529
  return pulumi.get(self, "approvals_before_merge")
506
530
 
@@ -810,10 +834,10 @@ class ProjectArgs:
810
834
 
811
835
  @_builtins.property
812
836
  @pulumi.getter(name="containerRegistryEnabled")
813
- @_utilities.deprecated("""Use `container_registry_access_level` instead.""")
837
+ @_utilities.deprecated("""Use `container_registry_access_level` instead. To be removed in 19.0.""")
814
838
  def container_registry_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
815
839
  """
816
- Enable container registry for the project.
840
+ Enable container registry for the project. Use `container_registry_access_level` instead. To be removed in 19.0.
817
841
  """
818
842
  return pulumi.get(self, "container_registry_enabled")
819
843
 
@@ -1015,9 +1039,10 @@ class ProjectArgs:
1015
1039
 
1016
1040
  @_builtins.property
1017
1041
  @pulumi.getter(name="issuesEnabled")
1042
+ @_utilities.deprecated("""Use `issues_access_level` instead. To be removed in 19.0.""")
1018
1043
  def issues_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
1019
1044
  """
1020
- Enable issue tracking for the project.
1045
+ Enable issue tracking for the project. Use `issues_access_level` instead. To be removed in 19.0.
1021
1046
  """
1022
1047
  return pulumi.get(self, "issues_enabled")
1023
1048
 
@@ -1111,9 +1136,10 @@ class ProjectArgs:
1111
1136
 
1112
1137
  @_builtins.property
1113
1138
  @pulumi.getter(name="mergeRequestsEnabled")
1139
+ @_utilities.deprecated("""Use `merge_requests_access_level` instead. To be removed in 19.0.""")
1114
1140
  def merge_requests_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
1115
1141
  """
1116
- Enable merge requests for the project.
1142
+ Enable merge requests for the project. Use `merge_requests_access_level` instead. To be removed in 19.0.
1117
1143
  """
1118
1144
  return pulumi.get(self, "merge_requests_enabled")
1119
1145
 
@@ -1145,6 +1171,18 @@ class ProjectArgs:
1145
1171
  def merge_trains_enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
1146
1172
  pulumi.set(self, "merge_trains_enabled", value)
1147
1173
 
1174
+ @_builtins.property
1175
+ @pulumi.getter(name="mergeTrainsSkipTrainAllowed")
1176
+ def merge_trains_skip_train_allowed(self) -> Optional[pulumi.Input[_builtins.bool]]:
1177
+ """
1178
+ Allows merge train merge requests to be merged without waiting for pipelines to finish. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
1179
+ """
1180
+ return pulumi.get(self, "merge_trains_skip_train_allowed")
1181
+
1182
+ @merge_trains_skip_train_allowed.setter
1183
+ def merge_trains_skip_train_allowed(self, value: Optional[pulumi.Input[_builtins.bool]]):
1184
+ pulumi.set(self, "merge_trains_skip_train_allowed", value)
1185
+
1148
1186
  @_builtins.property
1149
1187
  @pulumi.getter
1150
1188
  def mirror(self) -> Optional[pulumi.Input[_builtins.bool]]:
@@ -1339,10 +1377,10 @@ class ProjectArgs:
1339
1377
 
1340
1378
  @_builtins.property
1341
1379
  @pulumi.getter(name="pipelinesEnabled")
1342
- @_utilities.deprecated("""Deprecated in favor of `builds_access_level`""")
1380
+ @_utilities.deprecated("""Use `builds_access_level` instead. To be removed in 19.0.""")
1343
1381
  def pipelines_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
1344
1382
  """
1345
- Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls.
1383
+ Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls. Use `builds_access_level` instead. To be removed in 19.0.
1346
1384
  """
1347
1385
  return pulumi.get(self, "pipelines_enabled")
1348
1386
 
@@ -1507,11 +1545,24 @@ class ProjectArgs:
1507
1545
  def resolve_outdated_diff_discussions(self, value: Optional[pulumi.Input[_builtins.bool]]):
1508
1546
  pulumi.set(self, "resolve_outdated_diff_discussions", value)
1509
1547
 
1548
+ @_builtins.property
1549
+ @pulumi.getter(name="resourceGroupDefaultProcessMode")
1550
+ def resource_group_default_process_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
1551
+ """
1552
+ The default resource group process mode for the project.
1553
+ """
1554
+ return pulumi.get(self, "resource_group_default_process_mode")
1555
+
1556
+ @resource_group_default_process_mode.setter
1557
+ def resource_group_default_process_mode(self, value: Optional[pulumi.Input[_builtins.str]]):
1558
+ pulumi.set(self, "resource_group_default_process_mode", value)
1559
+
1510
1560
  @_builtins.property
1511
1561
  @pulumi.getter(name="restrictUserDefinedVariables")
1562
+ @_utilities.deprecated("""Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.""")
1512
1563
  def restrict_user_defined_variables(self) -> Optional[pulumi.Input[_builtins.bool]]:
1513
1564
  """
1514
- Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline.
1565
+ Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.
1515
1566
  """
1516
1567
  return pulumi.get(self, "restrict_user_defined_variables")
1517
1568
 
@@ -1572,9 +1623,10 @@ class ProjectArgs:
1572
1623
 
1573
1624
  @_builtins.property
1574
1625
  @pulumi.getter(name="snippetsEnabled")
1626
+ @_utilities.deprecated("""Use `snippets_access_level` instead. To be removed in 19.0.""")
1575
1627
  def snippets_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
1576
1628
  """
1577
- Enable snippets for the project.
1629
+ Enable snippets for the project. Use `snippets_access_level` instead. To be removed in 19.0.
1578
1630
  """
1579
1631
  return pulumi.get(self, "snippets_enabled")
1580
1632
 
@@ -1620,9 +1672,10 @@ class ProjectArgs:
1620
1672
 
1621
1673
  @_builtins.property
1622
1674
  @pulumi.getter
1675
+ @_utilities.deprecated("""Use `topics` instead. To be removed in 19.0.""")
1623
1676
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
1624
1677
  """
1625
- The list of tags for a project; put array of tags, that should be finally assigned to a project. Use topics instead.
1678
+ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. To be removed in 19.0.
1626
1679
  """
1627
1680
  return pulumi.get(self, "tags")
1628
1681
 
@@ -1671,7 +1724,7 @@ class ProjectArgs:
1671
1724
  def use_custom_template(self) -> Optional[pulumi.Input[_builtins.bool]]:
1672
1725
  """
1673
1726
  Use either custom instance or group (with group*with*project*templates*id) project template (enterprise edition).
1674
- > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/15.7/ee/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
1727
+ > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
1675
1728
  """
1676
1729
  return pulumi.get(self, "use_custom_template")
1677
1730
 
@@ -1705,9 +1758,10 @@ class ProjectArgs:
1705
1758
 
1706
1759
  @_builtins.property
1707
1760
  @pulumi.getter(name="wikiEnabled")
1761
+ @_utilities.deprecated("""Use `wiki_access_level` instead. To be removed in 19.0.""")
1708
1762
  def wiki_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
1709
1763
  """
1710
- Enable wiki for the project.
1764
+ Enable wiki for the project. Use `wiki_access_level` instead. To be removed in 19.0.
1711
1765
  """
1712
1766
  return pulumi.get(self, "wiki_enabled")
1713
1767
 
@@ -1779,6 +1833,7 @@ class _ProjectState:
1779
1833
  merge_requests_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
1780
1834
  merge_requests_template: Optional[pulumi.Input[_builtins.str]] = None,
1781
1835
  merge_trains_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
1836
+ merge_trains_skip_train_allowed: Optional[pulumi.Input[_builtins.bool]] = None,
1782
1837
  mirror: Optional[pulumi.Input[_builtins.bool]] = None,
1783
1838
  mirror_overwrites_diverged_branches: Optional[pulumi.Input[_builtins.bool]] = None,
1784
1839
  mirror_trigger_builds: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -1810,6 +1865,7 @@ class _ProjectState:
1810
1865
  request_access_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
1811
1866
  requirements_access_level: Optional[pulumi.Input[_builtins.str]] = None,
1812
1867
  resolve_outdated_diff_discussions: Optional[pulumi.Input[_builtins.bool]] = None,
1868
+ resource_group_default_process_mode: Optional[pulumi.Input[_builtins.str]] = None,
1813
1869
  restrict_user_defined_variables: Optional[pulumi.Input[_builtins.bool]] = None,
1814
1870
  runners_token: Optional[pulumi.Input[_builtins.str]] = None,
1815
1871
  security_and_compliance_access_level: Optional[pulumi.Input[_builtins.str]] = None,
@@ -1835,10 +1891,7 @@ class _ProjectState:
1835
1891
  :param pulumi.Input[_builtins.bool] allow_merge_on_skipped_pipeline: Set to true if you want to treat skipped pipelines as if they finished with success.
1836
1892
  :param pulumi.Input[_builtins.bool] allow_pipeline_trigger_approve_deployment: Set whether or not a pipeline triggerer is allowed to approve deployments. Premium and Ultimate only.
1837
1893
  :param pulumi.Input[_builtins.str] analytics_access_level: Set the analytics access level. Valid values are `disabled`, `private`, `enabled`.
1838
- :param pulumi.Input[_builtins.int] approvals_before_merge: Number of merge request approvals required for merging. Default is 0.
1839
- This field **does not** work well in combination with the `ProjectApprovalRule` resource
1840
- and is most likely gonna be deprecated in a future GitLab version (see [this upstream epic](https://gitlab.com/groups/gitlab-org/-/epics/7572)).
1841
- In the meantime we recommend against using this attribute and use `ProjectApprovalRule` instead.
1894
+ :param pulumi.Input[_builtins.int] approvals_before_merge: Number of merge request approvals required for merging. Default is 0. This field **does not** work well in combination with the `ProjectApprovalRule` resource. We recommend you do not use this deprecated field and use `ProjectApprovalRule` instead. To be removed in 19.0.
1842
1895
  :param pulumi.Input[_builtins.bool] archive_on_destroy: Set to `true` to archive the project instead of deleting on destroy. If set to `true` it will entire omit the `DELETE` operation.
1843
1896
  :param pulumi.Input[_builtins.bool] archived: Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
1844
1897
  :param pulumi.Input[_builtins.str] auto_cancel_pending_pipelines: Auto-cancel pending pipelines. This isn’t a boolean, but enabled/disabled.
@@ -1865,7 +1918,7 @@ class _ProjectState:
1865
1918
  :param pulumi.Input[_builtins.bool] ci_separated_caches: Use separate caches for protected branches.
1866
1919
  :param pulumi.Input['ProjectContainerExpirationPolicyArgs'] container_expiration_policy: Set the image cleanup policy for this project. **Note**: this field is sometimes named `container_expiration_policy_attributes` in the GitLab Upstream API.
1867
1920
  :param pulumi.Input[_builtins.str] container_registry_access_level: Set visibility of container registry, for this project. Valid values are `disabled`, `private`, `enabled`.
1868
- :param pulumi.Input[_builtins.bool] container_registry_enabled: Enable container registry for the project.
1921
+ :param pulumi.Input[_builtins.bool] container_registry_enabled: Enable container registry for the project. Use `container_registry_access_level` instead. To be removed in 19.0.
1869
1922
  :param pulumi.Input[_builtins.str] default_branch: The default branch for the project.
1870
1923
  :param pulumi.Input[_builtins.str] description: A description of the project.
1871
1924
  :param pulumi.Input[_builtins.bool] emails_enabled: Enable email notifications.
@@ -1884,7 +1937,7 @@ class _ProjectState:
1884
1937
  :param pulumi.Input[_builtins.str] infrastructure_access_level: Set the infrastructure access level. Valid values are `disabled`, `private`, `enabled`.
1885
1938
  :param pulumi.Input[_builtins.bool] initialize_with_readme: Create main branch with first commit containing a README.md file. Must be set to `true` if importing an uninitialized project with a different `default_branch`.
1886
1939
  :param pulumi.Input[_builtins.str] issues_access_level: Set the issues access level. Valid values are `disabled`, `private`, `enabled`.
1887
- :param pulumi.Input[_builtins.bool] issues_enabled: Enable issue tracking for the project.
1940
+ :param pulumi.Input[_builtins.bool] issues_enabled: Enable issue tracking for the project. Use `issues_access_level` instead. To be removed in 19.0.
1888
1941
  :param pulumi.Input[_builtins.str] issues_template: Sets the template for new issues in the project.
1889
1942
  :param pulumi.Input[_builtins.bool] keep_latest_artifact: Disable or enable the ability to keep the latest artifact for this project.
1890
1943
  :param pulumi.Input[_builtins.bool] lfs_enabled: Enable LFS for the project.
@@ -1892,9 +1945,10 @@ class _ProjectState:
1892
1945
  :param pulumi.Input[_builtins.str] merge_method: Set the merge method. Valid values are `merge`, `rebase_merge`, `ff`.
1893
1946
  :param pulumi.Input[_builtins.bool] merge_pipelines_enabled: Enable or disable merge pipelines.
1894
1947
  :param pulumi.Input[_builtins.str] merge_requests_access_level: Set the merge requests access level. Valid values are `disabled`, `private`, `enabled`.
1895
- :param pulumi.Input[_builtins.bool] merge_requests_enabled: Enable merge requests for the project.
1948
+ :param pulumi.Input[_builtins.bool] merge_requests_enabled: Enable merge requests for the project. Use `merge_requests_access_level` instead. To be removed in 19.0.
1896
1949
  :param pulumi.Input[_builtins.str] merge_requests_template: Sets the template for new merge requests in the project.
1897
1950
  :param pulumi.Input[_builtins.bool] merge_trains_enabled: Enable or disable merge trains. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
1951
+ :param pulumi.Input[_builtins.bool] merge_trains_skip_train_allowed: Allows merge train merge requests to be merged without waiting for pipelines to finish. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
1898
1952
  :param pulumi.Input[_builtins.bool] mirror: Enable project pull mirror.
1899
1953
  :param pulumi.Input[_builtins.bool] mirror_overwrites_diverged_branches: Enable overwrite diverged branches for a mirrored project.
1900
1954
  :param pulumi.Input[_builtins.bool] mirror_trigger_builds: Enable trigger builds on pushes for a mirrored project.
@@ -1912,7 +1966,7 @@ class _ProjectState:
1912
1966
  :param pulumi.Input[_builtins.str] path: The path of the repository.
1913
1967
  :param pulumi.Input[_builtins.str] path_with_namespace: The path of the repository with namespace.
1914
1968
  :param pulumi.Input[_builtins.bool] permanently_delete_on_destroy: Set to `true` to immediately permanently delete the project instead of scheduling a delete for Premium and Ultimate tiers.
1915
- :param pulumi.Input[_builtins.bool] pipelines_enabled: Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls.
1969
+ :param pulumi.Input[_builtins.bool] pipelines_enabled: Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls. Use `builds_access_level` instead. To be removed in 19.0.
1916
1970
  :param pulumi.Input[_builtins.bool] pre_receive_secret_detection_enabled: Whether Secret Push Detection is enabled. Requires GitLab Ultimate.
1917
1971
  :param pulumi.Input[_builtins.bool] prevent_merge_without_jira_issue: Set whether merge requests require an associated issue from Jira. Premium and Ultimate only.
1918
1972
  :param pulumi.Input[_builtins.bool] printing_merge_request_link_enabled: Show link to create/view merge request when pushing from the command line
@@ -1926,7 +1980,8 @@ class _ProjectState:
1926
1980
  :param pulumi.Input[_builtins.bool] request_access_enabled: Allow users to request member access.
1927
1981
  :param pulumi.Input[_builtins.str] requirements_access_level: Set the requirements access level. Valid values are `disabled`, `private`, `enabled`.
1928
1982
  :param pulumi.Input[_builtins.bool] resolve_outdated_diff_discussions: Automatically resolve merge request diffs discussions on lines changed with a push.
1929
- :param pulumi.Input[_builtins.bool] restrict_user_defined_variables: Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline.
1983
+ :param pulumi.Input[_builtins.str] resource_group_default_process_mode: The default resource group process mode for the project.
1984
+ :param pulumi.Input[_builtins.bool] restrict_user_defined_variables: Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.
1930
1985
  :param pulumi.Input[_builtins.str] runners_token: Registration token to use during runner setup.
1931
1986
  :param pulumi.Input[_builtins.str] security_and_compliance_access_level: Set the security and compliance access level. Valid values are `disabled`, `private`, `enabled`.
1932
1987
  :param pulumi.Input[_builtins.bool] shared_runners_enabled: Enable shared runners for this project.
@@ -1935,21 +1990,21 @@ class _ProjectState:
1935
1990
  There is currently no known way to determine if the default branch protection is disabled on an instance-level for non-admin users.
1936
1991
  This attribute is only used during resource creation, thus changes are suppressed and the attribute cannot be imported.
1937
1992
  :param pulumi.Input[_builtins.str] snippets_access_level: Set the snippets access level. Valid values are `disabled`, `private`, `enabled`.
1938
- :param pulumi.Input[_builtins.bool] snippets_enabled: Enable snippets for the project.
1993
+ :param pulumi.Input[_builtins.bool] snippets_enabled: Enable snippets for the project. Use `snippets_access_level` instead. To be removed in 19.0.
1939
1994
  :param pulumi.Input[_builtins.str] squash_commit_template: Template used to create squash commit message in merge requests.
1940
1995
  :param pulumi.Input[_builtins.str] squash_option: Squash commits when merge request is merged. Valid values are `never` (Do not allow), `always` (Require), `default_on` (Encourage), or `default_off` (Allow). The default value is `default_off` (Allow).
1941
1996
  :param pulumi.Input[_builtins.str] ssh_url_to_repo: URL that can be provided to `git clone` to clone the
1942
1997
  :param pulumi.Input[_builtins.str] suggestion_commit_message: The commit message used to apply merge request suggestions.
1943
- :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The list of tags for a project; put array of tags, that should be finally assigned to a project. Use topics instead.
1998
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. To be removed in 19.0.
1944
1999
  :param pulumi.Input[_builtins.str] template_name: When used without use*custom*template, name of a built-in project template. When used with use*custom*template, name of a custom project template. This option is mutually exclusive with `template_project_id`.
1945
2000
  :param pulumi.Input[_builtins.int] template_project_id: When used with use*custom*template, project ID of a custom project template. This is preferable to using template*name since template*name may be ambiguous (enterprise edition). This option is mutually exclusive with `template_name`. See `GroupProjectFileTemplate` to set a project as a template project. If a project has not been set as a template, using it here will result in an error.
1946
2001
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] topics: The list of topics for the project.
1947
2002
  :param pulumi.Input[_builtins.bool] use_custom_template: Use either custom instance or group (with group*with*project*templates*id) project template (enterprise edition).
1948
- > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/15.7/ee/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
2003
+ > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
1949
2004
  :param pulumi.Input[_builtins.str] visibility_level: Set to `public` to create a public project. Valid values are `private`, `internal`, `public`.
1950
2005
  :param pulumi.Input[_builtins.str] web_url: URL that can be used to find the project in a browser.
1951
2006
  :param pulumi.Input[_builtins.str] wiki_access_level: Set the wiki access level. Valid values are `disabled`, `private`, `enabled`.
1952
- :param pulumi.Input[_builtins.bool] wiki_enabled: Enable wiki for the project.
2007
+ :param pulumi.Input[_builtins.bool] wiki_enabled: Enable wiki for the project. Use `wiki_access_level` instead. To be removed in 19.0.
1953
2008
  """
1954
2009
  if allow_merge_on_skipped_pipeline is not None:
1955
2010
  pulumi.set(__self__, "allow_merge_on_skipped_pipeline", allow_merge_on_skipped_pipeline)
@@ -1957,6 +2012,9 @@ class _ProjectState:
1957
2012
  pulumi.set(__self__, "allow_pipeline_trigger_approve_deployment", allow_pipeline_trigger_approve_deployment)
1958
2013
  if analytics_access_level is not None:
1959
2014
  pulumi.set(__self__, "analytics_access_level", analytics_access_level)
2015
+ if approvals_before_merge is not None:
2016
+ warnings.warn("""Use the resource `ProjectApprovalRule` instead. To be removed in 19.0.""", DeprecationWarning)
2017
+ pulumi.log.warn("""approvals_before_merge is deprecated: Use the resource `ProjectApprovalRule` instead. To be removed in 19.0.""")
1960
2018
  if approvals_before_merge is not None:
1961
2019
  pulumi.set(__self__, "approvals_before_merge", approvals_before_merge)
1962
2020
  if archive_on_destroy is not None:
@@ -2012,8 +2070,8 @@ class _ProjectState:
2012
2070
  if container_registry_access_level is not None:
2013
2071
  pulumi.set(__self__, "container_registry_access_level", container_registry_access_level)
2014
2072
  if container_registry_enabled is not None:
2015
- warnings.warn("""Use `container_registry_access_level` instead.""", DeprecationWarning)
2016
- pulumi.log.warn("""container_registry_enabled is deprecated: Use `container_registry_access_level` instead.""")
2073
+ warnings.warn("""Use `container_registry_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
2074
+ pulumi.log.warn("""container_registry_enabled is deprecated: Use `container_registry_access_level` instead. To be removed in 19.0.""")
2017
2075
  if container_registry_enabled is not None:
2018
2076
  pulumi.set(__self__, "container_registry_enabled", container_registry_enabled)
2019
2077
  if default_branch is not None:
@@ -2052,6 +2110,9 @@ class _ProjectState:
2052
2110
  pulumi.set(__self__, "initialize_with_readme", initialize_with_readme)
2053
2111
  if issues_access_level is not None:
2054
2112
  pulumi.set(__self__, "issues_access_level", issues_access_level)
2113
+ if issues_enabled is not None:
2114
+ warnings.warn("""Use `issues_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
2115
+ pulumi.log.warn("""issues_enabled is deprecated: Use `issues_access_level` instead. To be removed in 19.0.""")
2055
2116
  if issues_enabled is not None:
2056
2117
  pulumi.set(__self__, "issues_enabled", issues_enabled)
2057
2118
  if issues_template is not None:
@@ -2068,12 +2129,17 @@ class _ProjectState:
2068
2129
  pulumi.set(__self__, "merge_pipelines_enabled", merge_pipelines_enabled)
2069
2130
  if merge_requests_access_level is not None:
2070
2131
  pulumi.set(__self__, "merge_requests_access_level", merge_requests_access_level)
2132
+ if merge_requests_enabled is not None:
2133
+ warnings.warn("""Use `merge_requests_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
2134
+ pulumi.log.warn("""merge_requests_enabled is deprecated: Use `merge_requests_access_level` instead. To be removed in 19.0.""")
2071
2135
  if merge_requests_enabled is not None:
2072
2136
  pulumi.set(__self__, "merge_requests_enabled", merge_requests_enabled)
2073
2137
  if merge_requests_template is not None:
2074
2138
  pulumi.set(__self__, "merge_requests_template", merge_requests_template)
2075
2139
  if merge_trains_enabled is not None:
2076
2140
  pulumi.set(__self__, "merge_trains_enabled", merge_trains_enabled)
2141
+ if merge_trains_skip_train_allowed is not None:
2142
+ pulumi.set(__self__, "merge_trains_skip_train_allowed", merge_trains_skip_train_allowed)
2077
2143
  if mirror is not None:
2078
2144
  pulumi.set(__self__, "mirror", mirror)
2079
2145
  if mirror_overwrites_diverged_branches is not None:
@@ -2109,8 +2175,8 @@ class _ProjectState:
2109
2175
  if permanently_delete_on_destroy is not None:
2110
2176
  pulumi.set(__self__, "permanently_delete_on_destroy", permanently_delete_on_destroy)
2111
2177
  if pipelines_enabled is not None:
2112
- warnings.warn("""Deprecated in favor of `builds_access_level`""", DeprecationWarning)
2113
- pulumi.log.warn("""pipelines_enabled is deprecated: Deprecated in favor of `builds_access_level`""")
2178
+ warnings.warn("""Use `builds_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
2179
+ pulumi.log.warn("""pipelines_enabled is deprecated: Use `builds_access_level` instead. To be removed in 19.0.""")
2114
2180
  if pipelines_enabled is not None:
2115
2181
  pulumi.set(__self__, "pipelines_enabled", pipelines_enabled)
2116
2182
  if pre_receive_secret_detection_enabled is not None:
@@ -2142,6 +2208,11 @@ class _ProjectState:
2142
2208
  pulumi.set(__self__, "requirements_access_level", requirements_access_level)
2143
2209
  if resolve_outdated_diff_discussions is not None:
2144
2210
  pulumi.set(__self__, "resolve_outdated_diff_discussions", resolve_outdated_diff_discussions)
2211
+ if resource_group_default_process_mode is not None:
2212
+ pulumi.set(__self__, "resource_group_default_process_mode", resource_group_default_process_mode)
2213
+ if restrict_user_defined_variables is not None:
2214
+ warnings.warn("""Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.""", DeprecationWarning)
2215
+ pulumi.log.warn("""restrict_user_defined_variables is deprecated: Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.""")
2145
2216
  if restrict_user_defined_variables is not None:
2146
2217
  pulumi.set(__self__, "restrict_user_defined_variables", restrict_user_defined_variables)
2147
2218
  if runners_token is not None:
@@ -2154,6 +2225,9 @@ class _ProjectState:
2154
2225
  pulumi.set(__self__, "skip_wait_for_default_branch_protection", skip_wait_for_default_branch_protection)
2155
2226
  if snippets_access_level is not None:
2156
2227
  pulumi.set(__self__, "snippets_access_level", snippets_access_level)
2228
+ if snippets_enabled is not None:
2229
+ warnings.warn("""Use `snippets_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
2230
+ pulumi.log.warn("""snippets_enabled is deprecated: Use `snippets_access_level` instead. To be removed in 19.0.""")
2157
2231
  if snippets_enabled is not None:
2158
2232
  pulumi.set(__self__, "snippets_enabled", snippets_enabled)
2159
2233
  if squash_commit_template is not None:
@@ -2164,6 +2238,9 @@ class _ProjectState:
2164
2238
  pulumi.set(__self__, "ssh_url_to_repo", ssh_url_to_repo)
2165
2239
  if suggestion_commit_message is not None:
2166
2240
  pulumi.set(__self__, "suggestion_commit_message", suggestion_commit_message)
2241
+ if tags is not None:
2242
+ warnings.warn("""Use `topics` instead. To be removed in 19.0.""", DeprecationWarning)
2243
+ pulumi.log.warn("""tags is deprecated: Use `topics` instead. To be removed in 19.0.""")
2167
2244
  if tags is not None:
2168
2245
  pulumi.set(__self__, "tags", tags)
2169
2246
  if template_name is not None:
@@ -2180,6 +2257,9 @@ class _ProjectState:
2180
2257
  pulumi.set(__self__, "web_url", web_url)
2181
2258
  if wiki_access_level is not None:
2182
2259
  pulumi.set(__self__, "wiki_access_level", wiki_access_level)
2260
+ if wiki_enabled is not None:
2261
+ warnings.warn("""Use `wiki_access_level` instead. To be removed in 19.0.""", DeprecationWarning)
2262
+ pulumi.log.warn("""wiki_enabled is deprecated: Use `wiki_access_level` instead. To be removed in 19.0.""")
2183
2263
  if wiki_enabled is not None:
2184
2264
  pulumi.set(__self__, "wiki_enabled", wiki_enabled)
2185
2265
 
@@ -2221,12 +2301,10 @@ class _ProjectState:
2221
2301
 
2222
2302
  @_builtins.property
2223
2303
  @pulumi.getter(name="approvalsBeforeMerge")
2304
+ @_utilities.deprecated("""Use the resource `ProjectApprovalRule` instead. To be removed in 19.0.""")
2224
2305
  def approvals_before_merge(self) -> Optional[pulumi.Input[_builtins.int]]:
2225
2306
  """
2226
- Number of merge request approvals required for merging. Default is 0.
2227
- This field **does not** work well in combination with the `ProjectApprovalRule` resource
2228
- and is most likely gonna be deprecated in a future GitLab version (see [this upstream epic](https://gitlab.com/groups/gitlab-org/-/epics/7572)).
2229
- In the meantime we recommend against using this attribute and use `ProjectApprovalRule` instead.
2307
+ Number of merge request approvals required for merging. Default is 0. This field **does not** work well in combination with the `ProjectApprovalRule` resource. We recommend you do not use this deprecated field and use `ProjectApprovalRule` instead. To be removed in 19.0.
2230
2308
  """
2231
2309
  return pulumi.get(self, "approvals_before_merge")
2232
2310
 
@@ -2548,10 +2626,10 @@ class _ProjectState:
2548
2626
 
2549
2627
  @_builtins.property
2550
2628
  @pulumi.getter(name="containerRegistryEnabled")
2551
- @_utilities.deprecated("""Use `container_registry_access_level` instead.""")
2629
+ @_utilities.deprecated("""Use `container_registry_access_level` instead. To be removed in 19.0.""")
2552
2630
  def container_registry_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
2553
2631
  """
2554
- Enable container registry for the project.
2632
+ Enable container registry for the project. Use `container_registry_access_level` instead. To be removed in 19.0.
2555
2633
  """
2556
2634
  return pulumi.get(self, "container_registry_enabled")
2557
2635
 
@@ -2777,9 +2855,10 @@ class _ProjectState:
2777
2855
 
2778
2856
  @_builtins.property
2779
2857
  @pulumi.getter(name="issuesEnabled")
2858
+ @_utilities.deprecated("""Use `issues_access_level` instead. To be removed in 19.0.""")
2780
2859
  def issues_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
2781
2860
  """
2782
- Enable issue tracking for the project.
2861
+ Enable issue tracking for the project. Use `issues_access_level` instead. To be removed in 19.0.
2783
2862
  """
2784
2863
  return pulumi.get(self, "issues_enabled")
2785
2864
 
@@ -2873,9 +2952,10 @@ class _ProjectState:
2873
2952
 
2874
2953
  @_builtins.property
2875
2954
  @pulumi.getter(name="mergeRequestsEnabled")
2955
+ @_utilities.deprecated("""Use `merge_requests_access_level` instead. To be removed in 19.0.""")
2876
2956
  def merge_requests_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
2877
2957
  """
2878
- Enable merge requests for the project.
2958
+ Enable merge requests for the project. Use `merge_requests_access_level` instead. To be removed in 19.0.
2879
2959
  """
2880
2960
  return pulumi.get(self, "merge_requests_enabled")
2881
2961
 
@@ -2907,6 +2987,18 @@ class _ProjectState:
2907
2987
  def merge_trains_enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
2908
2988
  pulumi.set(self, "merge_trains_enabled", value)
2909
2989
 
2990
+ @_builtins.property
2991
+ @pulumi.getter(name="mergeTrainsSkipTrainAllowed")
2992
+ def merge_trains_skip_train_allowed(self) -> Optional[pulumi.Input[_builtins.bool]]:
2993
+ """
2994
+ Allows merge train merge requests to be merged without waiting for pipelines to finish. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
2995
+ """
2996
+ return pulumi.get(self, "merge_trains_skip_train_allowed")
2997
+
2998
+ @merge_trains_skip_train_allowed.setter
2999
+ def merge_trains_skip_train_allowed(self, value: Optional[pulumi.Input[_builtins.bool]]):
3000
+ pulumi.set(self, "merge_trains_skip_train_allowed", value)
3001
+
2910
3002
  @_builtins.property
2911
3003
  @pulumi.getter
2912
3004
  def mirror(self) -> Optional[pulumi.Input[_builtins.bool]]:
@@ -3113,10 +3205,10 @@ class _ProjectState:
3113
3205
 
3114
3206
  @_builtins.property
3115
3207
  @pulumi.getter(name="pipelinesEnabled")
3116
- @_utilities.deprecated("""Deprecated in favor of `builds_access_level`""")
3208
+ @_utilities.deprecated("""Use `builds_access_level` instead. To be removed in 19.0.""")
3117
3209
  def pipelines_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
3118
3210
  """
3119
- Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls.
3211
+ Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls. Use `builds_access_level` instead. To be removed in 19.0.
3120
3212
  """
3121
3213
  return pulumi.get(self, "pipelines_enabled")
3122
3214
 
@@ -3281,11 +3373,24 @@ class _ProjectState:
3281
3373
  def resolve_outdated_diff_discussions(self, value: Optional[pulumi.Input[_builtins.bool]]):
3282
3374
  pulumi.set(self, "resolve_outdated_diff_discussions", value)
3283
3375
 
3376
+ @_builtins.property
3377
+ @pulumi.getter(name="resourceGroupDefaultProcessMode")
3378
+ def resource_group_default_process_mode(self) -> Optional[pulumi.Input[_builtins.str]]:
3379
+ """
3380
+ The default resource group process mode for the project.
3381
+ """
3382
+ return pulumi.get(self, "resource_group_default_process_mode")
3383
+
3384
+ @resource_group_default_process_mode.setter
3385
+ def resource_group_default_process_mode(self, value: Optional[pulumi.Input[_builtins.str]]):
3386
+ pulumi.set(self, "resource_group_default_process_mode", value)
3387
+
3284
3388
  @_builtins.property
3285
3389
  @pulumi.getter(name="restrictUserDefinedVariables")
3390
+ @_utilities.deprecated("""Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.""")
3286
3391
  def restrict_user_defined_variables(self) -> Optional[pulumi.Input[_builtins.bool]]:
3287
3392
  """
3288
- Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline.
3393
+ Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.
3289
3394
  """
3290
3395
  return pulumi.get(self, "restrict_user_defined_variables")
3291
3396
 
@@ -3358,9 +3463,10 @@ class _ProjectState:
3358
3463
 
3359
3464
  @_builtins.property
3360
3465
  @pulumi.getter(name="snippetsEnabled")
3466
+ @_utilities.deprecated("""Use `snippets_access_level` instead. To be removed in 19.0.""")
3361
3467
  def snippets_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
3362
3468
  """
3363
- Enable snippets for the project.
3469
+ Enable snippets for the project. Use `snippets_access_level` instead. To be removed in 19.0.
3364
3470
  """
3365
3471
  return pulumi.get(self, "snippets_enabled")
3366
3472
 
@@ -3418,9 +3524,10 @@ class _ProjectState:
3418
3524
 
3419
3525
  @_builtins.property
3420
3526
  @pulumi.getter
3527
+ @_utilities.deprecated("""Use `topics` instead. To be removed in 19.0.""")
3421
3528
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
3422
3529
  """
3423
- The list of tags for a project; put array of tags, that should be finally assigned to a project. Use topics instead.
3530
+ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. To be removed in 19.0.
3424
3531
  """
3425
3532
  return pulumi.get(self, "tags")
3426
3533
 
@@ -3469,7 +3576,7 @@ class _ProjectState:
3469
3576
  def use_custom_template(self) -> Optional[pulumi.Input[_builtins.bool]]:
3470
3577
  """
3471
3578
  Use either custom instance or group (with group*with*project*templates*id) project template (enterprise edition).
3472
- > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/15.7/ee/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
3579
+ > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
3473
3580
  """
3474
3581
  return pulumi.get(self, "use_custom_template")
3475
3582
 
@@ -3515,9 +3622,10 @@ class _ProjectState:
3515
3622
 
3516
3623
  @_builtins.property
3517
3624
  @pulumi.getter(name="wikiEnabled")
3625
+ @_utilities.deprecated("""Use `wiki_access_level` instead. To be removed in 19.0.""")
3518
3626
  def wiki_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
3519
3627
  """
3520
- Enable wiki for the project.
3628
+ Enable wiki for the project. Use `wiki_access_level` instead. To be removed in 19.0.
3521
3629
  """
3522
3630
  return pulumi.get(self, "wiki_enabled")
3523
3631
 
@@ -3589,6 +3697,7 @@ class Project(pulumi.CustomResource):
3589
3697
  merge_requests_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
3590
3698
  merge_requests_template: Optional[pulumi.Input[_builtins.str]] = None,
3591
3699
  merge_trains_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
3700
+ merge_trains_skip_train_allowed: Optional[pulumi.Input[_builtins.bool]] = None,
3592
3701
  mirror: Optional[pulumi.Input[_builtins.bool]] = None,
3593
3702
  mirror_overwrites_diverged_branches: Optional[pulumi.Input[_builtins.bool]] = None,
3594
3703
  mirror_trigger_builds: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -3619,6 +3728,7 @@ class Project(pulumi.CustomResource):
3619
3728
  request_access_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
3620
3729
  requirements_access_level: Optional[pulumi.Input[_builtins.str]] = None,
3621
3730
  resolve_outdated_diff_discussions: Optional[pulumi.Input[_builtins.bool]] = None,
3731
+ resource_group_default_process_mode: Optional[pulumi.Input[_builtins.str]] = None,
3622
3732
  restrict_user_defined_variables: Optional[pulumi.Input[_builtins.bool]] = None,
3623
3733
  security_and_compliance_access_level: Optional[pulumi.Input[_builtins.str]] = None,
3624
3734
  shared_runners_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -3675,10 +3785,7 @@ class Project(pulumi.CustomResource):
3675
3785
  :param pulumi.Input[_builtins.bool] allow_merge_on_skipped_pipeline: Set to true if you want to treat skipped pipelines as if they finished with success.
3676
3786
  :param pulumi.Input[_builtins.bool] allow_pipeline_trigger_approve_deployment: Set whether or not a pipeline triggerer is allowed to approve deployments. Premium and Ultimate only.
3677
3787
  :param pulumi.Input[_builtins.str] analytics_access_level: Set the analytics access level. Valid values are `disabled`, `private`, `enabled`.
3678
- :param pulumi.Input[_builtins.int] approvals_before_merge: Number of merge request approvals required for merging. Default is 0.
3679
- This field **does not** work well in combination with the `ProjectApprovalRule` resource
3680
- and is most likely gonna be deprecated in a future GitLab version (see [this upstream epic](https://gitlab.com/groups/gitlab-org/-/epics/7572)).
3681
- In the meantime we recommend against using this attribute and use `ProjectApprovalRule` instead.
3788
+ :param pulumi.Input[_builtins.int] approvals_before_merge: Number of merge request approvals required for merging. Default is 0. This field **does not** work well in combination with the `ProjectApprovalRule` resource. We recommend you do not use this deprecated field and use `ProjectApprovalRule` instead. To be removed in 19.0.
3682
3789
  :param pulumi.Input[_builtins.bool] archive_on_destroy: Set to `true` to archive the project instead of deleting on destroy. If set to `true` it will entire omit the `DELETE` operation.
3683
3790
  :param pulumi.Input[_builtins.bool] archived: Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
3684
3791
  :param pulumi.Input[_builtins.str] auto_cancel_pending_pipelines: Auto-cancel pending pipelines. This isn’t a boolean, but enabled/disabled.
@@ -3704,7 +3811,7 @@ class Project(pulumi.CustomResource):
3704
3811
  :param pulumi.Input[_builtins.bool] ci_separated_caches: Use separate caches for protected branches.
3705
3812
  :param pulumi.Input[Union['ProjectContainerExpirationPolicyArgs', 'ProjectContainerExpirationPolicyArgsDict']] container_expiration_policy: Set the image cleanup policy for this project. **Note**: this field is sometimes named `container_expiration_policy_attributes` in the GitLab Upstream API.
3706
3813
  :param pulumi.Input[_builtins.str] container_registry_access_level: Set visibility of container registry, for this project. Valid values are `disabled`, `private`, `enabled`.
3707
- :param pulumi.Input[_builtins.bool] container_registry_enabled: Enable container registry for the project.
3814
+ :param pulumi.Input[_builtins.bool] container_registry_enabled: Enable container registry for the project. Use `container_registry_access_level` instead. To be removed in 19.0.
3708
3815
  :param pulumi.Input[_builtins.str] default_branch: The default branch for the project.
3709
3816
  :param pulumi.Input[_builtins.str] description: A description of the project.
3710
3817
  :param pulumi.Input[_builtins.bool] emails_enabled: Enable email notifications.
@@ -3721,7 +3828,7 @@ class Project(pulumi.CustomResource):
3721
3828
  :param pulumi.Input[_builtins.str] infrastructure_access_level: Set the infrastructure access level. Valid values are `disabled`, `private`, `enabled`.
3722
3829
  :param pulumi.Input[_builtins.bool] initialize_with_readme: Create main branch with first commit containing a README.md file. Must be set to `true` if importing an uninitialized project with a different `default_branch`.
3723
3830
  :param pulumi.Input[_builtins.str] issues_access_level: Set the issues access level. Valid values are `disabled`, `private`, `enabled`.
3724
- :param pulumi.Input[_builtins.bool] issues_enabled: Enable issue tracking for the project.
3831
+ :param pulumi.Input[_builtins.bool] issues_enabled: Enable issue tracking for the project. Use `issues_access_level` instead. To be removed in 19.0.
3725
3832
  :param pulumi.Input[_builtins.str] issues_template: Sets the template for new issues in the project.
3726
3833
  :param pulumi.Input[_builtins.bool] keep_latest_artifact: Disable or enable the ability to keep the latest artifact for this project.
3727
3834
  :param pulumi.Input[_builtins.bool] lfs_enabled: Enable LFS for the project.
@@ -3729,9 +3836,10 @@ class Project(pulumi.CustomResource):
3729
3836
  :param pulumi.Input[_builtins.str] merge_method: Set the merge method. Valid values are `merge`, `rebase_merge`, `ff`.
3730
3837
  :param pulumi.Input[_builtins.bool] merge_pipelines_enabled: Enable or disable merge pipelines.
3731
3838
  :param pulumi.Input[_builtins.str] merge_requests_access_level: Set the merge requests access level. Valid values are `disabled`, `private`, `enabled`.
3732
- :param pulumi.Input[_builtins.bool] merge_requests_enabled: Enable merge requests for the project.
3839
+ :param pulumi.Input[_builtins.bool] merge_requests_enabled: Enable merge requests for the project. Use `merge_requests_access_level` instead. To be removed in 19.0.
3733
3840
  :param pulumi.Input[_builtins.str] merge_requests_template: Sets the template for new merge requests in the project.
3734
3841
  :param pulumi.Input[_builtins.bool] merge_trains_enabled: Enable or disable merge trains. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
3842
+ :param pulumi.Input[_builtins.bool] merge_trains_skip_train_allowed: Allows merge train merge requests to be merged without waiting for pipelines to finish. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
3735
3843
  :param pulumi.Input[_builtins.bool] mirror: Enable project pull mirror.
3736
3844
  :param pulumi.Input[_builtins.bool] mirror_overwrites_diverged_branches: Enable overwrite diverged branches for a mirrored project.
3737
3845
  :param pulumi.Input[_builtins.bool] mirror_trigger_builds: Enable trigger builds on pushes for a mirrored project.
@@ -3748,7 +3856,7 @@ class Project(pulumi.CustomResource):
3748
3856
  :param pulumi.Input[_builtins.str] pages_access_level: Enable pages access control. Valid values are `public`, `private`, `enabled`, `disabled`.
3749
3857
  :param pulumi.Input[_builtins.str] path: The path of the repository.
3750
3858
  :param pulumi.Input[_builtins.bool] permanently_delete_on_destroy: Set to `true` to immediately permanently delete the project instead of scheduling a delete for Premium and Ultimate tiers.
3751
- :param pulumi.Input[_builtins.bool] pipelines_enabled: Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls.
3859
+ :param pulumi.Input[_builtins.bool] pipelines_enabled: Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls. Use `builds_access_level` instead. To be removed in 19.0.
3752
3860
  :param pulumi.Input[_builtins.bool] pre_receive_secret_detection_enabled: Whether Secret Push Detection is enabled. Requires GitLab Ultimate.
3753
3861
  :param pulumi.Input[_builtins.bool] prevent_merge_without_jira_issue: Set whether merge requests require an associated issue from Jira. Premium and Ultimate only.
3754
3862
  :param pulumi.Input[_builtins.bool] printing_merge_request_link_enabled: Show link to create/view merge request when pushing from the command line
@@ -3762,7 +3870,8 @@ class Project(pulumi.CustomResource):
3762
3870
  :param pulumi.Input[_builtins.bool] request_access_enabled: Allow users to request member access.
3763
3871
  :param pulumi.Input[_builtins.str] requirements_access_level: Set the requirements access level. Valid values are `disabled`, `private`, `enabled`.
3764
3872
  :param pulumi.Input[_builtins.bool] resolve_outdated_diff_discussions: Automatically resolve merge request diffs discussions on lines changed with a push.
3765
- :param pulumi.Input[_builtins.bool] restrict_user_defined_variables: Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline.
3873
+ :param pulumi.Input[_builtins.str] resource_group_default_process_mode: The default resource group process mode for the project.
3874
+ :param pulumi.Input[_builtins.bool] restrict_user_defined_variables: Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.
3766
3875
  :param pulumi.Input[_builtins.str] security_and_compliance_access_level: Set the security and compliance access level. Valid values are `disabled`, `private`, `enabled`.
3767
3876
  :param pulumi.Input[_builtins.bool] shared_runners_enabled: Enable shared runners for this project.
3768
3877
  :param pulumi.Input[_builtins.bool] skip_wait_for_default_branch_protection: If `true`, the default behavior to wait for the default branch protection to be created is skipped.
@@ -3770,19 +3879,19 @@ class Project(pulumi.CustomResource):
3770
3879
  There is currently no known way to determine if the default branch protection is disabled on an instance-level for non-admin users.
3771
3880
  This attribute is only used during resource creation, thus changes are suppressed and the attribute cannot be imported.
3772
3881
  :param pulumi.Input[_builtins.str] snippets_access_level: Set the snippets access level. Valid values are `disabled`, `private`, `enabled`.
3773
- :param pulumi.Input[_builtins.bool] snippets_enabled: Enable snippets for the project.
3882
+ :param pulumi.Input[_builtins.bool] snippets_enabled: Enable snippets for the project. Use `snippets_access_level` instead. To be removed in 19.0.
3774
3883
  :param pulumi.Input[_builtins.str] squash_commit_template: Template used to create squash commit message in merge requests.
3775
3884
  :param pulumi.Input[_builtins.str] squash_option: Squash commits when merge request is merged. Valid values are `never` (Do not allow), `always` (Require), `default_on` (Encourage), or `default_off` (Allow). The default value is `default_off` (Allow).
3776
3885
  :param pulumi.Input[_builtins.str] suggestion_commit_message: The commit message used to apply merge request suggestions.
3777
- :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The list of tags for a project; put array of tags, that should be finally assigned to a project. Use topics instead.
3886
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. To be removed in 19.0.
3778
3887
  :param pulumi.Input[_builtins.str] template_name: When used without use*custom*template, name of a built-in project template. When used with use*custom*template, name of a custom project template. This option is mutually exclusive with `template_project_id`.
3779
3888
  :param pulumi.Input[_builtins.int] template_project_id: When used with use*custom*template, project ID of a custom project template. This is preferable to using template*name since template*name may be ambiguous (enterprise edition). This option is mutually exclusive with `template_name`. See `GroupProjectFileTemplate` to set a project as a template project. If a project has not been set as a template, using it here will result in an error.
3780
3889
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] topics: The list of topics for the project.
3781
3890
  :param pulumi.Input[_builtins.bool] use_custom_template: Use either custom instance or group (with group*with*project*templates*id) project template (enterprise edition).
3782
- > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/15.7/ee/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
3891
+ > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
3783
3892
  :param pulumi.Input[_builtins.str] visibility_level: Set to `public` to create a public project. Valid values are `private`, `internal`, `public`.
3784
3893
  :param pulumi.Input[_builtins.str] wiki_access_level: Set the wiki access level. Valid values are `disabled`, `private`, `enabled`.
3785
- :param pulumi.Input[_builtins.bool] wiki_enabled: Enable wiki for the project.
3894
+ :param pulumi.Input[_builtins.bool] wiki_enabled: Enable wiki for the project. Use `wiki_access_level` instead. To be removed in 19.0.
3786
3895
  """
3787
3896
  ...
3788
3897
  @overload
@@ -3895,6 +4004,7 @@ class Project(pulumi.CustomResource):
3895
4004
  merge_requests_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
3896
4005
  merge_requests_template: Optional[pulumi.Input[_builtins.str]] = None,
3897
4006
  merge_trains_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
4007
+ merge_trains_skip_train_allowed: Optional[pulumi.Input[_builtins.bool]] = None,
3898
4008
  mirror: Optional[pulumi.Input[_builtins.bool]] = None,
3899
4009
  mirror_overwrites_diverged_branches: Optional[pulumi.Input[_builtins.bool]] = None,
3900
4010
  mirror_trigger_builds: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -3925,6 +4035,7 @@ class Project(pulumi.CustomResource):
3925
4035
  request_access_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
3926
4036
  requirements_access_level: Optional[pulumi.Input[_builtins.str]] = None,
3927
4037
  resolve_outdated_diff_discussions: Optional[pulumi.Input[_builtins.bool]] = None,
4038
+ resource_group_default_process_mode: Optional[pulumi.Input[_builtins.str]] = None,
3928
4039
  restrict_user_defined_variables: Optional[pulumi.Input[_builtins.bool]] = None,
3929
4040
  security_and_compliance_access_level: Optional[pulumi.Input[_builtins.str]] = None,
3930
4041
  shared_runners_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -4008,6 +4119,7 @@ class Project(pulumi.CustomResource):
4008
4119
  __props__.__dict__["merge_requests_enabled"] = merge_requests_enabled
4009
4120
  __props__.__dict__["merge_requests_template"] = merge_requests_template
4010
4121
  __props__.__dict__["merge_trains_enabled"] = merge_trains_enabled
4122
+ __props__.__dict__["merge_trains_skip_train_allowed"] = merge_trains_skip_train_allowed
4011
4123
  __props__.__dict__["mirror"] = mirror
4012
4124
  __props__.__dict__["mirror_overwrites_diverged_branches"] = mirror_overwrites_diverged_branches
4013
4125
  __props__.__dict__["mirror_trigger_builds"] = mirror_trigger_builds
@@ -4038,6 +4150,7 @@ class Project(pulumi.CustomResource):
4038
4150
  __props__.__dict__["request_access_enabled"] = request_access_enabled
4039
4151
  __props__.__dict__["requirements_access_level"] = requirements_access_level
4040
4152
  __props__.__dict__["resolve_outdated_diff_discussions"] = resolve_outdated_diff_discussions
4153
+ __props__.__dict__["resource_group_default_process_mode"] = resource_group_default_process_mode
4041
4154
  __props__.__dict__["restrict_user_defined_variables"] = restrict_user_defined_variables
4042
4155
  __props__.__dict__["security_and_compliance_access_level"] = security_and_compliance_access_level
4043
4156
  __props__.__dict__["shared_runners_enabled"] = shared_runners_enabled
@@ -4134,6 +4247,7 @@ class Project(pulumi.CustomResource):
4134
4247
  merge_requests_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
4135
4248
  merge_requests_template: Optional[pulumi.Input[_builtins.str]] = None,
4136
4249
  merge_trains_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
4250
+ merge_trains_skip_train_allowed: Optional[pulumi.Input[_builtins.bool]] = None,
4137
4251
  mirror: Optional[pulumi.Input[_builtins.bool]] = None,
4138
4252
  mirror_overwrites_diverged_branches: Optional[pulumi.Input[_builtins.bool]] = None,
4139
4253
  mirror_trigger_builds: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -4165,6 +4279,7 @@ class Project(pulumi.CustomResource):
4165
4279
  request_access_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
4166
4280
  requirements_access_level: Optional[pulumi.Input[_builtins.str]] = None,
4167
4281
  resolve_outdated_diff_discussions: Optional[pulumi.Input[_builtins.bool]] = None,
4282
+ resource_group_default_process_mode: Optional[pulumi.Input[_builtins.str]] = None,
4168
4283
  restrict_user_defined_variables: Optional[pulumi.Input[_builtins.bool]] = None,
4169
4284
  runners_token: Optional[pulumi.Input[_builtins.str]] = None,
4170
4285
  security_and_compliance_access_level: Optional[pulumi.Input[_builtins.str]] = None,
@@ -4195,10 +4310,7 @@ class Project(pulumi.CustomResource):
4195
4310
  :param pulumi.Input[_builtins.bool] allow_merge_on_skipped_pipeline: Set to true if you want to treat skipped pipelines as if they finished with success.
4196
4311
  :param pulumi.Input[_builtins.bool] allow_pipeline_trigger_approve_deployment: Set whether or not a pipeline triggerer is allowed to approve deployments. Premium and Ultimate only.
4197
4312
  :param pulumi.Input[_builtins.str] analytics_access_level: Set the analytics access level. Valid values are `disabled`, `private`, `enabled`.
4198
- :param pulumi.Input[_builtins.int] approvals_before_merge: Number of merge request approvals required for merging. Default is 0.
4199
- This field **does not** work well in combination with the `ProjectApprovalRule` resource
4200
- and is most likely gonna be deprecated in a future GitLab version (see [this upstream epic](https://gitlab.com/groups/gitlab-org/-/epics/7572)).
4201
- In the meantime we recommend against using this attribute and use `ProjectApprovalRule` instead.
4313
+ :param pulumi.Input[_builtins.int] approvals_before_merge: Number of merge request approvals required for merging. Default is 0. This field **does not** work well in combination with the `ProjectApprovalRule` resource. We recommend you do not use this deprecated field and use `ProjectApprovalRule` instead. To be removed in 19.0.
4202
4314
  :param pulumi.Input[_builtins.bool] archive_on_destroy: Set to `true` to archive the project instead of deleting on destroy. If set to `true` it will entire omit the `DELETE` operation.
4203
4315
  :param pulumi.Input[_builtins.bool] archived: Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
4204
4316
  :param pulumi.Input[_builtins.str] auto_cancel_pending_pipelines: Auto-cancel pending pipelines. This isn’t a boolean, but enabled/disabled.
@@ -4225,7 +4337,7 @@ class Project(pulumi.CustomResource):
4225
4337
  :param pulumi.Input[_builtins.bool] ci_separated_caches: Use separate caches for protected branches.
4226
4338
  :param pulumi.Input[Union['ProjectContainerExpirationPolicyArgs', 'ProjectContainerExpirationPolicyArgsDict']] container_expiration_policy: Set the image cleanup policy for this project. **Note**: this field is sometimes named `container_expiration_policy_attributes` in the GitLab Upstream API.
4227
4339
  :param pulumi.Input[_builtins.str] container_registry_access_level: Set visibility of container registry, for this project. Valid values are `disabled`, `private`, `enabled`.
4228
- :param pulumi.Input[_builtins.bool] container_registry_enabled: Enable container registry for the project.
4340
+ :param pulumi.Input[_builtins.bool] container_registry_enabled: Enable container registry for the project. Use `container_registry_access_level` instead. To be removed in 19.0.
4229
4341
  :param pulumi.Input[_builtins.str] default_branch: The default branch for the project.
4230
4342
  :param pulumi.Input[_builtins.str] description: A description of the project.
4231
4343
  :param pulumi.Input[_builtins.bool] emails_enabled: Enable email notifications.
@@ -4244,7 +4356,7 @@ class Project(pulumi.CustomResource):
4244
4356
  :param pulumi.Input[_builtins.str] infrastructure_access_level: Set the infrastructure access level. Valid values are `disabled`, `private`, `enabled`.
4245
4357
  :param pulumi.Input[_builtins.bool] initialize_with_readme: Create main branch with first commit containing a README.md file. Must be set to `true` if importing an uninitialized project with a different `default_branch`.
4246
4358
  :param pulumi.Input[_builtins.str] issues_access_level: Set the issues access level. Valid values are `disabled`, `private`, `enabled`.
4247
- :param pulumi.Input[_builtins.bool] issues_enabled: Enable issue tracking for the project.
4359
+ :param pulumi.Input[_builtins.bool] issues_enabled: Enable issue tracking for the project. Use `issues_access_level` instead. To be removed in 19.0.
4248
4360
  :param pulumi.Input[_builtins.str] issues_template: Sets the template for new issues in the project.
4249
4361
  :param pulumi.Input[_builtins.bool] keep_latest_artifact: Disable or enable the ability to keep the latest artifact for this project.
4250
4362
  :param pulumi.Input[_builtins.bool] lfs_enabled: Enable LFS for the project.
@@ -4252,9 +4364,10 @@ class Project(pulumi.CustomResource):
4252
4364
  :param pulumi.Input[_builtins.str] merge_method: Set the merge method. Valid values are `merge`, `rebase_merge`, `ff`.
4253
4365
  :param pulumi.Input[_builtins.bool] merge_pipelines_enabled: Enable or disable merge pipelines.
4254
4366
  :param pulumi.Input[_builtins.str] merge_requests_access_level: Set the merge requests access level. Valid values are `disabled`, `private`, `enabled`.
4255
- :param pulumi.Input[_builtins.bool] merge_requests_enabled: Enable merge requests for the project.
4367
+ :param pulumi.Input[_builtins.bool] merge_requests_enabled: Enable merge requests for the project. Use `merge_requests_access_level` instead. To be removed in 19.0.
4256
4368
  :param pulumi.Input[_builtins.str] merge_requests_template: Sets the template for new merge requests in the project.
4257
4369
  :param pulumi.Input[_builtins.bool] merge_trains_enabled: Enable or disable merge trains. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
4370
+ :param pulumi.Input[_builtins.bool] merge_trains_skip_train_allowed: Allows merge train merge requests to be merged without waiting for pipelines to finish. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
4258
4371
  :param pulumi.Input[_builtins.bool] mirror: Enable project pull mirror.
4259
4372
  :param pulumi.Input[_builtins.bool] mirror_overwrites_diverged_branches: Enable overwrite diverged branches for a mirrored project.
4260
4373
  :param pulumi.Input[_builtins.bool] mirror_trigger_builds: Enable trigger builds on pushes for a mirrored project.
@@ -4272,7 +4385,7 @@ class Project(pulumi.CustomResource):
4272
4385
  :param pulumi.Input[_builtins.str] path: The path of the repository.
4273
4386
  :param pulumi.Input[_builtins.str] path_with_namespace: The path of the repository with namespace.
4274
4387
  :param pulumi.Input[_builtins.bool] permanently_delete_on_destroy: Set to `true` to immediately permanently delete the project instead of scheduling a delete for Premium and Ultimate tiers.
4275
- :param pulumi.Input[_builtins.bool] pipelines_enabled: Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls.
4388
+ :param pulumi.Input[_builtins.bool] pipelines_enabled: Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls. Use `builds_access_level` instead. To be removed in 19.0.
4276
4389
  :param pulumi.Input[_builtins.bool] pre_receive_secret_detection_enabled: Whether Secret Push Detection is enabled. Requires GitLab Ultimate.
4277
4390
  :param pulumi.Input[_builtins.bool] prevent_merge_without_jira_issue: Set whether merge requests require an associated issue from Jira. Premium and Ultimate only.
4278
4391
  :param pulumi.Input[_builtins.bool] printing_merge_request_link_enabled: Show link to create/view merge request when pushing from the command line
@@ -4286,7 +4399,8 @@ class Project(pulumi.CustomResource):
4286
4399
  :param pulumi.Input[_builtins.bool] request_access_enabled: Allow users to request member access.
4287
4400
  :param pulumi.Input[_builtins.str] requirements_access_level: Set the requirements access level. Valid values are `disabled`, `private`, `enabled`.
4288
4401
  :param pulumi.Input[_builtins.bool] resolve_outdated_diff_discussions: Automatically resolve merge request diffs discussions on lines changed with a push.
4289
- :param pulumi.Input[_builtins.bool] restrict_user_defined_variables: Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline.
4402
+ :param pulumi.Input[_builtins.str] resource_group_default_process_mode: The default resource group process mode for the project.
4403
+ :param pulumi.Input[_builtins.bool] restrict_user_defined_variables: Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.
4290
4404
  :param pulumi.Input[_builtins.str] runners_token: Registration token to use during runner setup.
4291
4405
  :param pulumi.Input[_builtins.str] security_and_compliance_access_level: Set the security and compliance access level. Valid values are `disabled`, `private`, `enabled`.
4292
4406
  :param pulumi.Input[_builtins.bool] shared_runners_enabled: Enable shared runners for this project.
@@ -4295,21 +4409,21 @@ class Project(pulumi.CustomResource):
4295
4409
  There is currently no known way to determine if the default branch protection is disabled on an instance-level for non-admin users.
4296
4410
  This attribute is only used during resource creation, thus changes are suppressed and the attribute cannot be imported.
4297
4411
  :param pulumi.Input[_builtins.str] snippets_access_level: Set the snippets access level. Valid values are `disabled`, `private`, `enabled`.
4298
- :param pulumi.Input[_builtins.bool] snippets_enabled: Enable snippets for the project.
4412
+ :param pulumi.Input[_builtins.bool] snippets_enabled: Enable snippets for the project. Use `snippets_access_level` instead. To be removed in 19.0.
4299
4413
  :param pulumi.Input[_builtins.str] squash_commit_template: Template used to create squash commit message in merge requests.
4300
4414
  :param pulumi.Input[_builtins.str] squash_option: Squash commits when merge request is merged. Valid values are `never` (Do not allow), `always` (Require), `default_on` (Encourage), or `default_off` (Allow). The default value is `default_off` (Allow).
4301
4415
  :param pulumi.Input[_builtins.str] ssh_url_to_repo: URL that can be provided to `git clone` to clone the
4302
4416
  :param pulumi.Input[_builtins.str] suggestion_commit_message: The commit message used to apply merge request suggestions.
4303
- :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The list of tags for a project; put array of tags, that should be finally assigned to a project. Use topics instead.
4417
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. To be removed in 19.0.
4304
4418
  :param pulumi.Input[_builtins.str] template_name: When used without use*custom*template, name of a built-in project template. When used with use*custom*template, name of a custom project template. This option is mutually exclusive with `template_project_id`.
4305
4419
  :param pulumi.Input[_builtins.int] template_project_id: When used with use*custom*template, project ID of a custom project template. This is preferable to using template*name since template*name may be ambiguous (enterprise edition). This option is mutually exclusive with `template_name`. See `GroupProjectFileTemplate` to set a project as a template project. If a project has not been set as a template, using it here will result in an error.
4306
4420
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] topics: The list of topics for the project.
4307
4421
  :param pulumi.Input[_builtins.bool] use_custom_template: Use either custom instance or group (with group*with*project*templates*id) project template (enterprise edition).
4308
- > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/15.7/ee/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
4422
+ > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
4309
4423
  :param pulumi.Input[_builtins.str] visibility_level: Set to `public` to create a public project. Valid values are `private`, `internal`, `public`.
4310
4424
  :param pulumi.Input[_builtins.str] web_url: URL that can be used to find the project in a browser.
4311
4425
  :param pulumi.Input[_builtins.str] wiki_access_level: Set the wiki access level. Valid values are `disabled`, `private`, `enabled`.
4312
- :param pulumi.Input[_builtins.bool] wiki_enabled: Enable wiki for the project.
4426
+ :param pulumi.Input[_builtins.bool] wiki_enabled: Enable wiki for the project. Use `wiki_access_level` instead. To be removed in 19.0.
4313
4427
  """
4314
4428
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
4315
4429
 
@@ -4375,6 +4489,7 @@ class Project(pulumi.CustomResource):
4375
4489
  __props__.__dict__["merge_requests_enabled"] = merge_requests_enabled
4376
4490
  __props__.__dict__["merge_requests_template"] = merge_requests_template
4377
4491
  __props__.__dict__["merge_trains_enabled"] = merge_trains_enabled
4492
+ __props__.__dict__["merge_trains_skip_train_allowed"] = merge_trains_skip_train_allowed
4378
4493
  __props__.__dict__["mirror"] = mirror
4379
4494
  __props__.__dict__["mirror_overwrites_diverged_branches"] = mirror_overwrites_diverged_branches
4380
4495
  __props__.__dict__["mirror_trigger_builds"] = mirror_trigger_builds
@@ -4406,6 +4521,7 @@ class Project(pulumi.CustomResource):
4406
4521
  __props__.__dict__["request_access_enabled"] = request_access_enabled
4407
4522
  __props__.__dict__["requirements_access_level"] = requirements_access_level
4408
4523
  __props__.__dict__["resolve_outdated_diff_discussions"] = resolve_outdated_diff_discussions
4524
+ __props__.__dict__["resource_group_default_process_mode"] = resource_group_default_process_mode
4409
4525
  __props__.__dict__["restrict_user_defined_variables"] = restrict_user_defined_variables
4410
4526
  __props__.__dict__["runners_token"] = runners_token
4411
4527
  __props__.__dict__["security_and_compliance_access_level"] = security_and_compliance_access_level
@@ -4454,12 +4570,10 @@ class Project(pulumi.CustomResource):
4454
4570
 
4455
4571
  @_builtins.property
4456
4572
  @pulumi.getter(name="approvalsBeforeMerge")
4573
+ @_utilities.deprecated("""Use the resource `ProjectApprovalRule` instead. To be removed in 19.0.""")
4457
4574
  def approvals_before_merge(self) -> pulumi.Output[Optional[_builtins.int]]:
4458
4575
  """
4459
- Number of merge request approvals required for merging. Default is 0.
4460
- This field **does not** work well in combination with the `ProjectApprovalRule` resource
4461
- and is most likely gonna be deprecated in a future GitLab version (see [this upstream epic](https://gitlab.com/groups/gitlab-org/-/epics/7572)).
4462
- In the meantime we recommend against using this attribute and use `ProjectApprovalRule` instead.
4576
+ Number of merge request approvals required for merging. Default is 0. This field **does not** work well in combination with the `ProjectApprovalRule` resource. We recommend you do not use this deprecated field and use `ProjectApprovalRule` instead. To be removed in 19.0.
4463
4577
  """
4464
4578
  return pulumi.get(self, "approvals_before_merge")
4465
4579
 
@@ -4673,10 +4787,10 @@ class Project(pulumi.CustomResource):
4673
4787
 
4674
4788
  @_builtins.property
4675
4789
  @pulumi.getter(name="containerRegistryEnabled")
4676
- @_utilities.deprecated("""Use `container_registry_access_level` instead.""")
4790
+ @_utilities.deprecated("""Use `container_registry_access_level` instead. To be removed in 19.0.""")
4677
4791
  def container_registry_enabled(self) -> pulumi.Output[_builtins.bool]:
4678
4792
  """
4679
- Enable container registry for the project.
4793
+ Enable container registry for the project. Use `container_registry_access_level` instead. To be removed in 19.0.
4680
4794
  """
4681
4795
  return pulumi.get(self, "container_registry_enabled")
4682
4796
 
@@ -4826,9 +4940,10 @@ class Project(pulumi.CustomResource):
4826
4940
 
4827
4941
  @_builtins.property
4828
4942
  @pulumi.getter(name="issuesEnabled")
4943
+ @_utilities.deprecated("""Use `issues_access_level` instead. To be removed in 19.0.""")
4829
4944
  def issues_enabled(self) -> pulumi.Output[_builtins.bool]:
4830
4945
  """
4831
- Enable issue tracking for the project.
4946
+ Enable issue tracking for the project. Use `issues_access_level` instead. To be removed in 19.0.
4832
4947
  """
4833
4948
  return pulumi.get(self, "issues_enabled")
4834
4949
 
@@ -4890,9 +5005,10 @@ class Project(pulumi.CustomResource):
4890
5005
 
4891
5006
  @_builtins.property
4892
5007
  @pulumi.getter(name="mergeRequestsEnabled")
5008
+ @_utilities.deprecated("""Use `merge_requests_access_level` instead. To be removed in 19.0.""")
4893
5009
  def merge_requests_enabled(self) -> pulumi.Output[_builtins.bool]:
4894
5010
  """
4895
- Enable merge requests for the project.
5011
+ Enable merge requests for the project. Use `merge_requests_access_level` instead. To be removed in 19.0.
4896
5012
  """
4897
5013
  return pulumi.get(self, "merge_requests_enabled")
4898
5014
 
@@ -4912,6 +5028,14 @@ class Project(pulumi.CustomResource):
4912
5028
  """
4913
5029
  return pulumi.get(self, "merge_trains_enabled")
4914
5030
 
5031
+ @_builtins.property
5032
+ @pulumi.getter(name="mergeTrainsSkipTrainAllowed")
5033
+ def merge_trains_skip_train_allowed(self) -> pulumi.Output[_builtins.bool]:
5034
+ """
5035
+ Allows merge train merge requests to be merged without waiting for pipelines to finish. Requires `merge_pipelines_enabled` to be set to `true` to take effect.
5036
+ """
5037
+ return pulumi.get(self, "merge_trains_skip_train_allowed")
5038
+
4915
5039
  @_builtins.property
4916
5040
  @pulumi.getter
4917
5041
  def mirror(self) -> pulumi.Output[Optional[_builtins.bool]]:
@@ -5050,10 +5174,10 @@ class Project(pulumi.CustomResource):
5050
5174
 
5051
5175
  @_builtins.property
5052
5176
  @pulumi.getter(name="pipelinesEnabled")
5053
- @_utilities.deprecated("""Deprecated in favor of `builds_access_level`""")
5177
+ @_utilities.deprecated("""Use `builds_access_level` instead. To be removed in 19.0.""")
5054
5178
  def pipelines_enabled(self) -> pulumi.Output[_builtins.bool]:
5055
5179
  """
5056
- Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls.
5180
+ Enable pipelines for the project. The `pipelines_enabled` field is being sent as `jobs_enabled` in the GitLab API calls. Use `builds_access_level` instead. To be removed in 19.0.
5057
5181
  """
5058
5182
  return pulumi.get(self, "pipelines_enabled")
5059
5183
 
@@ -5162,11 +5286,20 @@ class Project(pulumi.CustomResource):
5162
5286
  """
5163
5287
  return pulumi.get(self, "resolve_outdated_diff_discussions")
5164
5288
 
5289
+ @_builtins.property
5290
+ @pulumi.getter(name="resourceGroupDefaultProcessMode")
5291
+ def resource_group_default_process_mode(self) -> pulumi.Output[_builtins.str]:
5292
+ """
5293
+ The default resource group process mode for the project.
5294
+ """
5295
+ return pulumi.get(self, "resource_group_default_process_mode")
5296
+
5165
5297
  @_builtins.property
5166
5298
  @pulumi.getter(name="restrictUserDefinedVariables")
5299
+ @_utilities.deprecated("""Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.""")
5167
5300
  def restrict_user_defined_variables(self) -> pulumi.Output[_builtins.bool]:
5168
5301
  """
5169
- Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline.
5302
+ Allow only users with the Maintainer role to pass user-defined variables when triggering a pipeline. Use `ci_pipeline_variables_minimum_override_role` instead. To be removed in 19.0.
5170
5303
  """
5171
5304
  return pulumi.get(self, "restrict_user_defined_variables")
5172
5305
 
@@ -5215,9 +5348,10 @@ class Project(pulumi.CustomResource):
5215
5348
 
5216
5349
  @_builtins.property
5217
5350
  @pulumi.getter(name="snippetsEnabled")
5351
+ @_utilities.deprecated("""Use `snippets_access_level` instead. To be removed in 19.0.""")
5218
5352
  def snippets_enabled(self) -> pulumi.Output[_builtins.bool]:
5219
5353
  """
5220
- Enable snippets for the project.
5354
+ Enable snippets for the project. Use `snippets_access_level` instead. To be removed in 19.0.
5221
5355
  """
5222
5356
  return pulumi.get(self, "snippets_enabled")
5223
5357
 
@@ -5255,9 +5389,10 @@ class Project(pulumi.CustomResource):
5255
5389
 
5256
5390
  @_builtins.property
5257
5391
  @pulumi.getter
5392
+ @_utilities.deprecated("""Use `topics` instead. To be removed in 19.0.""")
5258
5393
  def tags(self) -> pulumi.Output[Sequence[_builtins.str]]:
5259
5394
  """
5260
- The list of tags for a project; put array of tags, that should be finally assigned to a project. Use topics instead.
5395
+ The list of tags for a project; put array of tags, that should be finally assigned to a project. Use `topics` instead. To be removed in 19.0.
5261
5396
  """
5262
5397
  return pulumi.get(self, "tags")
5263
5398
 
@@ -5290,7 +5425,7 @@ class Project(pulumi.CustomResource):
5290
5425
  def use_custom_template(self) -> pulumi.Output[Optional[_builtins.bool]]:
5291
5426
  """
5292
5427
  Use either custom instance or group (with group*with*project*templates*id) project template (enterprise edition).
5293
- > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/15.7/ee/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
5428
+ > When using a custom template, [Group Tokens won't work](https://docs.gitlab.com/user/project/settings/import_export_troubleshooting/#import-using-the-rest-api-fails-when-using-a-group-access-token). You must use a real user's Personal Access Token.
5294
5429
  """
5295
5430
  return pulumi.get(self, "use_custom_template")
5296
5431
 
@@ -5320,9 +5455,10 @@ class Project(pulumi.CustomResource):
5320
5455
 
5321
5456
  @_builtins.property
5322
5457
  @pulumi.getter(name="wikiEnabled")
5458
+ @_utilities.deprecated("""Use `wiki_access_level` instead. To be removed in 19.0.""")
5323
5459
  def wiki_enabled(self) -> pulumi.Output[_builtins.bool]:
5324
5460
  """
5325
- Enable wiki for the project.
5461
+ Enable wiki for the project. Use `wiki_access_level` instead. To be removed in 19.0.
5326
5462
  """
5327
5463
  return pulumi.get(self, "wiki_enabled")
5328
5464