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
@@ -28,7 +28,7 @@ class ProjectJobTokenScopesArgs:
28
28
  The set of arguments for constructing a ProjectJobTokenScopes resource.
29
29
  :param pulumi.Input[_builtins.bool] enabled: Enable the given inbound allowlist. If false, will allow any project or group regardless of the values in `target_project_ids` or `target_group_ids`. Deleting the associated `ProjectJobTokenScopes` resource will reset `Enabled` on the group to `true`.
30
30
  :param pulumi.Input[_builtins.str] project: The ID or full path of the project.
31
- :param pulumi.Input[_builtins.int] project_id: The ID of the project.
31
+ :param pulumi.Input[_builtins.int] project_id: The ID of the project. Use `project` instead. To be removed in 19.0.
32
32
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.int]]] target_group_ids: A set of group IDs that are in the CI/CD job token inbound allowlist.
33
33
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.int]]] target_project_ids: A set of project IDs that are in the CI/CD job token inbound allowlist.
34
34
  """
@@ -37,8 +37,8 @@ class ProjectJobTokenScopesArgs:
37
37
  if project is not None:
38
38
  pulumi.set(__self__, "project", project)
39
39
  if project_id is not None:
40
- warnings.warn("""`project_id` has been deprecated and will be removed in 19.0. Use `project` instead.""", DeprecationWarning)
41
- pulumi.log.warn("""project_id is deprecated: `project_id` has been deprecated and will be removed in 19.0. Use `project` instead.""")
40
+ warnings.warn("""Use `project` instead. To be removed in 19.0.""", DeprecationWarning)
41
+ pulumi.log.warn("""project_id is deprecated: Use `project` instead. To be removed in 19.0.""")
42
42
  if project_id is not None:
43
43
  pulumi.set(__self__, "project_id", project_id)
44
44
  if target_group_ids is not None:
@@ -72,10 +72,10 @@ class ProjectJobTokenScopesArgs:
72
72
 
73
73
  @_builtins.property
74
74
  @pulumi.getter(name="projectId")
75
- @_utilities.deprecated("""`project_id` has been deprecated and will be removed in 19.0. Use `project` instead.""")
75
+ @_utilities.deprecated("""Use `project` instead. To be removed in 19.0.""")
76
76
  def project_id(self) -> Optional[pulumi.Input[_builtins.int]]:
77
77
  """
78
- The ID of the project.
78
+ The ID of the project. Use `project` instead. To be removed in 19.0.
79
79
  """
80
80
  return pulumi.get(self, "project_id")
81
81
 
@@ -120,7 +120,7 @@ class _ProjectJobTokenScopesState:
120
120
  Input properties used for looking up and filtering ProjectJobTokenScopes resources.
121
121
  :param pulumi.Input[_builtins.bool] enabled: Enable the given inbound allowlist. If false, will allow any project or group regardless of the values in `target_project_ids` or `target_group_ids`. Deleting the associated `ProjectJobTokenScopes` resource will reset `Enabled` on the group to `true`.
122
122
  :param pulumi.Input[_builtins.str] project: The ID or full path of the project.
123
- :param pulumi.Input[_builtins.int] project_id: The ID of the project.
123
+ :param pulumi.Input[_builtins.int] project_id: The ID of the project. Use `project` instead. To be removed in 19.0.
124
124
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.int]]] target_group_ids: A set of group IDs that are in the CI/CD job token inbound allowlist.
125
125
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.int]]] target_project_ids: A set of project IDs that are in the CI/CD job token inbound allowlist.
126
126
  """
@@ -129,8 +129,8 @@ class _ProjectJobTokenScopesState:
129
129
  if project is not None:
130
130
  pulumi.set(__self__, "project", project)
131
131
  if project_id is not None:
132
- warnings.warn("""`project_id` has been deprecated and will be removed in 19.0. Use `project` instead.""", DeprecationWarning)
133
- pulumi.log.warn("""project_id is deprecated: `project_id` has been deprecated and will be removed in 19.0. Use `project` instead.""")
132
+ warnings.warn("""Use `project` instead. To be removed in 19.0.""", DeprecationWarning)
133
+ pulumi.log.warn("""project_id is deprecated: Use `project` instead. To be removed in 19.0.""")
134
134
  if project_id is not None:
135
135
  pulumi.set(__self__, "project_id", project_id)
136
136
  if target_group_ids is not None:
@@ -164,10 +164,10 @@ class _ProjectJobTokenScopesState:
164
164
 
165
165
  @_builtins.property
166
166
  @pulumi.getter(name="projectId")
167
- @_utilities.deprecated("""`project_id` has been deprecated and will be removed in 19.0. Use `project` instead.""")
167
+ @_utilities.deprecated("""Use `project` instead. To be removed in 19.0.""")
168
168
  def project_id(self) -> Optional[pulumi.Input[_builtins.int]]:
169
169
  """
170
- The ID of the project.
170
+ The ID of the project. Use `project` instead. To be removed in 19.0.
171
171
  """
172
172
  return pulumi.get(self, "project_id")
173
173
 
@@ -295,7 +295,7 @@ class ProjectJobTokenScopes(pulumi.CustomResource):
295
295
  :param pulumi.ResourceOptions opts: Options for the resource.
296
296
  :param pulumi.Input[_builtins.bool] enabled: Enable the given inbound allowlist. If false, will allow any project or group regardless of the values in `target_project_ids` or `target_group_ids`. Deleting the associated `ProjectJobTokenScopes` resource will reset `Enabled` on the group to `true`.
297
297
  :param pulumi.Input[_builtins.str] project: The ID or full path of the project.
298
- :param pulumi.Input[_builtins.int] project_id: The ID of the project.
298
+ :param pulumi.Input[_builtins.int] project_id: The ID of the project. Use `project` instead. To be removed in 19.0.
299
299
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.int]]] target_group_ids: A set of group IDs that are in the CI/CD job token inbound allowlist.
300
300
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.int]]] target_project_ids: A set of project IDs that are in the CI/CD job token inbound allowlist.
301
301
  """
@@ -442,7 +442,7 @@ class ProjectJobTokenScopes(pulumi.CustomResource):
442
442
  :param pulumi.ResourceOptions opts: Options for the resource.
443
443
  :param pulumi.Input[_builtins.bool] enabled: Enable the given inbound allowlist. If false, will allow any project or group regardless of the values in `target_project_ids` or `target_group_ids`. Deleting the associated `ProjectJobTokenScopes` resource will reset `Enabled` on the group to `true`.
444
444
  :param pulumi.Input[_builtins.str] project: The ID or full path of the project.
445
- :param pulumi.Input[_builtins.int] project_id: The ID of the project.
445
+ :param pulumi.Input[_builtins.int] project_id: The ID of the project. Use `project` instead. To be removed in 19.0.
446
446
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.int]]] target_group_ids: A set of group IDs that are in the CI/CD job token inbound allowlist.
447
447
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.int]]] target_project_ids: A set of project IDs that are in the CI/CD job token inbound allowlist.
448
448
  """
@@ -475,10 +475,10 @@ class ProjectJobTokenScopes(pulumi.CustomResource):
475
475
 
476
476
  @_builtins.property
477
477
  @pulumi.getter(name="projectId")
478
- @_utilities.deprecated("""`project_id` has been deprecated and will be removed in 19.0. Use `project` instead.""")
478
+ @_utilities.deprecated("""Use `project` instead. To be removed in 19.0.""")
479
479
  def project_id(self) -> pulumi.Output[_builtins.int]:
480
480
  """
481
- The ID of the project.
481
+ The ID of the project. Use `project` instead. To be removed in 19.0.
482
482
  """
483
483
  return pulumi.get(self, "project_id")
484
484
 
@@ -25,7 +25,7 @@ class ProjectLabelArgs:
25
25
  name: Optional[pulumi.Input[_builtins.str]] = None):
26
26
  """
27
27
  The set of arguments for constructing a ProjectLabel resource.
28
- :param pulumi.Input[_builtins.str] color: The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords).
28
+ :param pulumi.Input[_builtins.str] color: The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value#Color_keywords).
29
29
  :param pulumi.Input[_builtins.str] project: The name or id of the project to add the label to.
30
30
  :param pulumi.Input[_builtins.str] description: The description of the label.
31
31
  :param pulumi.Input[_builtins.str] name: The name of the label.
@@ -41,7 +41,7 @@ class ProjectLabelArgs:
41
41
  @pulumi.getter
42
42
  def color(self) -> pulumi.Input[_builtins.str]:
43
43
  """
44
- The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords).
44
+ The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value#Color_keywords).
45
45
  """
46
46
  return pulumi.get(self, "color")
47
47
 
@@ -97,7 +97,7 @@ class _ProjectLabelState:
97
97
  project: Optional[pulumi.Input[_builtins.str]] = None):
98
98
  """
99
99
  Input properties used for looking up and filtering ProjectLabel resources.
100
- :param pulumi.Input[_builtins.str] color: The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords).
100
+ :param pulumi.Input[_builtins.str] color: The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value#Color_keywords).
101
101
  :param pulumi.Input[_builtins.str] color_hex: Read-only, used by the provider to store the API response color. This is always in the 6-digit hex notation with leading '#' sign (e.g. #FFAABB). If `color` contains a color name, this attribute contains the hex notation equivalent. Otherwise, the value of this attribute is the same as `color`.
102
102
  :param pulumi.Input[_builtins.str] description: The description of the label.
103
103
  :param pulumi.Input[_builtins.int] label_id: The id of the project label.
@@ -121,7 +121,7 @@ class _ProjectLabelState:
121
121
  @pulumi.getter
122
122
  def color(self) -> Optional[pulumi.Input[_builtins.str]]:
123
123
  """
124
- The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords).
124
+ The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value#Color_keywords).
125
125
  """
126
126
  return pulumi.get(self, "color")
127
127
 
@@ -242,15 +242,15 @@ class ProjectLabel(pulumi.CustomResource):
242
242
 
243
243
  Importing using the CLI is supported with the following syntax:
244
244
 
245
- Gitlab Project labels can be imported using an id made up of `{project_id}:{label_name}`, e.g.
245
+ Gitlab Project labels can be imported using an id made up of `{project_id}:{label_id}`, e.g.
246
246
 
247
247
  ```sh
248
- $ pulumi import gitlab:index/projectLabel:ProjectLabel example 12345:fixme
248
+ $ pulumi import gitlab:index/projectLabel:ProjectLabel example 12345:101010
249
249
  ```
250
250
 
251
251
  :param str resource_name: The name of the resource.
252
252
  :param pulumi.ResourceOptions opts: Options for the resource.
253
- :param pulumi.Input[_builtins.str] color: The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords).
253
+ :param pulumi.Input[_builtins.str] color: The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value#Color_keywords).
254
254
  :param pulumi.Input[_builtins.str] description: The description of the label.
255
255
  :param pulumi.Input[_builtins.str] name: The name of the label.
256
256
  :param pulumi.Input[_builtins.str] project: The name or id of the project to add the label to.
@@ -302,10 +302,10 @@ class ProjectLabel(pulumi.CustomResource):
302
302
 
303
303
  Importing using the CLI is supported with the following syntax:
304
304
 
305
- Gitlab Project labels can be imported using an id made up of `{project_id}:{label_name}`, e.g.
305
+ Gitlab Project labels can be imported using an id made up of `{project_id}:{label_id}`, e.g.
306
306
 
307
307
  ```sh
308
- $ pulumi import gitlab:index/projectLabel:ProjectLabel example 12345:fixme
308
+ $ pulumi import gitlab:index/projectLabel:ProjectLabel example 12345:101010
309
309
  ```
310
310
 
311
311
  :param str resource_name: The name of the resource.
@@ -369,7 +369,7 @@ class ProjectLabel(pulumi.CustomResource):
369
369
  :param str resource_name: The unique name of the resulting resource.
370
370
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
371
371
  :param pulumi.ResourceOptions opts: Options for the resource.
372
- :param pulumi.Input[_builtins.str] color: The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords).
372
+ :param pulumi.Input[_builtins.str] color: The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value#Color_keywords).
373
373
  :param pulumi.Input[_builtins.str] color_hex: Read-only, used by the provider to store the API response color. This is always in the 6-digit hex notation with leading '#' sign (e.g. #FFAABB). If `color` contains a color name, this attribute contains the hex notation equivalent. Otherwise, the value of this attribute is the same as `color`.
374
374
  :param pulumi.Input[_builtins.str] description: The description of the label.
375
375
  :param pulumi.Input[_builtins.int] label_id: The id of the project label.
@@ -392,7 +392,7 @@ class ProjectLabel(pulumi.CustomResource):
392
392
  @pulumi.getter
393
393
  def color(self) -> pulumi.Output[_builtins.str]:
394
394
  """
395
- The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords).
395
+ The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the [CSS color names](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/color_value#Color_keywords).
396
396
  """
397
397
  return pulumi.get(self, "color")
398
398
 
@@ -274,7 +274,7 @@ class ProjectLevelMrApprovals(pulumi.CustomResource):
274
274
 
275
275
  > This resource requires a GitLab Enterprise instance.
276
276
 
277
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/merge_request_approvals/#merge-request-level-mr-approvals)
277
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/merge_request_approvals/#approval-rules-for-a-merge-request)
278
278
 
279
279
  ## Example Usage
280
280
 
@@ -340,7 +340,7 @@ class ProjectLevelMrApprovals(pulumi.CustomResource):
340
340
 
341
341
  > This resource requires a GitLab Enterprise instance.
342
342
 
343
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/merge_request_approvals/#merge-request-level-mr-approvals)
343
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/merge_request_approvals/#approval-rules-for-a-merge-request)
344
344
 
345
345
  ## Example Usage
346
346
 
@@ -670,7 +670,7 @@ class ProjectLevelNotifications(pulumi.CustomResource):
670
670
 
671
671
  > While the API supports both groups and projects, this resource only supports projects currently.
672
672
 
673
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/notification_settings/#group--project-level-notification-settings)
673
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/notification_settings/#get-group-or-project-notification-settings)
674
674
 
675
675
  ## Example Usage
676
676
 
@@ -748,7 +748,7 @@ class ProjectLevelNotifications(pulumi.CustomResource):
748
748
 
749
749
  > While the API supports both groups and projects, this resource only supports projects currently.
750
750
 
751
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/notification_settings/#group--project-level-notification-settings)
751
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/notification_settings/#get-group-or-project-notification-settings)
752
752
 
753
753
  ## Example Usage
754
754
 
@@ -30,7 +30,7 @@ class ProjectMembershipArgs:
30
30
  :param pulumi.Input[_builtins.str] project: The ID or URL-encoded path of the project.
31
31
  :param pulumi.Input[_builtins.int] user_id: The id of the user.
32
32
  :param pulumi.Input[_builtins.str] expires_at: Expiration date for the project membership. Format: `YYYY-MM-DD`
33
- :param pulumi.Input[_builtins.int] member_role_id: The ID of a custom member role. Only available for Ultimate instances.
33
+ :param pulumi.Input[_builtins.int] member_role_id: The ID of a custom member role. Not including the member role ID will cause the role to update the membership to the base role if the custom role is current set. Only available for Ultimate instances.
34
34
  """
35
35
  pulumi.set(__self__, "access_level", access_level)
36
36
  pulumi.set(__self__, "project", project)
@@ -92,7 +92,7 @@ class ProjectMembershipArgs:
92
92
  @pulumi.getter(name="memberRoleId")
93
93
  def member_role_id(self) -> Optional[pulumi.Input[_builtins.int]]:
94
94
  """
95
- The ID of a custom member role. Only available for Ultimate instances.
95
+ The ID of a custom member role. Not including the member role ID will cause the role to update the membership to the base role if the custom role is current set. Only available for Ultimate instances.
96
96
  """
97
97
  return pulumi.get(self, "member_role_id")
98
98
 
@@ -113,7 +113,7 @@ class _ProjectMembershipState:
113
113
  Input properties used for looking up and filtering ProjectMembership resources.
114
114
  :param pulumi.Input[_builtins.str] access_level: The access level for the member. Valid values are: `no one`, `minimal`, `guest`, `planner`, `reporter`, `developer`, `maintainer`, `owner`
115
115
  :param pulumi.Input[_builtins.str] expires_at: Expiration date for the project membership. Format: `YYYY-MM-DD`
116
- :param pulumi.Input[_builtins.int] member_role_id: The ID of a custom member role. Only available for Ultimate instances.
116
+ :param pulumi.Input[_builtins.int] member_role_id: The ID of a custom member role. Not including the member role ID will cause the role to update the membership to the base role if the custom role is current set. Only available for Ultimate instances.
117
117
  :param pulumi.Input[_builtins.str] project: The ID or URL-encoded path of the project.
118
118
  :param pulumi.Input[_builtins.int] user_id: The id of the user.
119
119
  """
@@ -156,7 +156,7 @@ class _ProjectMembershipState:
156
156
  @pulumi.getter(name="memberRoleId")
157
157
  def member_role_id(self) -> Optional[pulumi.Input[_builtins.int]]:
158
158
  """
159
- The ID of a custom member role. Only available for Ultimate instances.
159
+ The ID of a custom member role. Not including the member role ID will cause the role to update the membership to the base role if the custom role is current set. Only available for Ultimate instances.
160
160
  """
161
161
  return pulumi.get(self, "member_role_id")
162
162
 
@@ -206,7 +206,7 @@ class ProjectMembership(pulumi.CustomResource):
206
206
 
207
207
  > If a project should grant membership to an entire group use the `ProjectShareGroup` resource instead.
208
208
 
209
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/members/)
209
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/project_members/)
210
210
 
211
211
  ## Example Usage
212
212
 
@@ -251,7 +251,7 @@ class ProjectMembership(pulumi.CustomResource):
251
251
  :param pulumi.ResourceOptions opts: Options for the resource.
252
252
  :param pulumi.Input[_builtins.str] access_level: The access level for the member. Valid values are: `no one`, `minimal`, `guest`, `planner`, `reporter`, `developer`, `maintainer`, `owner`
253
253
  :param pulumi.Input[_builtins.str] expires_at: Expiration date for the project membership. Format: `YYYY-MM-DD`
254
- :param pulumi.Input[_builtins.int] member_role_id: The ID of a custom member role. Only available for Ultimate instances.
254
+ :param pulumi.Input[_builtins.int] member_role_id: The ID of a custom member role. Not including the member role ID will cause the role to update the membership to the base role if the custom role is current set. Only available for Ultimate instances.
255
255
  :param pulumi.Input[_builtins.str] project: The ID or URL-encoded path of the project.
256
256
  :param pulumi.Input[_builtins.int] user_id: The id of the user.
257
257
  """
@@ -266,7 +266,7 @@ class ProjectMembership(pulumi.CustomResource):
266
266
 
267
267
  > If a project should grant membership to an entire group use the `ProjectShareGroup` resource instead.
268
268
 
269
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/members/)
269
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/project_members/)
270
270
 
271
271
  ## Example Usage
272
272
 
@@ -371,7 +371,7 @@ class ProjectMembership(pulumi.CustomResource):
371
371
  :param pulumi.ResourceOptions opts: Options for the resource.
372
372
  :param pulumi.Input[_builtins.str] access_level: The access level for the member. Valid values are: `no one`, `minimal`, `guest`, `planner`, `reporter`, `developer`, `maintainer`, `owner`
373
373
  :param pulumi.Input[_builtins.str] expires_at: Expiration date for the project membership. Format: `YYYY-MM-DD`
374
- :param pulumi.Input[_builtins.int] member_role_id: The ID of a custom member role. Only available for Ultimate instances.
374
+ :param pulumi.Input[_builtins.int] member_role_id: The ID of a custom member role. Not including the member role ID will cause the role to update the membership to the base role if the custom role is current set. Only available for Ultimate instances.
375
375
  :param pulumi.Input[_builtins.str] project: The ID or URL-encoded path of the project.
376
376
  :param pulumi.Input[_builtins.int] user_id: The id of the user.
377
377
  """
@@ -406,7 +406,7 @@ class ProjectMembership(pulumi.CustomResource):
406
406
  @pulumi.getter(name="memberRoleId")
407
407
  def member_role_id(self) -> pulumi.Output[Optional[_builtins.int]]:
408
408
  """
409
- The ID of a custom member role. Only available for Ultimate instances.
409
+ The ID of a custom member role. Not including the member role ID will cause the role to update the membership to the base role if the custom role is current set. Only available for Ultimate instances.
410
410
  """
411
411
  return pulumi.get(self, "member_role_id")
412
412
 
@@ -285,10 +285,9 @@ class ProjectMirror(pulumi.CustomResource):
285
285
  url: Optional[pulumi.Input[_builtins.str]] = None,
286
286
  __props__=None):
287
287
  """
288
- The `ProjectMirror` resource allows to manage the lifecycle of a project mirror.
288
+ The `ProjectMirror` resource manages the lifecycle of a project mirror.
289
289
 
290
- This is for *pushing* changes to a remote repository. *Pull Mirroring* can be configured using a combination of the
291
- import_url, mirror, and mirror_trigger_builds properties on the Project resource.
290
+ This is for *pushing* changes to a remote repository. *Pull Mirroring* can be configured with the ProjectPullMirror resource.
292
291
 
293
292
  > **Warning** By default, the provider sets the `keep_divergent_refs` argument to `True`.
294
293
  If you manually set `keep_divergent_refs` to `False`, GitLab mirroring removes branches in the target that aren't in the source.
@@ -296,6 +295,8 @@ class ProjectMirror(pulumi.CustomResource):
296
295
 
297
296
  **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/remote_mirrors/)
298
297
 
298
+ This resource is deprecated in favor of `ProjectPushMirror` which is a rename. The alias will be removed in version 19.0.
299
+
299
300
  ## Example Usage
300
301
 
301
302
  ```python
@@ -346,10 +347,9 @@ class ProjectMirror(pulumi.CustomResource):
346
347
  args: ProjectMirrorArgs,
347
348
  opts: Optional[pulumi.ResourceOptions] = None):
348
349
  """
349
- The `ProjectMirror` resource allows to manage the lifecycle of a project mirror.
350
+ The `ProjectMirror` resource manages the lifecycle of a project mirror.
350
351
 
351
- This is for *pushing* changes to a remote repository. *Pull Mirroring* can be configured using a combination of the
352
- import_url, mirror, and mirror_trigger_builds properties on the Project resource.
352
+ This is for *pushing* changes to a remote repository. *Pull Mirroring* can be configured with the ProjectPullMirror resource.
353
353
 
354
354
  > **Warning** By default, the provider sets the `keep_divergent_refs` argument to `True`.
355
355
  If you manually set `keep_divergent_refs` to `False`, GitLab mirroring removes branches in the target that aren't in the source.
@@ -357,6 +357,8 @@ class ProjectMirror(pulumi.CustomResource):
357
357
 
358
358
  **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/remote_mirrors/)
359
359
 
360
+ This resource is deprecated in favor of `ProjectPushMirror` which is a rename. The alias will be removed in version 19.0.
361
+
360
362
  ## Example Usage
361
363
 
362
364
  ```python