pulumi-azuredevops 2.16.0a1710156155__py3-none-any.whl → 3.6.0a1736832240__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 (188) hide show
  1. pulumi_azuredevops/__init__.py +123 -174
  2. pulumi_azuredevops/_inputs.py +1742 -110
  3. pulumi_azuredevops/_utilities.py +41 -5
  4. pulumi_azuredevops/area_permissions.py +9 -6
  5. pulumi_azuredevops/branch_policy_auto_reviewers.py +52 -49
  6. pulumi_azuredevops/branch_policy_build_validation.py +86 -79
  7. pulumi_azuredevops/branch_policy_comment_resolution.py +60 -57
  8. pulumi_azuredevops/branch_policy_merge_types.py +68 -65
  9. pulumi_azuredevops/branch_policy_min_reviewers.py +72 -71
  10. pulumi_azuredevops/branch_policy_status_check.py +66 -61
  11. pulumi_azuredevops/branch_policy_work_item_linking.py +60 -57
  12. pulumi_azuredevops/build_definition.py +380 -200
  13. pulumi_azuredevops/build_definition_permissions.py +186 -165
  14. pulumi_azuredevops/build_folder.py +13 -10
  15. pulumi_azuredevops/build_folder_permissions.py +33 -32
  16. pulumi_azuredevops/check_approval.py +49 -16
  17. pulumi_azuredevops/check_branch_control.py +139 -110
  18. pulumi_azuredevops/check_business_hours.py +137 -108
  19. pulumi_azuredevops/check_exclusive_lock.py +107 -30
  20. pulumi_azuredevops/check_required_template.py +96 -67
  21. pulumi_azuredevops/config/__init__.pyi +87 -0
  22. pulumi_azuredevops/config/vars.py +125 -0
  23. pulumi_azuredevops/elastic_pool.py +78 -26
  24. pulumi_azuredevops/environment.py +17 -10
  25. pulumi_azuredevops/environment_resource_kubernetes.py +534 -0
  26. pulumi_azuredevops/feed.py +372 -0
  27. pulumi_azuredevops/feed_permission.py +415 -0
  28. pulumi_azuredevops/get_agent_queue.py +28 -19
  29. pulumi_azuredevops/get_area.py +28 -15
  30. pulumi_azuredevops/get_build_definition.py +32 -15
  31. pulumi_azuredevops/get_client_config.py +12 -9
  32. pulumi_azuredevops/get_environment.py +72 -5
  33. pulumi_azuredevops/get_feed.py +186 -0
  34. pulumi_azuredevops/get_git_repository.py +39 -10
  35. pulumi_azuredevops/get_group.py +55 -22
  36. pulumi_azuredevops/get_groups.py +18 -9
  37. pulumi_azuredevops/get_identity_group.py +152 -0
  38. pulumi_azuredevops/get_identity_groups.py +140 -0
  39. pulumi_azuredevops/get_identity_users.py +122 -0
  40. pulumi_azuredevops/get_iteration.py +24 -11
  41. pulumi_azuredevops/get_pool.py +16 -9
  42. pulumi_azuredevops/get_pools.py +12 -9
  43. pulumi_azuredevops/get_project.py +22 -10
  44. pulumi_azuredevops/get_projects.py +16 -9
  45. pulumi_azuredevops/get_repositories.py +22 -9
  46. pulumi_azuredevops/get_securityrole_definitions.py +141 -0
  47. pulumi_azuredevops/get_service_endpoint_azure_rm.py +70 -26
  48. pulumi_azuredevops/get_service_endpoint_github.py +19 -13
  49. pulumi_azuredevops/get_serviceendpoint_azurecr.py +31 -11
  50. pulumi_azuredevops/get_serviceendpoint_bitbucket.py +219 -0
  51. pulumi_azuredevops/get_serviceendpoint_npm.py +22 -11
  52. pulumi_azuredevops/get_serviceendpoint_sonarcloud.py +21 -11
  53. pulumi_azuredevops/get_team.py +29 -15
  54. pulumi_azuredevops/get_teams.py +16 -9
  55. pulumi_azuredevops/get_users.py +26 -87
  56. pulumi_azuredevops/get_variable_group.py +27 -17
  57. pulumi_azuredevops/git.py +57 -99
  58. pulumi_azuredevops/git_permissions.py +78 -75
  59. pulumi_azuredevops/git_repository_branch.py +29 -20
  60. pulumi_azuredevops/git_repository_file.py +23 -18
  61. pulumi_azuredevops/group.py +43 -16
  62. pulumi_azuredevops/group_entitlement.py +5 -8
  63. pulumi_azuredevops/group_membership.py +57 -30
  64. pulumi_azuredevops/iterative_permissions.py +9 -6
  65. pulumi_azuredevops/library_permissions.py +451 -0
  66. pulumi_azuredevops/outputs.py +460 -56
  67. pulumi_azuredevops/pipeline_authorization.py +136 -47
  68. pulumi_azuredevops/pool.py +7 -6
  69. pulumi_azuredevops/project.py +19 -18
  70. pulumi_azuredevops/project_features.py +9 -8
  71. pulumi_azuredevops/project_permissions.py +9 -6
  72. pulumi_azuredevops/project_pipeline_settings.py +15 -12
  73. pulumi_azuredevops/provider.py +491 -2
  74. pulumi_azuredevops/pulumi-plugin.json +2 -1
  75. pulumi_azuredevops/queue.py +23 -24
  76. pulumi_azuredevops/repository_policy_author_email_pattern.py +37 -34
  77. pulumi_azuredevops/repository_policy_case_enforcement.py +37 -34
  78. pulumi_azuredevops/repository_policy_check_credentials.py +37 -34
  79. pulumi_azuredevops/repository_policy_file_path_pattern.py +31 -28
  80. pulumi_azuredevops/repository_policy_max_file_size.py +44 -41
  81. pulumi_azuredevops/repository_policy_max_path_length.py +37 -34
  82. pulumi_azuredevops/repository_policy_reserved_names.py +37 -34
  83. pulumi_azuredevops/resource_authorization.py +23 -20
  84. pulumi_azuredevops/securityrole_assignment.py +295 -0
  85. pulumi_azuredevops/service_endpoint_artifactory.py +49 -48
  86. pulumi_azuredevops/service_endpoint_aws.py +99 -51
  87. pulumi_azuredevops/service_endpoint_azure_dev_ops.py +17 -14
  88. pulumi_azuredevops/service_endpoint_azure_ecr.py +275 -33
  89. pulumi_azuredevops/service_endpoint_azure_rm.py +236 -114
  90. pulumi_azuredevops/service_endpoint_bit_bucket.py +19 -18
  91. pulumi_azuredevops/service_endpoint_docker_registry.py +17 -16
  92. pulumi_azuredevops/service_endpoint_generic.py +19 -20
  93. pulumi_azuredevops/service_endpoint_generic_git.py +17 -14
  94. pulumi_azuredevops/service_endpoint_git_hub.py +57 -60
  95. pulumi_azuredevops/service_endpoint_git_hub_enterprise.py +26 -23
  96. pulumi_azuredevops/{serviceendpoint/bit_bucket.py → service_endpoint_git_lab.py} +147 -100
  97. pulumi_azuredevops/service_endpoint_kubernetes.py +160 -17
  98. pulumi_azuredevops/service_endpoint_npm.py +17 -14
  99. pulumi_azuredevops/service_endpoint_pipeline.py +28 -25
  100. pulumi_azuredevops/service_endpoint_service_fabric.py +42 -95
  101. pulumi_azuredevops/service_endpoint_sonar_cloud.py +17 -14
  102. pulumi_azuredevops/service_endpoint_sonar_qube.py +17 -14
  103. pulumi_azuredevops/service_endpoint_ssh.py +17 -14
  104. pulumi_azuredevops/serviceendpoint_argocd.py +51 -50
  105. pulumi_azuredevops/serviceendpoint_azure_service_bus.py +429 -0
  106. pulumi_azuredevops/serviceendpoint_dynamics_lifecycle_services.py +579 -0
  107. pulumi_azuredevops/serviceendpoint_externaltfs.py +10 -5
  108. pulumi_azuredevops/serviceendpoint_gcp_terraform.py +17 -14
  109. pulumi_azuredevops/serviceendpoint_incomingwebhook.py +17 -14
  110. pulumi_azuredevops/serviceendpoint_jenkins.py +15 -12
  111. pulumi_azuredevops/serviceendpoint_jfrog_artifactory_v2.py +53 -52
  112. pulumi_azuredevops/serviceendpoint_jfrog_distribution_v2.py +53 -52
  113. pulumi_azuredevops/serviceendpoint_jfrog_platform_v2.py +53 -52
  114. pulumi_azuredevops/serviceendpoint_jfrog_xray_v2.py +53 -52
  115. pulumi_azuredevops/serviceendpoint_maven.py +49 -48
  116. pulumi_azuredevops/serviceendpoint_nexus.py +15 -12
  117. pulumi_azuredevops/serviceendpoint_nuget.py +17 -14
  118. pulumi_azuredevops/serviceendpoint_octopusdeploy.py +17 -14
  119. pulumi_azuredevops/serviceendpoint_permissions.py +21 -18
  120. pulumi_azuredevops/serviceendpoint_snyk.py +429 -0
  121. pulumi_azuredevops/serviceendpoint_visualstudiomarketplace.py +543 -0
  122. pulumi_azuredevops/servicehook_permissions.py +9 -6
  123. pulumi_azuredevops/servicehook_storage_queue_pipelines.py +55 -48
  124. pulumi_azuredevops/tagging_permissions.py +9 -6
  125. pulumi_azuredevops/team.py +21 -16
  126. pulumi_azuredevops/team_administrators.py +19 -12
  127. pulumi_azuredevops/team_members.py +19 -12
  128. pulumi_azuredevops/user.py +27 -8
  129. pulumi_azuredevops/variable_group.py +91 -88
  130. pulumi_azuredevops/variable_group_permissions.py +517 -0
  131. pulumi_azuredevops/wiki.py +509 -0
  132. pulumi_azuredevops/wiki_page.py +377 -0
  133. pulumi_azuredevops/work_item_query_permissions.py +17 -18
  134. pulumi_azuredevops/workitem.py +25 -24
  135. {pulumi_azuredevops-2.16.0a1710156155.dist-info → pulumi_azuredevops-3.6.0a1736832240.dist-info}/METADATA +9 -8
  136. pulumi_azuredevops-3.6.0a1736832240.dist-info/RECORD +140 -0
  137. {pulumi_azuredevops-2.16.0a1710156155.dist-info → pulumi_azuredevops-3.6.0a1736832240.dist-info}/WHEEL +1 -1
  138. pulumi_azuredevops/agent/__init__.py +0 -12
  139. pulumi_azuredevops/agent/get_pool.py +0 -155
  140. pulumi_azuredevops/agent/get_pools.py +0 -120
  141. pulumi_azuredevops/agent/outputs.py +0 -73
  142. pulumi_azuredevops/agent/pool.py +0 -342
  143. pulumi_azuredevops/agent/queue.py +0 -376
  144. pulumi_azuredevops/build/__init__.py +0 -10
  145. pulumi_azuredevops/build/_inputs.py +0 -1164
  146. pulumi_azuredevops/build/build_definition.py +0 -987
  147. pulumi_azuredevops/build/outputs.py +0 -1170
  148. pulumi_azuredevops/core/__init__.py +0 -13
  149. pulumi_azuredevops/core/get_client_config.py +0 -102
  150. pulumi_azuredevops/core/get_project.py +0 -194
  151. pulumi_azuredevops/core/get_projects.py +0 -166
  152. pulumi_azuredevops/core/outputs.py +0 -70
  153. pulumi_azuredevops/core/project.py +0 -538
  154. pulumi_azuredevops/core/project_features.py +0 -303
  155. pulumi_azuredevops/entitlement/__init__.py +0 -8
  156. pulumi_azuredevops/entitlement/user.py +0 -429
  157. pulumi_azuredevops/identities/__init__.py +0 -13
  158. pulumi_azuredevops/identities/_inputs.py +0 -42
  159. pulumi_azuredevops/identities/get_group.py +0 -185
  160. pulumi_azuredevops/identities/get_users.py +0 -257
  161. pulumi_azuredevops/identities/group.py +0 -632
  162. pulumi_azuredevops/identities/group_membership.py +0 -333
  163. pulumi_azuredevops/identities/outputs.py +0 -124
  164. pulumi_azuredevops/pipeline/__init__.py +0 -10
  165. pulumi_azuredevops/pipeline/_inputs.py +0 -175
  166. pulumi_azuredevops/pipeline/outputs.py +0 -175
  167. pulumi_azuredevops/pipeline/variable_group.py +0 -594
  168. pulumi_azuredevops/policy/__init__.py +0 -11
  169. pulumi_azuredevops/policy/_inputs.py +0 -382
  170. pulumi_azuredevops/policy/branch_policy_build_validation.py +0 -424
  171. pulumi_azuredevops/policy/branch_policy_min_reviewers.py +0 -406
  172. pulumi_azuredevops/policy/outputs.py +0 -397
  173. pulumi_azuredevops/repository/__init__.py +0 -11
  174. pulumi_azuredevops/repository/_inputs.py +0 -85
  175. pulumi_azuredevops/repository/get_repositories.py +0 -177
  176. pulumi_azuredevops/repository/git.py +0 -627
  177. pulumi_azuredevops/repository/outputs.py +0 -199
  178. pulumi_azuredevops/security/__init__.py +0 -8
  179. pulumi_azuredevops/security/resource_authorization.py +0 -404
  180. pulumi_azuredevops/serviceendpoint/__init__.py +0 -14
  181. pulumi_azuredevops/serviceendpoint/_inputs.py +0 -341
  182. pulumi_azuredevops/serviceendpoint/azure_rm.py +0 -1140
  183. pulumi_azuredevops/serviceendpoint/docker_registry.py +0 -595
  184. pulumi_azuredevops/serviceendpoint/git_hub.py +0 -489
  185. pulumi_azuredevops/serviceendpoint/kubernetes.py +0 -523
  186. pulumi_azuredevops/serviceendpoint/outputs.py +0 -370
  187. pulumi_azuredevops-2.16.0a1710156155.dist-info/RECORD +0 -171
  188. {pulumi_azuredevops-2.16.0a1710156155.dist-info → pulumi_azuredevops-3.6.0a1736832240.dist-info}/top_level.txt +0 -0
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
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
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['GroupArgs', 'Group']
@@ -122,6 +127,7 @@ class _GroupState:
122
127
  descriptor: Optional[pulumi.Input[str]] = None,
123
128
  display_name: Optional[pulumi.Input[str]] = None,
124
129
  domain: Optional[pulumi.Input[str]] = None,
130
+ group_id: Optional[pulumi.Input[str]] = None,
125
131
  mail: Optional[pulumi.Input[str]] = None,
126
132
  members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
127
133
  origin: Optional[pulumi.Input[str]] = None,
@@ -136,6 +142,7 @@ class _GroupState:
136
142
  :param pulumi.Input[str] descriptor: The identity (subject) descriptor of the Group.
137
143
  :param pulumi.Input[str] display_name: The name of a new Azure DevOps group that is not backed by an external provider. The `origin_id` and `mail` arguments cannot be used simultaneously with `display_name`.
138
144
  :param pulumi.Input[str] domain: This represents the name of the container of origin for a graph member.
145
+ :param pulumi.Input[str] group_id: The ID of the Group.
139
146
  :param pulumi.Input[str] mail: The mail address as a reference to an existing group from an external AD or AAD backed provider. The `scope`, `origin_id` and `display_name` arguments cannot be used simultaneously with `mail`.
140
147
  :param pulumi.Input[Sequence[pulumi.Input[str]]] members: > NOTE: It's possible to define group members both within the `Group` resource via the members block and by using the `GroupMembership` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
141
148
  :param pulumi.Input[str] origin: The type of source provider for the origin identifier (ex:AD, AAD, MSA)
@@ -153,6 +160,8 @@ class _GroupState:
153
160
  pulumi.set(__self__, "display_name", display_name)
154
161
  if domain is not None:
155
162
  pulumi.set(__self__, "domain", domain)
163
+ if group_id is not None:
164
+ pulumi.set(__self__, "group_id", group_id)
156
165
  if mail is not None:
157
166
  pulumi.set(__self__, "mail", mail)
158
167
  if members is not None:
@@ -218,6 +227,18 @@ class _GroupState:
218
227
  def domain(self, value: Optional[pulumi.Input[str]]):
219
228
  pulumi.set(self, "domain", value)
220
229
 
230
+ @property
231
+ @pulumi.getter(name="groupId")
232
+ def group_id(self) -> Optional[pulumi.Input[str]]:
233
+ """
234
+ The ID of the Group.
235
+ """
236
+ return pulumi.get(self, "group_id")
237
+
238
+ @group_id.setter
239
+ def group_id(self, value: Optional[pulumi.Input[str]]):
240
+ pulumi.set(self, "group_id", value)
241
+
221
242
  @property
222
243
  @pulumi.getter
223
244
  def mail(self) -> Optional[pulumi.Input[str]]:
@@ -332,18 +353,17 @@ class Group(pulumi.CustomResource):
332
353
 
333
354
  ## Example Usage
334
355
 
335
- <!--Start PulumiCodeChooser -->
336
356
  ```python
337
357
  import pulumi
338
358
  import pulumi_azuredevops as azuredevops
339
359
 
340
- example_project = azuredevops.Project("exampleProject")
341
- example_readers = azuredevops.get_group_output(project_id=example_project.id,
360
+ example = azuredevops.Project("example", name="Example Project")
361
+ example_readers = azuredevops.get_group_output(project_id=example.id,
342
362
  name="Readers")
343
- example_contributors = azuredevops.get_group_output(project_id=example_project.id,
363
+ example_contributors = azuredevops.get_group_output(project_id=example.id,
344
364
  name="Contributors")
345
- example_group = azuredevops.Group("exampleGroup",
346
- scope=example_project.id,
365
+ example_group = azuredevops.Group("example",
366
+ scope=example.id,
347
367
  display_name="Example group",
348
368
  description="Example description",
349
369
  members=[
@@ -351,7 +371,6 @@ class Group(pulumi.CustomResource):
351
371
  example_contributors.descriptor,
352
372
  ])
353
373
  ```
354
- <!--End PulumiCodeChooser -->
355
374
 
356
375
  ## Relevant Links
357
376
 
@@ -389,18 +408,17 @@ class Group(pulumi.CustomResource):
389
408
 
390
409
  ## Example Usage
391
410
 
392
- <!--Start PulumiCodeChooser -->
393
411
  ```python
394
412
  import pulumi
395
413
  import pulumi_azuredevops as azuredevops
396
414
 
397
- example_project = azuredevops.Project("exampleProject")
398
- example_readers = azuredevops.get_group_output(project_id=example_project.id,
415
+ example = azuredevops.Project("example", name="Example Project")
416
+ example_readers = azuredevops.get_group_output(project_id=example.id,
399
417
  name="Readers")
400
- example_contributors = azuredevops.get_group_output(project_id=example_project.id,
418
+ example_contributors = azuredevops.get_group_output(project_id=example.id,
401
419
  name="Contributors")
402
- example_group = azuredevops.Group("exampleGroup",
403
- scope=example_project.id,
420
+ example_group = azuredevops.Group("example",
421
+ scope=example.id,
404
422
  display_name="Example group",
405
423
  description="Example description",
406
424
  members=[
@@ -408,7 +426,6 @@ class Group(pulumi.CustomResource):
408
426
  example_contributors.descriptor,
409
427
  ])
410
428
  ```
411
- <!--End PulumiCodeChooser -->
412
429
 
413
430
  ## Relevant Links
414
431
 
@@ -464,12 +481,11 @@ class Group(pulumi.CustomResource):
464
481
  __props__.__dict__["scope"] = scope
465
482
  __props__.__dict__["descriptor"] = None
466
483
  __props__.__dict__["domain"] = None
484
+ __props__.__dict__["group_id"] = None
467
485
  __props__.__dict__["origin"] = None
468
486
  __props__.__dict__["principal_name"] = None
469
487
  __props__.__dict__["subject_kind"] = None
470
488
  __props__.__dict__["url"] = None
471
- alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="azuredevops:Identities/group:Group")])
472
- opts = pulumi.ResourceOptions.merge(opts, alias_opts)
473
489
  super(Group, __self__).__init__(
474
490
  'azuredevops:index/group:Group',
475
491
  resource_name,
@@ -484,6 +500,7 @@ class Group(pulumi.CustomResource):
484
500
  descriptor: Optional[pulumi.Input[str]] = None,
485
501
  display_name: Optional[pulumi.Input[str]] = None,
486
502
  domain: Optional[pulumi.Input[str]] = None,
503
+ group_id: Optional[pulumi.Input[str]] = None,
487
504
  mail: Optional[pulumi.Input[str]] = None,
488
505
  members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
489
506
  origin: Optional[pulumi.Input[str]] = None,
@@ -503,6 +520,7 @@ class Group(pulumi.CustomResource):
503
520
  :param pulumi.Input[str] descriptor: The identity (subject) descriptor of the Group.
504
521
  :param pulumi.Input[str] display_name: The name of a new Azure DevOps group that is not backed by an external provider. The `origin_id` and `mail` arguments cannot be used simultaneously with `display_name`.
505
522
  :param pulumi.Input[str] domain: This represents the name of the container of origin for a graph member.
523
+ :param pulumi.Input[str] group_id: The ID of the Group.
506
524
  :param pulumi.Input[str] mail: The mail address as a reference to an existing group from an external AD or AAD backed provider. The `scope`, `origin_id` and `display_name` arguments cannot be used simultaneously with `mail`.
507
525
  :param pulumi.Input[Sequence[pulumi.Input[str]]] members: > NOTE: It's possible to define group members both within the `Group` resource via the members block and by using the `GroupMembership` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
508
526
  :param pulumi.Input[str] origin: The type of source provider for the origin identifier (ex:AD, AAD, MSA)
@@ -520,6 +538,7 @@ class Group(pulumi.CustomResource):
520
538
  __props__.__dict__["descriptor"] = descriptor
521
539
  __props__.__dict__["display_name"] = display_name
522
540
  __props__.__dict__["domain"] = domain
541
+ __props__.__dict__["group_id"] = group_id
523
542
  __props__.__dict__["mail"] = mail
524
543
  __props__.__dict__["members"] = members
525
544
  __props__.__dict__["origin"] = origin
@@ -562,6 +581,14 @@ class Group(pulumi.CustomResource):
562
581
  """
563
582
  return pulumi.get(self, "domain")
564
583
 
584
+ @property
585
+ @pulumi.getter(name="groupId")
586
+ def group_id(self) -> pulumi.Output[str]:
587
+ """
588
+ The ID of the Group.
589
+ """
590
+ return pulumi.get(self, "group_id")
591
+
565
592
  @property
566
593
  @pulumi.getter
567
594
  def mail(self) -> pulumi.Output[str]:
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
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
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['GroupEntitlementArgs', 'GroupEntitlement']
@@ -244,17 +249,14 @@ class GroupEntitlement(pulumi.CustomResource):
244
249
  ## Example Usage
245
250
 
246
251
  ### With an Azure DevOps local group managed by this resource
247
- <!--Start PulumiCodeChooser -->
248
252
  ```python
249
253
  import pulumi
250
254
  import pulumi_azuredevops as azuredevops
251
255
 
252
256
  example = azuredevops.GroupEntitlement("example", display_name="Group Name")
253
257
  ```
254
- <!--End PulumiCodeChooser -->
255
258
 
256
259
  ### With group origin ID
257
- <!--Start PulumiCodeChooser -->
258
260
  ```python
259
261
  import pulumi
260
262
  import pulumi_azuredevops as azuredevops
@@ -263,7 +265,6 @@ class GroupEntitlement(pulumi.CustomResource):
263
265
  origin="aad",
264
266
  origin_id="00000000-0000-0000-0000-000000000000")
265
267
  ```
266
- <!--End PulumiCodeChooser -->
267
268
 
268
269
  ## Relevant Links
269
270
 
@@ -306,17 +307,14 @@ class GroupEntitlement(pulumi.CustomResource):
306
307
  ## Example Usage
307
308
 
308
309
  ### With an Azure DevOps local group managed by this resource
309
- <!--Start PulumiCodeChooser -->
310
310
  ```python
311
311
  import pulumi
312
312
  import pulumi_azuredevops as azuredevops
313
313
 
314
314
  example = azuredevops.GroupEntitlement("example", display_name="Group Name")
315
315
  ```
316
- <!--End PulumiCodeChooser -->
317
316
 
318
317
  ### With group origin ID
319
- <!--Start PulumiCodeChooser -->
320
318
  ```python
321
319
  import pulumi
322
320
  import pulumi_azuredevops as azuredevops
@@ -325,7 +323,6 @@ class GroupEntitlement(pulumi.CustomResource):
325
323
  origin="aad",
326
324
  origin_id="00000000-0000-0000-0000-000000000000")
327
325
  ```
328
- <!--End PulumiCodeChooser -->
329
326
 
330
327
  ## Relevant Links
331
328
 
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
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
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['GroupMembershipArgs', 'GroupMembership']
@@ -21,11 +26,15 @@ class GroupMembershipArgs:
21
26
  The set of arguments for constructing a GroupMembership resource.
22
27
  :param pulumi.Input[str] group: The descriptor of the group being managed.
23
28
  :param pulumi.Input[Sequence[pulumi.Input[str]]] members: A list of user or group descriptors that will become members of the group.
24
- > NOTE: It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
29
+
30
+ > **NOTE** It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
31
+
32
+ > **NOTE** The `members` uses `descriptor` as the identifier not Resource ID or others.
25
33
  :param pulumi.Input[str] mode: The mode how the resource manages group members.
26
34
  - `mode == add`: the resource will ensure that all specified members will be part of the referenced group
27
35
  - `mode == overwrite`: the resource will replace all existing members with the members specified within the `members` block
28
- > NOTE: To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
36
+
37
+ > **NOTE** To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
29
38
  """
30
39
  pulumi.set(__self__, "group", group)
31
40
  pulumi.set(__self__, "members", members)
@@ -49,7 +58,10 @@ class GroupMembershipArgs:
49
58
  def members(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
50
59
  """
51
60
  A list of user or group descriptors that will become members of the group.
52
- > NOTE: It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
61
+
62
+ > **NOTE** It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
63
+
64
+ > **NOTE** The `members` uses `descriptor` as the identifier not Resource ID or others.
53
65
  """
54
66
  return pulumi.get(self, "members")
55
67
 
@@ -64,7 +76,8 @@ class GroupMembershipArgs:
64
76
  The mode how the resource manages group members.
65
77
  - `mode == add`: the resource will ensure that all specified members will be part of the referenced group
66
78
  - `mode == overwrite`: the resource will replace all existing members with the members specified within the `members` block
67
- > NOTE: To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
79
+
80
+ > **NOTE** To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
68
81
  """
69
82
  return pulumi.get(self, "mode")
70
83
 
@@ -83,11 +96,15 @@ class _GroupMembershipState:
83
96
  Input properties used for looking up and filtering GroupMembership resources.
84
97
  :param pulumi.Input[str] group: The descriptor of the group being managed.
85
98
  :param pulumi.Input[Sequence[pulumi.Input[str]]] members: A list of user or group descriptors that will become members of the group.
86
- > NOTE: It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
99
+
100
+ > **NOTE** It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
101
+
102
+ > **NOTE** The `members` uses `descriptor` as the identifier not Resource ID or others.
87
103
  :param pulumi.Input[str] mode: The mode how the resource manages group members.
88
104
  - `mode == add`: the resource will ensure that all specified members will be part of the referenced group
89
105
  - `mode == overwrite`: the resource will replace all existing members with the members specified within the `members` block
90
- > NOTE: To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
106
+
107
+ > **NOTE** To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
91
108
  """
92
109
  if group is not None:
93
110
  pulumi.set(__self__, "group", group)
@@ -113,7 +130,10 @@ class _GroupMembershipState:
113
130
  def members(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
114
131
  """
115
132
  A list of user or group descriptors that will become members of the group.
116
- > NOTE: It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
133
+
134
+ > **NOTE** It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
135
+
136
+ > **NOTE** The `members` uses `descriptor` as the identifier not Resource ID or others.
117
137
  """
118
138
  return pulumi.get(self, "members")
119
139
 
@@ -128,7 +148,8 @@ class _GroupMembershipState:
128
148
  The mode how the resource manages group members.
129
149
  - `mode == add`: the resource will ensure that all specified members will be part of the referenced group
130
150
  - `mode == overwrite`: the resource will replace all existing members with the members specified within the `members` block
131
- > NOTE: To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
151
+
152
+ > **NOTE** To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
132
153
  """
133
154
  return pulumi.get(self, "mode")
134
155
 
@@ -151,20 +172,18 @@ class GroupMembership(pulumi.CustomResource):
151
172
 
152
173
  ## Example Usage
153
174
 
154
- <!--Start PulumiCodeChooser -->
155
175
  ```python
156
176
  import pulumi
157
177
  import pulumi_azuredevops as azuredevops
158
178
 
159
- example_project = azuredevops.Project("exampleProject")
160
- example_user = azuredevops.User("exampleUser", principal_name="foo@contoso.com")
161
- example_group = azuredevops.get_group_output(project_id=example_project.id,
179
+ example_project = azuredevops.Project("example", name="Example Project")
180
+ example_user = azuredevops.User("example", principal_name="foo@contoso.com")
181
+ example = azuredevops.get_group_output(project_id=example_project.id,
162
182
  name="Build Administrators")
163
- example_group_membership = azuredevops.GroupMembership("exampleGroupMembership",
164
- group=example_group.descriptor,
183
+ example_group_membership = azuredevops.GroupMembership("example",
184
+ group=example.descriptor,
165
185
  members=[example_user.descriptor])
166
186
  ```
167
- <!--End PulumiCodeChooser -->
168
187
 
169
188
  ## Relevant Links
170
189
 
@@ -182,11 +201,15 @@ class GroupMembership(pulumi.CustomResource):
182
201
  :param pulumi.ResourceOptions opts: Options for the resource.
183
202
  :param pulumi.Input[str] group: The descriptor of the group being managed.
184
203
  :param pulumi.Input[Sequence[pulumi.Input[str]]] members: A list of user or group descriptors that will become members of the group.
185
- > NOTE: It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
204
+
205
+ > **NOTE** It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
206
+
207
+ > **NOTE** The `members` uses `descriptor` as the identifier not Resource ID or others.
186
208
  :param pulumi.Input[str] mode: The mode how the resource manages group members.
187
209
  - `mode == add`: the resource will ensure that all specified members will be part of the referenced group
188
210
  - `mode == overwrite`: the resource will replace all existing members with the members specified within the `members` block
189
- > NOTE: To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
211
+
212
+ > **NOTE** To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
190
213
  """
191
214
  ...
192
215
  @overload
@@ -199,20 +222,18 @@ class GroupMembership(pulumi.CustomResource):
199
222
 
200
223
  ## Example Usage
201
224
 
202
- <!--Start PulumiCodeChooser -->
203
225
  ```python
204
226
  import pulumi
205
227
  import pulumi_azuredevops as azuredevops
206
228
 
207
- example_project = azuredevops.Project("exampleProject")
208
- example_user = azuredevops.User("exampleUser", principal_name="foo@contoso.com")
209
- example_group = azuredevops.get_group_output(project_id=example_project.id,
229
+ example_project = azuredevops.Project("example", name="Example Project")
230
+ example_user = azuredevops.User("example", principal_name="foo@contoso.com")
231
+ example = azuredevops.get_group_output(project_id=example_project.id,
210
232
  name="Build Administrators")
211
- example_group_membership = azuredevops.GroupMembership("exampleGroupMembership",
212
- group=example_group.descriptor,
233
+ example_group_membership = azuredevops.GroupMembership("example",
234
+ group=example.descriptor,
213
235
  members=[example_user.descriptor])
214
236
  ```
215
- <!--End PulumiCodeChooser -->
216
237
 
217
238
  ## Relevant Links
218
239
 
@@ -260,8 +281,6 @@ class GroupMembership(pulumi.CustomResource):
260
281
  raise TypeError("Missing required property 'members'")
261
282
  __props__.__dict__["members"] = members
262
283
  __props__.__dict__["mode"] = mode
263
- alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="azuredevops:Identities/groupMembership:GroupMembership")])
264
- opts = pulumi.ResourceOptions.merge(opts, alias_opts)
265
284
  super(GroupMembership, __self__).__init__(
266
285
  'azuredevops:index/groupMembership:GroupMembership',
267
286
  resource_name,
@@ -284,11 +303,15 @@ class GroupMembership(pulumi.CustomResource):
284
303
  :param pulumi.ResourceOptions opts: Options for the resource.
285
304
  :param pulumi.Input[str] group: The descriptor of the group being managed.
286
305
  :param pulumi.Input[Sequence[pulumi.Input[str]]] members: A list of user or group descriptors that will become members of the group.
287
- > NOTE: It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
306
+
307
+ > **NOTE** It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
308
+
309
+ > **NOTE** The `members` uses `descriptor` as the identifier not Resource ID or others.
288
310
  :param pulumi.Input[str] mode: The mode how the resource manages group members.
289
311
  - `mode == add`: the resource will ensure that all specified members will be part of the referenced group
290
312
  - `mode == overwrite`: the resource will replace all existing members with the members specified within the `members` block
291
- > NOTE: To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
313
+
314
+ > **NOTE** To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
292
315
  """
293
316
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
294
317
 
@@ -312,7 +335,10 @@ class GroupMembership(pulumi.CustomResource):
312
335
  def members(self) -> pulumi.Output[Sequence[str]]:
313
336
  """
314
337
  A list of user or group descriptors that will become members of the group.
315
- > NOTE: It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
338
+
339
+ > **NOTE** It's possible to define group members both within the `GroupMembership resource` via the members block and by using the `Group` resource. However it's not possible to use both methods to manage group members, since there'll be conflicts.
340
+
341
+ > **NOTE** The `members` uses `descriptor` as the identifier not Resource ID or others.
316
342
  """
317
343
  return pulumi.get(self, "members")
318
344
 
@@ -323,7 +349,8 @@ class GroupMembership(pulumi.CustomResource):
323
349
  The mode how the resource manages group members.
324
350
  - `mode == add`: the resource will ensure that all specified members will be part of the referenced group
325
351
  - `mode == overwrite`: the resource will replace all existing members with the members specified within the `members` block
326
- > NOTE: To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
352
+
353
+ > **NOTE** To clear all members from a group, specify an empty list of descriptors in the `members` attribute and set the `mode` member to `overwrite`.
327
354
  """
328
355
  return pulumi.get(self, "mode")
329
356
 
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
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
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['IterativePermissionsArgs', 'IterativePermissions']
@@ -235,16 +240,16 @@ class IterativePermissions(pulumi.CustomResource):
235
240
 
236
241
  ## Example Usage
237
242
 
238
- <!--Start PulumiCodeChooser -->
239
243
  ```python
240
244
  import pulumi
241
245
  import pulumi_azuredevops as azuredevops
242
246
 
243
247
  example = azuredevops.Project("example",
248
+ name="Example Project",
244
249
  work_item_template="Agile",
245
250
  version_control="Git",
246
251
  visibility="private",
247
- description="Managed by Terraform")
252
+ description="Managed by Pulumi")
248
253
  example_readers = azuredevops.get_group_output(project_id=example.id,
249
254
  name="Readers")
250
255
  example_root_permissions = azuredevops.IterativePermissions("example-root-permissions",
@@ -265,7 +270,6 @@ class IterativePermissions(pulumi.CustomResource):
265
270
  "DELETE": "Allow",
266
271
  })
267
272
  ```
268
- <!--End PulumiCodeChooser -->
269
273
 
270
274
  ## Relevant Links
271
275
 
@@ -312,16 +316,16 @@ class IterativePermissions(pulumi.CustomResource):
312
316
 
313
317
  ## Example Usage
314
318
 
315
- <!--Start PulumiCodeChooser -->
316
319
  ```python
317
320
  import pulumi
318
321
  import pulumi_azuredevops as azuredevops
319
322
 
320
323
  example = azuredevops.Project("example",
324
+ name="Example Project",
321
325
  work_item_template="Agile",
322
326
  version_control="Git",
323
327
  visibility="private",
324
- description="Managed by Terraform")
328
+ description="Managed by Pulumi")
325
329
  example_readers = azuredevops.get_group_output(project_id=example.id,
326
330
  name="Readers")
327
331
  example_root_permissions = azuredevops.IterativePermissions("example-root-permissions",
@@ -342,7 +346,6 @@ class IterativePermissions(pulumi.CustomResource):
342
346
  "DELETE": "Allow",
343
347
  })
344
348
  ```
345
- <!--End PulumiCodeChooser -->
346
349
 
347
350
  ## Relevant Links
348
351