pulumi-gitlab 9.8.0a1768501030__py3-none-any.whl → 9.8.0a1768535360__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
pulumi_gitlab/outputs.py CHANGED
@@ -57,6 +57,7 @@ __all__ = [
57
57
  'GetGroupBillableMemberMembershipsMembershipResult',
58
58
  'GetGroupHooksHookResult',
59
59
  'GetGroupMembershipMemberResult',
60
+ 'GetGroupMembershipMemberGroupSamlIdentityResult',
60
61
  'GetGroupProvisionedUsersProvisionedUserResult',
61
62
  'GetGroupSamlLinksSamlLinkResult',
62
63
  'GetGroupServiceAccountAccessTokensAccessTokenResult',
@@ -3863,6 +3864,7 @@ class GetGroupMembershipMemberResult(dict):
3863
3864
  access_level: _builtins.str,
3864
3865
  avatar_url: _builtins.str,
3865
3866
  expires_at: _builtins.str,
3867
+ group_saml_identity: 'outputs.GetGroupMembershipMemberGroupSamlIdentityResult',
3866
3868
  id: _builtins.int,
3867
3869
  name: _builtins.str,
3868
3870
  state: _builtins.str,
@@ -3872,6 +3874,7 @@ class GetGroupMembershipMemberResult(dict):
3872
3874
  :param _builtins.str access_level: The level of access to the group.
3873
3875
  :param _builtins.str avatar_url: The avatar URL of the user.
3874
3876
  :param _builtins.str expires_at: Expiration date for the group membership.
3877
+ :param 'GetGroupMembershipMemberGroupSamlIdentityArgs' group_saml_identity: SAML identity linked to the group member.
3875
3878
  :param _builtins.int id: The unique id assigned to the user by the gitlab server.
3876
3879
  :param _builtins.str name: The name of the user.
3877
3880
  :param _builtins.str state: Whether the user is active or blocked.
@@ -3881,6 +3884,7 @@ class GetGroupMembershipMemberResult(dict):
3881
3884
  pulumi.set(__self__, "access_level", access_level)
3882
3885
  pulumi.set(__self__, "avatar_url", avatar_url)
3883
3886
  pulumi.set(__self__, "expires_at", expires_at)
3887
+ pulumi.set(__self__, "group_saml_identity", group_saml_identity)
3884
3888
  pulumi.set(__self__, "id", id)
3885
3889
  pulumi.set(__self__, "name", name)
3886
3890
  pulumi.set(__self__, "state", state)
@@ -3911,6 +3915,14 @@ class GetGroupMembershipMemberResult(dict):
3911
3915
  """
3912
3916
  return pulumi.get(self, "expires_at")
3913
3917
 
3918
+ @_builtins.property
3919
+ @pulumi.getter(name="groupSamlIdentity")
3920
+ def group_saml_identity(self) -> 'outputs.GetGroupMembershipMemberGroupSamlIdentityResult':
3921
+ """
3922
+ SAML identity linked to the group member.
3923
+ """
3924
+ return pulumi.get(self, "group_saml_identity")
3925
+
3914
3926
  @_builtins.property
3915
3927
  @pulumi.getter
3916
3928
  def id(self) -> _builtins.int:
@@ -3952,6 +3964,46 @@ class GetGroupMembershipMemberResult(dict):
3952
3964
  return pulumi.get(self, "web_url")
3953
3965
 
3954
3966
 
3967
+ @pulumi.output_type
3968
+ class GetGroupMembershipMemberGroupSamlIdentityResult(dict):
3969
+ def __init__(__self__, *,
3970
+ extern_uid: _builtins.str,
3971
+ provider: _builtins.str,
3972
+ saml_provider_id: _builtins.int):
3973
+ """
3974
+ :param _builtins.str extern_uid: The external UID of the group SAML identity.
3975
+ :param _builtins.str provider: The provider of the SAML identity.
3976
+ :param _builtins.int saml_provider_id: The ID of the SAML provider.
3977
+ """
3978
+ pulumi.set(__self__, "extern_uid", extern_uid)
3979
+ pulumi.set(__self__, "provider", provider)
3980
+ pulumi.set(__self__, "saml_provider_id", saml_provider_id)
3981
+
3982
+ @_builtins.property
3983
+ @pulumi.getter(name="externUid")
3984
+ def extern_uid(self) -> _builtins.str:
3985
+ """
3986
+ The external UID of the group SAML identity.
3987
+ """
3988
+ return pulumi.get(self, "extern_uid")
3989
+
3990
+ @_builtins.property
3991
+ @pulumi.getter
3992
+ def provider(self) -> _builtins.str:
3993
+ """
3994
+ The provider of the SAML identity.
3995
+ """
3996
+ return pulumi.get(self, "provider")
3997
+
3998
+ @_builtins.property
3999
+ @pulumi.getter(name="samlProviderId")
4000
+ def saml_provider_id(self) -> _builtins.int:
4001
+ """
4002
+ The ID of the SAML provider.
4003
+ """
4004
+ return pulumi.get(self, "saml_provider_id")
4005
+
4006
+
3955
4007
  @pulumi.output_type
3956
4008
  class GetGroupProvisionedUsersProvisionedUserResult(dict):
3957
4009
  def __init__(__self__, *,
@@ -6492,7 +6544,7 @@ class GetProjectHooksHookResult(dict):
6492
6544
 
6493
6545
  @_builtins.property
6494
6546
  @pulumi.getter
6495
- @_utilities.deprecated("""The token is only available on resource creation, not in this datasource. It will always be blank.""")
6547
+ @_utilities.deprecated("""The token is only available on resource creation, not in this datasource. It will always be blank. To be removed in 19.0.""")
6496
6548
  def token(self) -> _builtins.str:
6497
6549
  """
6498
6550
  A token to present when invoking the hook. The token is only available on resource creation, not in this datasource. It will always be blank. Will be removed in 19.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
+