pulumi-gitlab 9.5.0a1761172288__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 (81) hide show
  1. pulumi_gitlab/__init__.py +69 -0
  2. pulumi_gitlab/_inputs.py +557 -0
  3. pulumi_gitlab/branch.py +1 -1
  4. pulumi_gitlab/deploy_key_enable.py +4 -42
  5. pulumi_gitlab/get_artifact_file.py +266 -0
  6. pulumi_gitlab/get_group_billable_member_memberships.py +2 -2
  7. pulumi_gitlab/get_group_hook.py +15 -1
  8. pulumi_gitlab/get_group_membership.py +2 -2
  9. pulumi_gitlab/get_group_service_account.py +2 -2
  10. pulumi_gitlab/get_group_service_account_access_tokens.py +138 -0
  11. pulumi_gitlab/get_group_variable.py +1 -1
  12. pulumi_gitlab/get_instance_service_account.py +2 -2
  13. pulumi_gitlab/get_member_role.py +200 -0
  14. pulumi_gitlab/get_project.py +15 -1
  15. pulumi_gitlab/get_project_hook.py +17 -3
  16. pulumi_gitlab/get_project_issue_label_events.py +170 -0
  17. pulumi_gitlab/get_project_membership.py +2 -2
  18. pulumi_gitlab/get_project_protected_tag.py +2 -2
  19. pulumi_gitlab/get_project_secure_file.py +247 -0
  20. pulumi_gitlab/get_project_tag.py +2 -2
  21. pulumi_gitlab/get_project_tags.py +1 -1
  22. pulumi_gitlab/get_projects.py +3 -3
  23. pulumi_gitlab/get_release_link.py +5 -5
  24. pulumi_gitlab/get_release_links.py +3 -3
  25. pulumi_gitlab/get_security_policy_document.py +170 -0
  26. pulumi_gitlab/get_user.py +32 -0
  27. pulumi_gitlab/global_level_notifications.py +2 -2
  28. pulumi_gitlab/group.py +141 -0
  29. pulumi_gitlab/group_access_token.py +4 -4
  30. pulumi_gitlab/group_hook.py +163 -112
  31. pulumi_gitlab/group_label.py +7 -7
  32. pulumi_gitlab/group_level_mr_approvals.py +36 -0
  33. pulumi_gitlab/group_membership.py +2 -2
  34. pulumi_gitlab/group_service_account.py +2 -2
  35. pulumi_gitlab/group_service_account_access_token.py +92 -2
  36. pulumi_gitlab/group_share_group.py +2 -2
  37. pulumi_gitlab/instance_service_account.py +2 -2
  38. pulumi_gitlab/instance_variable.py +12 -12
  39. pulumi_gitlab/integration_emails_on_push.py +9 -7
  40. pulumi_gitlab/label.py +7 -7
  41. pulumi_gitlab/member_role.py +9 -9
  42. pulumi_gitlab/outputs.py +851 -15
  43. pulumi_gitlab/pages_domain.py +7 -7
  44. pulumi_gitlab/personal_access_token.py +2 -2
  45. pulumi_gitlab/pipeline_schedule_variable.py +2 -2
  46. pulumi_gitlab/project.py +54 -7
  47. pulumi_gitlab/project_access_token.py +2 -2
  48. pulumi_gitlab/project_approval_rule.py +120 -0
  49. pulumi_gitlab/project_cicd_catalog.py +314 -0
  50. pulumi_gitlab/project_deploy_token.py +2 -2
  51. pulumi_gitlab/project_hook.py +155 -102
  52. pulumi_gitlab/project_integration_emails_on_push.py +17 -7
  53. pulumi_gitlab/project_issue_link.py +502 -0
  54. pulumi_gitlab/project_job_token_scope.py +24 -4
  55. pulumi_gitlab/project_label.py +11 -11
  56. pulumi_gitlab/project_level_mr_approvals.py +2 -2
  57. pulumi_gitlab/project_level_notifications.py +2 -2
  58. pulumi_gitlab/project_membership.py +2 -2
  59. pulumi_gitlab/project_mirror.py +8 -6
  60. pulumi_gitlab/project_package_dependency_proxy.py +446 -0
  61. pulumi_gitlab/project_pull_mirror.py +837 -0
  62. pulumi_gitlab/project_push_mirror.py +547 -0
  63. pulumi_gitlab/project_secure_file.py +489 -0
  64. pulumi_gitlab/project_tag.py +3 -3
  65. pulumi_gitlab/project_target_branch_rule.py +2 -2
  66. pulumi_gitlab/project_variable.py +7 -7
  67. pulumi_gitlab/project_wiki_page.py +26 -0
  68. pulumi_gitlab/pulumi-plugin.json +1 -1
  69. pulumi_gitlab/release_link.py +19 -19
  70. pulumi_gitlab/runner.py +4 -4
  71. pulumi_gitlab/system_hook.py +7 -7
  72. pulumi_gitlab/user_avatar.py +386 -0
  73. pulumi_gitlab/user_gpg_key.py +2 -2
  74. pulumi_gitlab/user_impersonation_token.py +2 -2
  75. pulumi_gitlab/user_runner.py +14 -14
  76. pulumi_gitlab/user_ssh_key.py +2 -2
  77. pulumi_gitlab/value_stream_analytics.py +88 -0
  78. {pulumi_gitlab-9.5.0a1761172288.dist-info → pulumi_gitlab-9.8.1.dist-info}/METADATA +1 -1
  79. {pulumi_gitlab-9.5.0a1761172288.dist-info → pulumi_gitlab-9.8.1.dist-info}/RECORD +81 -68
  80. {pulumi_gitlab-9.5.0a1761172288.dist-info → pulumi_gitlab-9.8.1.dist-info}/WHEEL +0 -0
  81. {pulumi_gitlab-9.5.0a1761172288.dist-info → pulumi_gitlab-9.8.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,314 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+
17
+ __all__ = ['ProjectCicdCatalogArgs', 'ProjectCicdCatalog']
18
+
19
+ @pulumi.input_type
20
+ class ProjectCicdCatalogArgs:
21
+ def __init__(__self__, *,
22
+ enabled: pulumi.Input[_builtins.bool],
23
+ project: pulumi.Input[_builtins.str],
24
+ keep_settings_on_destroy: Optional[pulumi.Input[_builtins.bool]] = None):
25
+ """
26
+ The set of arguments for constructing a ProjectCicdCatalog resource.
27
+ :param pulumi.Input[_builtins.bool] enabled: Whether the project should be enabled as a CI/CD Catalog resource.
28
+ :param pulumi.Input[_builtins.str] project: The ID or URL-encoded path of the project.
29
+ """
30
+ pulumi.set(__self__, "enabled", enabled)
31
+ pulumi.set(__self__, "project", project)
32
+ if keep_settings_on_destroy is not None:
33
+ pulumi.set(__self__, "keep_settings_on_destroy", keep_settings_on_destroy)
34
+
35
+ @_builtins.property
36
+ @pulumi.getter
37
+ def enabled(self) -> pulumi.Input[_builtins.bool]:
38
+ """
39
+ Whether the project should be enabled as a CI/CD Catalog resource.
40
+ """
41
+ return pulumi.get(self, "enabled")
42
+
43
+ @enabled.setter
44
+ def enabled(self, value: pulumi.Input[_builtins.bool]):
45
+ pulumi.set(self, "enabled", value)
46
+
47
+ @_builtins.property
48
+ @pulumi.getter
49
+ def project(self) -> pulumi.Input[_builtins.str]:
50
+ """
51
+ The ID or URL-encoded path of the project.
52
+ """
53
+ return pulumi.get(self, "project")
54
+
55
+ @project.setter
56
+ def project(self, value: pulumi.Input[_builtins.str]):
57
+ pulumi.set(self, "project", value)
58
+
59
+ @_builtins.property
60
+ @pulumi.getter(name="keepSettingsOnDestroy")
61
+ def keep_settings_on_destroy(self) -> Optional[pulumi.Input[_builtins.bool]]:
62
+ return pulumi.get(self, "keep_settings_on_destroy")
63
+
64
+ @keep_settings_on_destroy.setter
65
+ def keep_settings_on_destroy(self, value: Optional[pulumi.Input[_builtins.bool]]):
66
+ pulumi.set(self, "keep_settings_on_destroy", value)
67
+
68
+
69
+ @pulumi.input_type
70
+ class _ProjectCicdCatalogState:
71
+ def __init__(__self__, *,
72
+ enabled: Optional[pulumi.Input[_builtins.bool]] = None,
73
+ keep_settings_on_destroy: Optional[pulumi.Input[_builtins.bool]] = None,
74
+ project: Optional[pulumi.Input[_builtins.str]] = None):
75
+ """
76
+ Input properties used for looking up and filtering ProjectCicdCatalog resources.
77
+ :param pulumi.Input[_builtins.bool] enabled: Whether the project should be enabled as a CI/CD Catalog resource.
78
+ :param pulumi.Input[_builtins.str] project: The ID or URL-encoded path of the project.
79
+ """
80
+ if enabled is not None:
81
+ pulumi.set(__self__, "enabled", enabled)
82
+ if keep_settings_on_destroy is not None:
83
+ pulumi.set(__self__, "keep_settings_on_destroy", keep_settings_on_destroy)
84
+ if project is not None:
85
+ pulumi.set(__self__, "project", project)
86
+
87
+ @_builtins.property
88
+ @pulumi.getter
89
+ def enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
90
+ """
91
+ Whether the project should be enabled as a CI/CD Catalog resource.
92
+ """
93
+ return pulumi.get(self, "enabled")
94
+
95
+ @enabled.setter
96
+ def enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
97
+ pulumi.set(self, "enabled", value)
98
+
99
+ @_builtins.property
100
+ @pulumi.getter(name="keepSettingsOnDestroy")
101
+ def keep_settings_on_destroy(self) -> Optional[pulumi.Input[_builtins.bool]]:
102
+ return pulumi.get(self, "keep_settings_on_destroy")
103
+
104
+ @keep_settings_on_destroy.setter
105
+ def keep_settings_on_destroy(self, value: Optional[pulumi.Input[_builtins.bool]]):
106
+ pulumi.set(self, "keep_settings_on_destroy", value)
107
+
108
+ @_builtins.property
109
+ @pulumi.getter
110
+ def project(self) -> Optional[pulumi.Input[_builtins.str]]:
111
+ """
112
+ The ID or URL-encoded path of the project.
113
+ """
114
+ return pulumi.get(self, "project")
115
+
116
+ @project.setter
117
+ def project(self, value: Optional[pulumi.Input[_builtins.str]]):
118
+ pulumi.set(self, "project", value)
119
+
120
+
121
+ @pulumi.type_token("gitlab:index/projectCicdCatalog:ProjectCicdCatalog")
122
+ class ProjectCicdCatalog(pulumi.CustomResource):
123
+ @overload
124
+ def __init__(__self__,
125
+ resource_name: str,
126
+ opts: Optional[pulumi.ResourceOptions] = None,
127
+ enabled: Optional[pulumi.Input[_builtins.bool]] = None,
128
+ keep_settings_on_destroy: Optional[pulumi.Input[_builtins.bool]] = None,
129
+ project: Optional[pulumi.Input[_builtins.str]] = None,
130
+ __props__=None):
131
+ """
132
+ The `ProjectCicdCatalog` resource allows users to manage the lifecycle of a CI/CD Catalog project.
133
+
134
+ This resource controls whether a project is available as a CI/CD Catalog resource.
135
+
136
+ > If `keep_settings_on_destroy` is set to false, destroying the resource will revert the catalog status to the value that was present when the resource was first created.
137
+ You will need to apply the resource with the new setting before destroying the resource.
138
+
139
+ **Upstream API**: [GitLab GraphQL API docs](https://docs.gitlab.com/ee/api/graphql/reference/#mutationcatalogresourcescreate)
140
+
141
+ ## Example Usage
142
+
143
+ ```python
144
+ import pulumi
145
+ import pulumi_gitlab as gitlab
146
+
147
+ example = gitlab.ProjectCicdCatalog("example",
148
+ project="namespace/project",
149
+ enabled=True)
150
+ ```
151
+
152
+ ## Import
153
+
154
+ Starting in Terraform v1.5.0, you can use an import block to import `gitlab_project_cicd_catalog`. For example:
155
+
156
+ terraform
157
+
158
+ import {
159
+
160
+ to = gitlab_project_cicd_catalog.example
161
+
162
+ id = "see CLI command below for ID"
163
+
164
+ }
165
+
166
+ Importing using the CLI is supported with the following syntax:
167
+
168
+ Gitlab Project CICD Catalogs can be imported with their id, e.g.
169
+
170
+ ```sh
171
+ $ pulumi import gitlab:index/projectCicdCatalog:ProjectCicdCatalog example "1"
172
+ ```
173
+
174
+ :param str resource_name: The name of the resource.
175
+ :param pulumi.ResourceOptions opts: Options for the resource.
176
+ :param pulumi.Input[_builtins.bool] enabled: Whether the project should be enabled as a CI/CD Catalog resource.
177
+ :param pulumi.Input[_builtins.str] project: The ID or URL-encoded path of the project.
178
+ """
179
+ ...
180
+ @overload
181
+ def __init__(__self__,
182
+ resource_name: str,
183
+ args: ProjectCicdCatalogArgs,
184
+ opts: Optional[pulumi.ResourceOptions] = None):
185
+ """
186
+ The `ProjectCicdCatalog` resource allows users to manage the lifecycle of a CI/CD Catalog project.
187
+
188
+ This resource controls whether a project is available as a CI/CD Catalog resource.
189
+
190
+ > If `keep_settings_on_destroy` is set to false, destroying the resource will revert the catalog status to the value that was present when the resource was first created.
191
+ You will need to apply the resource with the new setting before destroying the resource.
192
+
193
+ **Upstream API**: [GitLab GraphQL API docs](https://docs.gitlab.com/ee/api/graphql/reference/#mutationcatalogresourcescreate)
194
+
195
+ ## Example Usage
196
+
197
+ ```python
198
+ import pulumi
199
+ import pulumi_gitlab as gitlab
200
+
201
+ example = gitlab.ProjectCicdCatalog("example",
202
+ project="namespace/project",
203
+ enabled=True)
204
+ ```
205
+
206
+ ## Import
207
+
208
+ Starting in Terraform v1.5.0, you can use an import block to import `gitlab_project_cicd_catalog`. For example:
209
+
210
+ terraform
211
+
212
+ import {
213
+
214
+ to = gitlab_project_cicd_catalog.example
215
+
216
+ id = "see CLI command below for ID"
217
+
218
+ }
219
+
220
+ Importing using the CLI is supported with the following syntax:
221
+
222
+ Gitlab Project CICD Catalogs can be imported with their id, e.g.
223
+
224
+ ```sh
225
+ $ pulumi import gitlab:index/projectCicdCatalog:ProjectCicdCatalog example "1"
226
+ ```
227
+
228
+ :param str resource_name: The name of the resource.
229
+ :param ProjectCicdCatalogArgs args: The arguments to use to populate this resource's properties.
230
+ :param pulumi.ResourceOptions opts: Options for the resource.
231
+ """
232
+ ...
233
+ def __init__(__self__, resource_name: str, *args, **kwargs):
234
+ resource_args, opts = _utilities.get_resource_args_opts(ProjectCicdCatalogArgs, pulumi.ResourceOptions, *args, **kwargs)
235
+ if resource_args is not None:
236
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
237
+ else:
238
+ __self__._internal_init(resource_name, *args, **kwargs)
239
+
240
+ def _internal_init(__self__,
241
+ resource_name: str,
242
+ opts: Optional[pulumi.ResourceOptions] = None,
243
+ enabled: Optional[pulumi.Input[_builtins.bool]] = None,
244
+ keep_settings_on_destroy: Optional[pulumi.Input[_builtins.bool]] = None,
245
+ project: Optional[pulumi.Input[_builtins.str]] = None,
246
+ __props__=None):
247
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
248
+ if not isinstance(opts, pulumi.ResourceOptions):
249
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
250
+ if opts.id is None:
251
+ if __props__ is not None:
252
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
253
+ __props__ = ProjectCicdCatalogArgs.__new__(ProjectCicdCatalogArgs)
254
+
255
+ if enabled is None and not opts.urn:
256
+ raise TypeError("Missing required property 'enabled'")
257
+ __props__.__dict__["enabled"] = enabled
258
+ __props__.__dict__["keep_settings_on_destroy"] = keep_settings_on_destroy
259
+ if project is None and not opts.urn:
260
+ raise TypeError("Missing required property 'project'")
261
+ __props__.__dict__["project"] = project
262
+ super(ProjectCicdCatalog, __self__).__init__(
263
+ 'gitlab:index/projectCicdCatalog:ProjectCicdCatalog',
264
+ resource_name,
265
+ __props__,
266
+ opts)
267
+
268
+ @staticmethod
269
+ def get(resource_name: str,
270
+ id: pulumi.Input[str],
271
+ opts: Optional[pulumi.ResourceOptions] = None,
272
+ enabled: Optional[pulumi.Input[_builtins.bool]] = None,
273
+ keep_settings_on_destroy: Optional[pulumi.Input[_builtins.bool]] = None,
274
+ project: Optional[pulumi.Input[_builtins.str]] = None) -> 'ProjectCicdCatalog':
275
+ """
276
+ Get an existing ProjectCicdCatalog resource's state with the given name, id, and optional extra
277
+ properties used to qualify the lookup.
278
+
279
+ :param str resource_name: The unique name of the resulting resource.
280
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
281
+ :param pulumi.ResourceOptions opts: Options for the resource.
282
+ :param pulumi.Input[_builtins.bool] enabled: Whether the project should be enabled as a CI/CD Catalog resource.
283
+ :param pulumi.Input[_builtins.str] project: The ID or URL-encoded path of the project.
284
+ """
285
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
286
+
287
+ __props__ = _ProjectCicdCatalogState.__new__(_ProjectCicdCatalogState)
288
+
289
+ __props__.__dict__["enabled"] = enabled
290
+ __props__.__dict__["keep_settings_on_destroy"] = keep_settings_on_destroy
291
+ __props__.__dict__["project"] = project
292
+ return ProjectCicdCatalog(resource_name, opts=opts, __props__=__props__)
293
+
294
+ @_builtins.property
295
+ @pulumi.getter
296
+ def enabled(self) -> pulumi.Output[_builtins.bool]:
297
+ """
298
+ Whether the project should be enabled as a CI/CD Catalog resource.
299
+ """
300
+ return pulumi.get(self, "enabled")
301
+
302
+ @_builtins.property
303
+ @pulumi.getter(name="keepSettingsOnDestroy")
304
+ def keep_settings_on_destroy(self) -> pulumi.Output[_builtins.bool]:
305
+ return pulumi.get(self, "keep_settings_on_destroy")
306
+
307
+ @_builtins.property
308
+ @pulumi.getter
309
+ def project(self) -> pulumi.Output[_builtins.str]:
310
+ """
311
+ The ID or URL-encoded path of the project.
312
+ """
313
+ return pulumi.get(self, "project")
314
+
@@ -286,7 +286,7 @@ class ProjectDeployToken(pulumi.CustomResource):
286
286
  """
287
287
  The `ProjectDeployToken` resource allows you to manage the lifecycle of deploy tokens on a project.
288
288
 
289
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/deploy_tokens/)
289
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/deploy_tokens/#project-deploy-tokens)
290
290
 
291
291
  ## Example Usage
292
292
 
@@ -358,7 +358,7 @@ class ProjectDeployToken(pulumi.CustomResource):
358
358
  """
359
359
  The `ProjectDeployToken` resource allows you to manage the lifecycle of deploy tokens on a project.
360
360
 
361
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/deploy_tokens/)
361
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/deploy_tokens/#project-deploy-tokens)
362
362
 
363
363
  ## Example Usage
364
364