pulumi-azuredevops 3.6.0a1737710622__py3-none-any.whl → 3.7.0__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 (55) hide show
  1. pulumi_azuredevops/__init__.py +12 -0
  2. pulumi_azuredevops/_utilities.py +8 -4
  3. pulumi_azuredevops/dashboard.py +475 -0
  4. pulumi_azuredevops/feed_retention_policy.py +0 -22
  5. pulumi_azuredevops/get_descriptor.py +133 -0
  6. pulumi_azuredevops/get_identity_group.py +20 -6
  7. pulumi_azuredevops/get_identity_groups.py +2 -2
  8. pulumi_azuredevops/get_identity_users.py +19 -5
  9. pulumi_azuredevops/get_storage_key.py +133 -0
  10. pulumi_azuredevops/get_user.py +193 -0
  11. pulumi_azuredevops/outputs.py +12 -1
  12. pulumi_azuredevops/pulumi-plugin.json +1 -1
  13. pulumi_azuredevops/service_endpoint_artifactory.py +1 -15
  14. pulumi_azuredevops/service_endpoint_aws.py +1 -15
  15. pulumi_azuredevops/service_endpoint_azure_dev_ops.py +1 -15
  16. pulumi_azuredevops/service_endpoint_azure_ecr.py +1 -15
  17. pulumi_azuredevops/service_endpoint_azure_rm.py +1 -15
  18. pulumi_azuredevops/service_endpoint_bit_bucket.py +1 -15
  19. pulumi_azuredevops/service_endpoint_docker_registry.py +1 -15
  20. pulumi_azuredevops/service_endpoint_generic.py +1 -15
  21. pulumi_azuredevops/service_endpoint_generic_git.py +1 -15
  22. pulumi_azuredevops/service_endpoint_git_hub.py +1 -15
  23. pulumi_azuredevops/service_endpoint_git_hub_enterprise.py +1 -15
  24. pulumi_azuredevops/service_endpoint_git_lab.py +1 -15
  25. pulumi_azuredevops/service_endpoint_kubernetes.py +1 -15
  26. pulumi_azuredevops/service_endpoint_npm.py +1 -15
  27. pulumi_azuredevops/service_endpoint_pipeline.py +1 -15
  28. pulumi_azuredevops/service_endpoint_service_fabric.py +1 -15
  29. pulumi_azuredevops/service_endpoint_sonar_cloud.py +1 -15
  30. pulumi_azuredevops/service_endpoint_sonar_qube.py +1 -15
  31. pulumi_azuredevops/service_endpoint_ssh.py +1 -15
  32. pulumi_azuredevops/serviceendpoint_argocd.py +1 -15
  33. pulumi_azuredevops/serviceendpoint_azure_service_bus.py +1 -15
  34. pulumi_azuredevops/serviceendpoint_checkmarx_one.py +1 -15
  35. pulumi_azuredevops/serviceendpoint_checkmarx_sast.py +1 -15
  36. pulumi_azuredevops/serviceendpoint_checkmarx_sca.py +1 -15
  37. pulumi_azuredevops/serviceendpoint_dynamics_lifecycle_services.py +1 -15
  38. pulumi_azuredevops/serviceendpoint_externaltfs.py +1 -15
  39. pulumi_azuredevops/serviceendpoint_gcp_terraform.py +1 -15
  40. pulumi_azuredevops/serviceendpoint_incomingwebhook.py +1 -15
  41. pulumi_azuredevops/serviceendpoint_jenkins.py +1 -15
  42. pulumi_azuredevops/serviceendpoint_jfrog_artifactory_v2.py +1 -15
  43. pulumi_azuredevops/serviceendpoint_jfrog_distribution_v2.py +1 -15
  44. pulumi_azuredevops/serviceendpoint_jfrog_platform_v2.py +1 -15
  45. pulumi_azuredevops/serviceendpoint_jfrog_xray_v2.py +1 -15
  46. pulumi_azuredevops/serviceendpoint_maven.py +1 -15
  47. pulumi_azuredevops/serviceendpoint_nexus.py +1 -15
  48. pulumi_azuredevops/serviceendpoint_nuget.py +1 -15
  49. pulumi_azuredevops/serviceendpoint_octopusdeploy.py +1 -15
  50. pulumi_azuredevops/serviceendpoint_snyk.py +1 -15
  51. pulumi_azuredevops/serviceendpoint_visualstudiomarketplace.py +1 -15
  52. {pulumi_azuredevops-3.6.0a1737710622.dist-info → pulumi_azuredevops-3.7.0.dist-info}/METADATA +1 -1
  53. {pulumi_azuredevops-3.6.0a1737710622.dist-info → pulumi_azuredevops-3.7.0.dist-info}/RECORD +55 -51
  54. {pulumi_azuredevops-3.6.0a1737710622.dist-info → pulumi_azuredevops-3.7.0.dist-info}/WHEEL +1 -1
  55. {pulumi_azuredevops-3.6.0a1737710622.dist-info → pulumi_azuredevops-3.7.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,133 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
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__ = [
18
+ 'GetDescriptorResult',
19
+ 'AwaitableGetDescriptorResult',
20
+ 'get_descriptor',
21
+ 'get_descriptor_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetDescriptorResult:
26
+ """
27
+ A collection of values returned by getDescriptor.
28
+ """
29
+ def __init__(__self__, descriptor=None, id=None, storage_key=None):
30
+ if descriptor and not isinstance(descriptor, str):
31
+ raise TypeError("Expected argument 'descriptor' to be a str")
32
+ pulumi.set(__self__, "descriptor", descriptor)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if storage_key and not isinstance(storage_key, str):
37
+ raise TypeError("Expected argument 'storage_key' to be a str")
38
+ pulumi.set(__self__, "storage_key", storage_key)
39
+
40
+ @property
41
+ @pulumi.getter
42
+ def descriptor(self) -> str:
43
+ """
44
+ The descriptor of the storage key.
45
+ """
46
+ return pulumi.get(self, "descriptor")
47
+
48
+ @property
49
+ @pulumi.getter
50
+ def id(self) -> str:
51
+ """
52
+ The provider-assigned unique ID for this managed resource.
53
+ """
54
+ return pulumi.get(self, "id")
55
+
56
+ @property
57
+ @pulumi.getter(name="storageKey")
58
+ def storage_key(self) -> str:
59
+ return pulumi.get(self, "storage_key")
60
+
61
+
62
+ class AwaitableGetDescriptorResult(GetDescriptorResult):
63
+ # pylint: disable=using-constant-test
64
+ def __await__(self):
65
+ if False:
66
+ yield self
67
+ return GetDescriptorResult(
68
+ descriptor=self.descriptor,
69
+ id=self.id,
70
+ storage_key=self.storage_key)
71
+
72
+
73
+ def get_descriptor(storage_key: Optional[str] = None,
74
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDescriptorResult:
75
+ """
76
+ Use this data source to access information about an existing Descriptor.
77
+
78
+ ## Example Usage
79
+
80
+ ```python
81
+ import pulumi
82
+ import pulumi_azuredevops as azuredevops
83
+
84
+ example = azuredevops.get_descriptor(storage_key="00000000-0000-0000-0000-000000000000")
85
+ pulumi.export("id", example.id)
86
+ ```
87
+
88
+ ## Relevant Links
89
+
90
+ - [Azure DevOps Service REST API 7.1 - Descriptors - Get](https://learn.microsoft.com/en-us/rest/api/azure/devops/graph/descriptors/get?view=azure-devops-rest-7.1)
91
+
92
+
93
+ :param str storage_key: The ID of the resource(`user`, `group`, `scope`, etc.) that will be resolved to a descriptor.
94
+ """
95
+ __args__ = dict()
96
+ __args__['storageKey'] = storage_key
97
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
98
+ __ret__ = pulumi.runtime.invoke('azuredevops:index/getDescriptor:getDescriptor', __args__, opts=opts, typ=GetDescriptorResult).value
99
+
100
+ return AwaitableGetDescriptorResult(
101
+ descriptor=pulumi.get(__ret__, 'descriptor'),
102
+ id=pulumi.get(__ret__, 'id'),
103
+ storage_key=pulumi.get(__ret__, 'storage_key'))
104
+ def get_descriptor_output(storage_key: Optional[pulumi.Input[str]] = None,
105
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDescriptorResult]:
106
+ """
107
+ Use this data source to access information about an existing Descriptor.
108
+
109
+ ## Example Usage
110
+
111
+ ```python
112
+ import pulumi
113
+ import pulumi_azuredevops as azuredevops
114
+
115
+ example = azuredevops.get_descriptor(storage_key="00000000-0000-0000-0000-000000000000")
116
+ pulumi.export("id", example.id)
117
+ ```
118
+
119
+ ## Relevant Links
120
+
121
+ - [Azure DevOps Service REST API 7.1 - Descriptors - Get](https://learn.microsoft.com/en-us/rest/api/azure/devops/graph/descriptors/get?view=azure-devops-rest-7.1)
122
+
123
+
124
+ :param str storage_key: The ID of the resource(`user`, `group`, `scope`, etc.) that will be resolved to a descriptor.
125
+ """
126
+ __args__ = dict()
127
+ __args__['storageKey'] = storage_key
128
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
129
+ __ret__ = pulumi.runtime.invoke_output('azuredevops:index/getDescriptor:getDescriptor', __args__, opts=opts, typ=GetDescriptorResult)
130
+ return __ret__.apply(lambda __response__: GetDescriptorResult(
131
+ descriptor=pulumi.get(__response__, 'descriptor'),
132
+ id=pulumi.get(__response__, 'id'),
133
+ storage_key=pulumi.get(__response__, 'storage_key')))
@@ -26,7 +26,7 @@ class GetIdentityGroupResult:
26
26
  """
27
27
  A collection of values returned by getIdentityGroup.
28
28
  """
29
- def __init__(__self__, descriptor=None, id=None, name=None, project_id=None):
29
+ def __init__(__self__, descriptor=None, id=None, name=None, project_id=None, subject_descriptor=None):
30
30
  if descriptor and not isinstance(descriptor, str):
31
31
  raise TypeError("Expected argument 'descriptor' to be a str")
32
32
  pulumi.set(__self__, "descriptor", descriptor)
@@ -39,6 +39,9 @@ class GetIdentityGroupResult:
39
39
  if project_id and not isinstance(project_id, str):
40
40
  raise TypeError("Expected argument 'project_id' to be a str")
41
41
  pulumi.set(__self__, "project_id", project_id)
42
+ if subject_descriptor and not isinstance(subject_descriptor, str):
43
+ raise TypeError("Expected argument 'subject_descriptor' to be a str")
44
+ pulumi.set(__self__, "subject_descriptor", subject_descriptor)
42
45
 
43
46
  @property
44
47
  @pulumi.getter
@@ -69,6 +72,14 @@ class GetIdentityGroupResult:
69
72
  def project_id(self) -> str:
70
73
  return pulumi.get(self, "project_id")
71
74
 
75
+ @property
76
+ @pulumi.getter(name="subjectDescriptor")
77
+ def subject_descriptor(self) -> str:
78
+ """
79
+ The subject descriptor of the identity group.
80
+ """
81
+ return pulumi.get(self, "subject_descriptor")
82
+
72
83
 
73
84
  class AwaitableGetIdentityGroupResult(GetIdentityGroupResult):
74
85
  # pylint: disable=using-constant-test
@@ -79,7 +90,8 @@ class AwaitableGetIdentityGroupResult(GetIdentityGroupResult):
79
90
  descriptor=self.descriptor,
80
91
  id=self.id,
81
92
  name=self.name,
82
- project_id=self.project_id)
93
+ project_id=self.project_id,
94
+ subject_descriptor=self.subject_descriptor)
83
95
 
84
96
 
85
97
  def get_identity_group(name: Optional[str] = None,
@@ -101,7 +113,7 @@ def get_identity_group(name: Optional[str] = None,
101
113
 
102
114
  ## Relevant Links
103
115
 
104
- - [Azure DevOps Service REST API 7.0 - Identities](https://docs.microsoft.com/en-us/rest/api/azure/devops/ims/?view=azure-devops-rest-7.2)
116
+ - [Azure DevOps Service REST API 7.1 - Identities](https://docs.microsoft.com/en-us/rest/api/azure/devops/ims/?view=azure-devops-rest-7.2)
105
117
 
106
118
 
107
119
  :param str name: The name of the group.
@@ -117,7 +129,8 @@ def get_identity_group(name: Optional[str] = None,
117
129
  descriptor=pulumi.get(__ret__, 'descriptor'),
118
130
  id=pulumi.get(__ret__, 'id'),
119
131
  name=pulumi.get(__ret__, 'name'),
120
- project_id=pulumi.get(__ret__, 'project_id'))
132
+ project_id=pulumi.get(__ret__, 'project_id'),
133
+ subject_descriptor=pulumi.get(__ret__, 'subject_descriptor'))
121
134
  def get_identity_group_output(name: Optional[pulumi.Input[str]] = None,
122
135
  project_id: Optional[pulumi.Input[str]] = None,
123
136
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetIdentityGroupResult]:
@@ -137,7 +150,7 @@ def get_identity_group_output(name: Optional[pulumi.Input[str]] = None,
137
150
 
138
151
  ## Relevant Links
139
152
 
140
- - [Azure DevOps Service REST API 7.0 - Identities](https://docs.microsoft.com/en-us/rest/api/azure/devops/ims/?view=azure-devops-rest-7.2)
153
+ - [Azure DevOps Service REST API 7.1 - Identities](https://docs.microsoft.com/en-us/rest/api/azure/devops/ims/?view=azure-devops-rest-7.2)
141
154
 
142
155
 
143
156
  :param str name: The name of the group.
@@ -152,4 +165,5 @@ def get_identity_group_output(name: Optional[pulumi.Input[str]] = None,
152
165
  descriptor=pulumi.get(__response__, 'descriptor'),
153
166
  id=pulumi.get(__response__, 'id'),
154
167
  name=pulumi.get(__response__, 'name'),
155
- project_id=pulumi.get(__response__, 'project_id')))
168
+ project_id=pulumi.get(__response__, 'project_id'),
169
+ subject_descriptor=pulumi.get(__response__, 'subject_descriptor')))
@@ -91,7 +91,7 @@ def get_identity_groups(project_id: Optional[str] = None,
91
91
 
92
92
  ## Relevant Links
93
93
 
94
- - [Azure DevOps Service REST API 7.0 - Identities](https://docs.microsoft.com/en-us/rest/api/azure/devops/ims/?view=azure-devops-rest-7.2)
94
+ - [Azure DevOps Service REST API 7.1 - Identities](https://docs.microsoft.com/en-us/rest/api/azure/devops/ims/?view=azure-devops-rest-7.2)
95
95
 
96
96
 
97
97
  :param str project_id: The Project ID. If no project ID is specified all groups of an organization will be returned
@@ -125,7 +125,7 @@ def get_identity_groups_output(project_id: Optional[pulumi.Input[Optional[str]]]
125
125
 
126
126
  ## Relevant Links
127
127
 
128
- - [Azure DevOps Service REST API 7.0 - Identities](https://docs.microsoft.com/en-us/rest/api/azure/devops/ims/?view=azure-devops-rest-7.2)
128
+ - [Azure DevOps Service REST API 7.1 - Identities](https://docs.microsoft.com/en-us/rest/api/azure/devops/ims/?view=azure-devops-rest-7.2)
129
129
 
130
130
 
131
131
  :param str project_id: The Project ID. If no project ID is specified all groups of an organization will be returned
@@ -26,7 +26,7 @@ class GetIdentityUsersResult:
26
26
  """
27
27
  A collection of values returned by getIdentityUsers.
28
28
  """
29
- def __init__(__self__, descriptor=None, id=None, name=None, search_filter=None):
29
+ def __init__(__self__, descriptor=None, id=None, name=None, search_filter=None, subject_descriptor=None):
30
30
  if descriptor and not isinstance(descriptor, str):
31
31
  raise TypeError("Expected argument 'descriptor' to be a str")
32
32
  pulumi.set(__self__, "descriptor", descriptor)
@@ -39,12 +39,15 @@ class GetIdentityUsersResult:
39
39
  if search_filter and not isinstance(search_filter, str):
40
40
  raise TypeError("Expected argument 'search_filter' to be a str")
41
41
  pulumi.set(__self__, "search_filter", search_filter)
42
+ if subject_descriptor and not isinstance(subject_descriptor, str):
43
+ raise TypeError("Expected argument 'subject_descriptor' to be a str")
44
+ pulumi.set(__self__, "subject_descriptor", subject_descriptor)
42
45
 
43
46
  @property
44
47
  @pulumi.getter
45
48
  def descriptor(self) -> str:
46
49
  """
47
- The descriptor of the user.
50
+ The Descriptor of the user.
48
51
  """
49
52
  return pulumi.get(self, "descriptor")
50
53
 
@@ -66,6 +69,14 @@ class GetIdentityUsersResult:
66
69
  def search_filter(self) -> Optional[str]:
67
70
  return pulumi.get(self, "search_filter")
68
71
 
72
+ @property
73
+ @pulumi.getter(name="subjectDescriptor")
74
+ def subject_descriptor(self) -> str:
75
+ """
76
+ The Subject Descriptor of the user.
77
+ """
78
+ return pulumi.get(self, "subject_descriptor")
79
+
69
80
 
70
81
  class AwaitableGetIdentityUsersResult(GetIdentityUsersResult):
71
82
  # pylint: disable=using-constant-test
@@ -76,7 +87,8 @@ class AwaitableGetIdentityUsersResult(GetIdentityUsersResult):
76
87
  descriptor=self.descriptor,
77
88
  id=self.id,
78
89
  name=self.name,
79
- search_filter=self.search_filter)
90
+ search_filter=self.search_filter,
91
+ subject_descriptor=self.subject_descriptor)
80
92
 
81
93
 
82
94
  def get_identity_users(name: Optional[str] = None,
@@ -99,7 +111,8 @@ def get_identity_users(name: Optional[str] = None,
99
111
  descriptor=pulumi.get(__ret__, 'descriptor'),
100
112
  id=pulumi.get(__ret__, 'id'),
101
113
  name=pulumi.get(__ret__, 'name'),
102
- search_filter=pulumi.get(__ret__, 'search_filter'))
114
+ search_filter=pulumi.get(__ret__, 'search_filter'),
115
+ subject_descriptor=pulumi.get(__ret__, 'subject_descriptor'))
103
116
  def get_identity_users_output(name: Optional[pulumi.Input[str]] = None,
104
117
  search_filter: Optional[pulumi.Input[Optional[str]]] = None,
105
118
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetIdentityUsersResult]:
@@ -119,4 +132,5 @@ def get_identity_users_output(name: Optional[pulumi.Input[str]] = None,
119
132
  descriptor=pulumi.get(__response__, 'descriptor'),
120
133
  id=pulumi.get(__response__, 'id'),
121
134
  name=pulumi.get(__response__, 'name'),
122
- search_filter=pulumi.get(__response__, 'search_filter')))
135
+ search_filter=pulumi.get(__response__, 'search_filter'),
136
+ subject_descriptor=pulumi.get(__response__, 'subject_descriptor')))
@@ -0,0 +1,133 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
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__ = [
18
+ 'GetStorageKeyResult',
19
+ 'AwaitableGetStorageKeyResult',
20
+ 'get_storage_key',
21
+ 'get_storage_key_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetStorageKeyResult:
26
+ """
27
+ A collection of values returned by getStorageKey.
28
+ """
29
+ def __init__(__self__, descriptor=None, id=None, storage_key=None):
30
+ if descriptor and not isinstance(descriptor, str):
31
+ raise TypeError("Expected argument 'descriptor' to be a str")
32
+ pulumi.set(__self__, "descriptor", descriptor)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if storage_key and not isinstance(storage_key, str):
37
+ raise TypeError("Expected argument 'storage_key' to be a str")
38
+ pulumi.set(__self__, "storage_key", storage_key)
39
+
40
+ @property
41
+ @pulumi.getter
42
+ def descriptor(self) -> str:
43
+ return pulumi.get(self, "descriptor")
44
+
45
+ @property
46
+ @pulumi.getter
47
+ def id(self) -> str:
48
+ """
49
+ The provider-assigned unique ID for this managed resource.
50
+ """
51
+ return pulumi.get(self, "id")
52
+
53
+ @property
54
+ @pulumi.getter(name="storageKey")
55
+ def storage_key(self) -> str:
56
+ """
57
+ The Storage Key of the descriptor.
58
+ """
59
+ return pulumi.get(self, "storage_key")
60
+
61
+
62
+ class AwaitableGetStorageKeyResult(GetStorageKeyResult):
63
+ # pylint: disable=using-constant-test
64
+ def __await__(self):
65
+ if False:
66
+ yield self
67
+ return GetStorageKeyResult(
68
+ descriptor=self.descriptor,
69
+ id=self.id,
70
+ storage_key=self.storage_key)
71
+
72
+
73
+ def get_storage_key(descriptor: Optional[str] = None,
74
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetStorageKeyResult:
75
+ """
76
+ Use this data source to access information about an existing Storage Key.
77
+
78
+ ## Example Usage
79
+
80
+ ```python
81
+ import pulumi
82
+ import pulumi_azuredevops as azuredevops
83
+
84
+ example = azuredevops.get_storage_key(descriptor="aad.000000000000000000000000000000000000")
85
+ pulumi.export("id", example.id)
86
+ ```
87
+
88
+ ## Relevant Links
89
+
90
+ - [Azure DevOps Service REST API 7.1 - Storage Key - Get](https://learn.microsoft.com/en-us/rest/api/azure/devops/graph/storage-keys/get?view=azure-devops-rest-7.1)
91
+
92
+
93
+ :param str descriptor: The descriptor that will be resolved to a storage key.
94
+ """
95
+ __args__ = dict()
96
+ __args__['descriptor'] = descriptor
97
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
98
+ __ret__ = pulumi.runtime.invoke('azuredevops:index/getStorageKey:getStorageKey', __args__, opts=opts, typ=GetStorageKeyResult).value
99
+
100
+ return AwaitableGetStorageKeyResult(
101
+ descriptor=pulumi.get(__ret__, 'descriptor'),
102
+ id=pulumi.get(__ret__, 'id'),
103
+ storage_key=pulumi.get(__ret__, 'storage_key'))
104
+ def get_storage_key_output(descriptor: Optional[pulumi.Input[str]] = None,
105
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetStorageKeyResult]:
106
+ """
107
+ Use this data source to access information about an existing Storage Key.
108
+
109
+ ## Example Usage
110
+
111
+ ```python
112
+ import pulumi
113
+ import pulumi_azuredevops as azuredevops
114
+
115
+ example = azuredevops.get_storage_key(descriptor="aad.000000000000000000000000000000000000")
116
+ pulumi.export("id", example.id)
117
+ ```
118
+
119
+ ## Relevant Links
120
+
121
+ - [Azure DevOps Service REST API 7.1 - Storage Key - Get](https://learn.microsoft.com/en-us/rest/api/azure/devops/graph/storage-keys/get?view=azure-devops-rest-7.1)
122
+
123
+
124
+ :param str descriptor: The descriptor that will be resolved to a storage key.
125
+ """
126
+ __args__ = dict()
127
+ __args__['descriptor'] = descriptor
128
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
129
+ __ret__ = pulumi.runtime.invoke_output('azuredevops:index/getStorageKey:getStorageKey', __args__, opts=opts, typ=GetStorageKeyResult)
130
+ return __ret__.apply(lambda __response__: GetStorageKeyResult(
131
+ descriptor=pulumi.get(__response__, 'descriptor'),
132
+ id=pulumi.get(__response__, 'id'),
133
+ storage_key=pulumi.get(__response__, 'storage_key')))
@@ -0,0 +1,193 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
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__ = [
18
+ 'GetUserResult',
19
+ 'AwaitableGetUserResult',
20
+ 'get_user',
21
+ 'get_user_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetUserResult:
26
+ """
27
+ A collection of values returned by getUser.
28
+ """
29
+ def __init__(__self__, descriptor=None, display_name=None, domain=None, id=None, mail_address=None, origin=None, origin_id=None, principal_name=None, subject_kind=None):
30
+ if descriptor and not isinstance(descriptor, str):
31
+ raise TypeError("Expected argument 'descriptor' to be a str")
32
+ pulumi.set(__self__, "descriptor", descriptor)
33
+ if display_name and not isinstance(display_name, str):
34
+ raise TypeError("Expected argument 'display_name' to be a str")
35
+ pulumi.set(__self__, "display_name", display_name)
36
+ if domain and not isinstance(domain, str):
37
+ raise TypeError("Expected argument 'domain' to be a str")
38
+ pulumi.set(__self__, "domain", domain)
39
+ if id and not isinstance(id, str):
40
+ raise TypeError("Expected argument 'id' to be a str")
41
+ pulumi.set(__self__, "id", id)
42
+ if mail_address and not isinstance(mail_address, str):
43
+ raise TypeError("Expected argument 'mail_address' to be a str")
44
+ pulumi.set(__self__, "mail_address", mail_address)
45
+ if origin and not isinstance(origin, str):
46
+ raise TypeError("Expected argument 'origin' to be a str")
47
+ pulumi.set(__self__, "origin", origin)
48
+ if origin_id and not isinstance(origin_id, str):
49
+ raise TypeError("Expected argument 'origin_id' to be a str")
50
+ pulumi.set(__self__, "origin_id", origin_id)
51
+ if principal_name and not isinstance(principal_name, str):
52
+ raise TypeError("Expected argument 'principal_name' to be a str")
53
+ pulumi.set(__self__, "principal_name", principal_name)
54
+ if subject_kind and not isinstance(subject_kind, str):
55
+ raise TypeError("Expected argument 'subject_kind' to be a str")
56
+ pulumi.set(__self__, "subject_kind", subject_kind)
57
+
58
+ @property
59
+ @pulumi.getter
60
+ def descriptor(self) -> str:
61
+ return pulumi.get(self, "descriptor")
62
+
63
+ @property
64
+ @pulumi.getter(name="displayName")
65
+ def display_name(self) -> str:
66
+ """
67
+ The display name of the User.
68
+ """
69
+ return pulumi.get(self, "display_name")
70
+
71
+ @property
72
+ @pulumi.getter
73
+ def domain(self) -> str:
74
+ """
75
+ The domain of the user.
76
+ """
77
+ return pulumi.get(self, "domain")
78
+
79
+ @property
80
+ @pulumi.getter
81
+ def id(self) -> str:
82
+ """
83
+ The provider-assigned unique ID for this managed resource.
84
+ """
85
+ return pulumi.get(self, "id")
86
+
87
+ @property
88
+ @pulumi.getter(name="mailAddress")
89
+ def mail_address(self) -> str:
90
+ """
91
+ The email address of the user.
92
+ """
93
+ return pulumi.get(self, "mail_address")
94
+
95
+ @property
96
+ @pulumi.getter
97
+ def origin(self) -> str:
98
+ """
99
+ The type of source provider for the origin identifier (ex:`AD`, `AAD`, `MSA`).
100
+ """
101
+ return pulumi.get(self, "origin")
102
+
103
+ @property
104
+ @pulumi.getter(name="originId")
105
+ def origin_id(self) -> str:
106
+ """
107
+ The origin ID of the user.
108
+ """
109
+ return pulumi.get(self, "origin_id")
110
+
111
+ @property
112
+ @pulumi.getter(name="principalName")
113
+ def principal_name(self) -> str:
114
+ """
115
+ The principal name of the user.
116
+ """
117
+ return pulumi.get(self, "principal_name")
118
+
119
+ @property
120
+ @pulumi.getter(name="subjectKind")
121
+ def subject_kind(self) -> str:
122
+ """
123
+ The subject kind of the user (ex: `Group`, `Scope`, `User`).
124
+ """
125
+ return pulumi.get(self, "subject_kind")
126
+
127
+
128
+ class AwaitableGetUserResult(GetUserResult):
129
+ # pylint: disable=using-constant-test
130
+ def __await__(self):
131
+ if False:
132
+ yield self
133
+ return GetUserResult(
134
+ descriptor=self.descriptor,
135
+ display_name=self.display_name,
136
+ domain=self.domain,
137
+ id=self.id,
138
+ mail_address=self.mail_address,
139
+ origin=self.origin,
140
+ origin_id=self.origin_id,
141
+ principal_name=self.principal_name,
142
+ subject_kind=self.subject_kind)
143
+
144
+
145
+ def get_user(descriptor: Optional[str] = None,
146
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetUserResult:
147
+ """
148
+ Use this data source to access information about an existing user within Azure DevOps.
149
+
150
+ ~>**NOTE:** If you only have the Storage Key(UUID) of the user, you can use `get_descriptor` to resolve the Storage Key(UUID) to a `descriptor`.
151
+
152
+
153
+ :param str descriptor: The descriptor of the user.
154
+ """
155
+ __args__ = dict()
156
+ __args__['descriptor'] = descriptor
157
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
158
+ __ret__ = pulumi.runtime.invoke('azuredevops:index/getUser:getUser', __args__, opts=opts, typ=GetUserResult).value
159
+
160
+ return AwaitableGetUserResult(
161
+ descriptor=pulumi.get(__ret__, 'descriptor'),
162
+ display_name=pulumi.get(__ret__, 'display_name'),
163
+ domain=pulumi.get(__ret__, 'domain'),
164
+ id=pulumi.get(__ret__, 'id'),
165
+ mail_address=pulumi.get(__ret__, 'mail_address'),
166
+ origin=pulumi.get(__ret__, 'origin'),
167
+ origin_id=pulumi.get(__ret__, 'origin_id'),
168
+ principal_name=pulumi.get(__ret__, 'principal_name'),
169
+ subject_kind=pulumi.get(__ret__, 'subject_kind'))
170
+ def get_user_output(descriptor: Optional[pulumi.Input[str]] = None,
171
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetUserResult]:
172
+ """
173
+ Use this data source to access information about an existing user within Azure DevOps.
174
+
175
+ ~>**NOTE:** If you only have the Storage Key(UUID) of the user, you can use `get_descriptor` to resolve the Storage Key(UUID) to a `descriptor`.
176
+
177
+
178
+ :param str descriptor: The descriptor of the user.
179
+ """
180
+ __args__ = dict()
181
+ __args__['descriptor'] = descriptor
182
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
183
+ __ret__ = pulumi.runtime.invoke_output('azuredevops:index/getUser:getUser', __args__, opts=opts, typ=GetUserResult)
184
+ return __ret__.apply(lambda __response__: GetUserResult(
185
+ descriptor=pulumi.get(__response__, 'descriptor'),
186
+ display_name=pulumi.get(__response__, 'display_name'),
187
+ domain=pulumi.get(__response__, 'domain'),
188
+ id=pulumi.get(__response__, 'id'),
189
+ mail_address=pulumi.get(__response__, 'mail_address'),
190
+ origin=pulumi.get(__response__, 'origin'),
191
+ origin_id=pulumi.get(__response__, 'origin_id'),
192
+ principal_name=pulumi.get(__response__, 'principal_name'),
193
+ subject_kind=pulumi.get(__response__, 'subject_kind')))
@@ -4821,15 +4821,18 @@ class GetIdentityGroupsGroupResult(dict):
4821
4821
  def __init__(__self__, *,
4822
4822
  descriptor: str,
4823
4823
  id: str,
4824
- name: str):
4824
+ name: str,
4825
+ subject_descriptor: str):
4825
4826
  """
4826
4827
  :param str descriptor: The descriptor of the Identity Group.
4827
4828
  :param str id: The ID of the Identity Group.
4828
4829
  :param str name: This is the non-unique display name of the identity subject.
4830
+ :param str subject_descriptor: The subject descriptor of the identity group.
4829
4831
  """
4830
4832
  pulumi.set(__self__, "descriptor", descriptor)
4831
4833
  pulumi.set(__self__, "id", id)
4832
4834
  pulumi.set(__self__, "name", name)
4835
+ pulumi.set(__self__, "subject_descriptor", subject_descriptor)
4833
4836
 
4834
4837
  @property
4835
4838
  @pulumi.getter
@@ -4855,6 +4858,14 @@ class GetIdentityGroupsGroupResult(dict):
4855
4858
  """
4856
4859
  return pulumi.get(self, "name")
4857
4860
 
4861
+ @property
4862
+ @pulumi.getter(name="subjectDescriptor")
4863
+ def subject_descriptor(self) -> str:
4864
+ """
4865
+ The subject descriptor of the identity group.
4866
+ """
4867
+ return pulumi.get(self, "subject_descriptor")
4868
+
4858
4869
 
4859
4870
  @pulumi.output_type
4860
4871
  class GetIterationChildrenResult(dict):
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "azuredevops",
4
- "version": "3.6.0-alpha.1737710622"
4
+ "version": "3.7.0"
5
5
  }