pulumi-azuredevops 3.10.0a1747977999__py3-none-any.whl → 3.11.0a1748900713__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 (158) hide show
  1. pulumi_azuredevops/__init__.py +11 -1
  2. pulumi_azuredevops/_inputs.py +55 -1
  3. pulumi_azuredevops/_utilities.py +1 -1
  4. pulumi_azuredevops/area_permissions.py +1 -1
  5. pulumi_azuredevops/branch_policy_auto_reviewers.py +1 -1
  6. pulumi_azuredevops/branch_policy_build_validation.py +1 -1
  7. pulumi_azuredevops/branch_policy_comment_resolution.py +1 -1
  8. pulumi_azuredevops/branch_policy_merge_types.py +1 -1
  9. pulumi_azuredevops/branch_policy_min_reviewers.py +1 -1
  10. pulumi_azuredevops/branch_policy_status_check.py +1 -1
  11. pulumi_azuredevops/branch_policy_work_item_linking.py +1 -1
  12. pulumi_azuredevops/build_definition.py +1 -1
  13. pulumi_azuredevops/build_definition_permissions.py +1 -1
  14. pulumi_azuredevops/build_folder.py +1 -1
  15. pulumi_azuredevops/build_folder_permissions.py +1 -1
  16. pulumi_azuredevops/check_approval.py +1 -1
  17. pulumi_azuredevops/check_branch_control.py +1 -1
  18. pulumi_azuredevops/check_business_hours.py +1 -1
  19. pulumi_azuredevops/check_exclusive_lock.py +1 -1
  20. pulumi_azuredevops/check_required_template.py +1 -1
  21. pulumi_azuredevops/check_rest_api.py +1 -1
  22. pulumi_azuredevops/config/__init__.py +1 -1
  23. pulumi_azuredevops/config/__init__.pyi +1 -1
  24. pulumi_azuredevops/config/vars.py +1 -1
  25. pulumi_azuredevops/dashboard.py +1 -1
  26. pulumi_azuredevops/elastic_pool.py +1 -1
  27. pulumi_azuredevops/environment.py +1 -1
  28. pulumi_azuredevops/environment_resource_kubernetes.py +1 -1
  29. pulumi_azuredevops/extension.py +1 -1
  30. pulumi_azuredevops/feed.py +1 -1
  31. pulumi_azuredevops/feed_permission.py +1 -1
  32. pulumi_azuredevops/feed_retention_policy.py +1 -1
  33. pulumi_azuredevops/get_agent_queue.py +1 -1
  34. pulumi_azuredevops/get_area.py +1 -1
  35. pulumi_azuredevops/get_build_definition.py +1 -1
  36. pulumi_azuredevops/get_client_config.py +1 -1
  37. pulumi_azuredevops/get_descriptor.py +1 -1
  38. pulumi_azuredevops/get_environment.py +1 -1
  39. pulumi_azuredevops/get_feed.py +1 -1
  40. pulumi_azuredevops/get_git_repository.py +1 -1
  41. pulumi_azuredevops/get_git_repository_file.py +1 -1
  42. pulumi_azuredevops/get_group.py +2 -2
  43. pulumi_azuredevops/get_group_membership.py +1 -1
  44. pulumi_azuredevops/get_groups.py +1 -1
  45. pulumi_azuredevops/get_identity_group.py +1 -1
  46. pulumi_azuredevops/get_identity_groups.py +1 -1
  47. pulumi_azuredevops/get_identity_users.py +1 -1
  48. pulumi_azuredevops/get_iteration.py +1 -1
  49. pulumi_azuredevops/get_pool.py +1 -1
  50. pulumi_azuredevops/get_pools.py +1 -1
  51. pulumi_azuredevops/get_project.py +1 -1
  52. pulumi_azuredevops/get_projects.py +1 -1
  53. pulumi_azuredevops/get_repositories.py +1 -1
  54. pulumi_azuredevops/get_securityrole_definitions.py +1 -1
  55. pulumi_azuredevops/get_service_endpoint_azure_rm.py +1 -1
  56. pulumi_azuredevops/get_service_endpoint_github.py +1 -1
  57. pulumi_azuredevops/get_service_principal.py +1 -1
  58. pulumi_azuredevops/get_serviceendpoint_azurecr.py +1 -1
  59. pulumi_azuredevops/get_serviceendpoint_bitbucket.py +1 -1
  60. pulumi_azuredevops/get_serviceendpoint_dockerregistry.py +282 -0
  61. pulumi_azuredevops/get_serviceendpoint_npm.py +1 -1
  62. pulumi_azuredevops/get_serviceendpoint_sonarcloud.py +1 -1
  63. pulumi_azuredevops/get_storage_key.py +1 -1
  64. pulumi_azuredevops/get_team.py +1 -1
  65. pulumi_azuredevops/get_teams.py +1 -1
  66. pulumi_azuredevops/get_user.py +1 -1
  67. pulumi_azuredevops/get_users.py +1 -1
  68. pulumi_azuredevops/get_variable_group.py +1 -1
  69. pulumi_azuredevops/git.py +1 -1
  70. pulumi_azuredevops/git_permissions.py +22 -1
  71. pulumi_azuredevops/git_repository_branch.py +1 -1
  72. pulumi_azuredevops/git_repository_file.py +1 -1
  73. pulumi_azuredevops/group.py +1 -1
  74. pulumi_azuredevops/group_entitlement.py +1 -1
  75. pulumi_azuredevops/group_membership.py +1 -1
  76. pulumi_azuredevops/iterative_permissions.py +1 -1
  77. pulumi_azuredevops/library_permissions.py +1 -1
  78. pulumi_azuredevops/outputs.py +35 -3
  79. pulumi_azuredevops/pipeline_authorization.py +1 -1
  80. pulumi_azuredevops/pool.py +1 -1
  81. pulumi_azuredevops/project.py +1 -1
  82. pulumi_azuredevops/project_features.py +1 -1
  83. pulumi_azuredevops/project_permissions.py +1 -1
  84. pulumi_azuredevops/project_pipeline_settings.py +1 -1
  85. pulumi_azuredevops/project_tags.py +1 -1
  86. pulumi_azuredevops/provider.py +1 -1
  87. pulumi_azuredevops/pulumi-plugin.json +1 -1
  88. pulumi_azuredevops/queue.py +1 -1
  89. pulumi_azuredevops/repository_policy_author_email_pattern.py +1 -1
  90. pulumi_azuredevops/repository_policy_case_enforcement.py +1 -1
  91. pulumi_azuredevops/repository_policy_check_credentials.py +1 -1
  92. pulumi_azuredevops/repository_policy_file_path_pattern.py +1 -1
  93. pulumi_azuredevops/repository_policy_max_file_size.py +1 -1
  94. pulumi_azuredevops/repository_policy_max_path_length.py +1 -1
  95. pulumi_azuredevops/repository_policy_reserved_names.py +1 -1
  96. pulumi_azuredevops/resource_authorization.py +1 -1
  97. pulumi_azuredevops/securityrole_assignment.py +1 -1
  98. pulumi_azuredevops/service_endpoint_artifactory.py +1 -1
  99. pulumi_azuredevops/service_endpoint_aws.py +1 -1
  100. pulumi_azuredevops/service_endpoint_azure_dev_ops.py +49 -52
  101. pulumi_azuredevops/service_endpoint_azure_ecr.py +47 -51
  102. pulumi_azuredevops/service_endpoint_azure_rm.py +17 -18
  103. pulumi_azuredevops/service_endpoint_bit_bucket.py +32 -34
  104. pulumi_azuredevops/service_endpoint_docker_registry.py +34 -36
  105. pulumi_azuredevops/service_endpoint_generic.py +1 -1
  106. pulumi_azuredevops/service_endpoint_generic_git.py +1 -1
  107. pulumi_azuredevops/service_endpoint_git_hub.py +1 -1
  108. pulumi_azuredevops/service_endpoint_git_hub_enterprise.py +1 -1
  109. pulumi_azuredevops/service_endpoint_git_lab.py +1 -1
  110. pulumi_azuredevops/service_endpoint_kubernetes.py +1 -1
  111. pulumi_azuredevops/service_endpoint_npm.py +1 -1
  112. pulumi_azuredevops/service_endpoint_pipeline.py +1 -1
  113. pulumi_azuredevops/service_endpoint_service_fabric.py +1 -1
  114. pulumi_azuredevops/service_endpoint_sonar_cloud.py +1 -1
  115. pulumi_azuredevops/service_endpoint_sonar_qube.py +1 -1
  116. pulumi_azuredevops/service_endpoint_ssh.py +1 -1
  117. pulumi_azuredevops/service_principal_entitlement.py +1 -1
  118. pulumi_azuredevops/serviceendpoint_argocd.py +1 -1
  119. pulumi_azuredevops/serviceendpoint_azure_service_bus.py +1 -1
  120. pulumi_azuredevops/serviceendpoint_black_duck.py +417 -0
  121. pulumi_azuredevops/serviceendpoint_checkmarx_one.py +1 -1
  122. pulumi_azuredevops/serviceendpoint_checkmarx_sast.py +1 -1
  123. pulumi_azuredevops/serviceendpoint_checkmarx_sca.py +1 -1
  124. pulumi_azuredevops/serviceendpoint_dynamics_lifecycle_services.py +1 -1
  125. pulumi_azuredevops/serviceendpoint_externaltfs.py +1 -1
  126. pulumi_azuredevops/serviceendpoint_gcp_terraform.py +55 -58
  127. pulumi_azuredevops/serviceendpoint_incomingwebhook.py +18 -19
  128. pulumi_azuredevops/serviceendpoint_jenkins.py +1 -1
  129. pulumi_azuredevops/serviceendpoint_jfrog_artifactory_v2.py +1 -1
  130. pulumi_azuredevops/serviceendpoint_jfrog_distribution_v2.py +1 -1
  131. pulumi_azuredevops/serviceendpoint_jfrog_platform_v2.py +1 -1
  132. pulumi_azuredevops/serviceendpoint_jfrog_xray_v2.py +1 -1
  133. pulumi_azuredevops/serviceendpoint_maven.py +1 -1
  134. pulumi_azuredevops/serviceendpoint_nexus.py +1 -1
  135. pulumi_azuredevops/serviceendpoint_nuget.py +1 -1
  136. pulumi_azuredevops/serviceendpoint_octopusdeploy.py +1 -1
  137. pulumi_azuredevops/serviceendpoint_openshift.py +1 -1
  138. pulumi_azuredevops/serviceendpoint_permissions.py +1 -1
  139. pulumi_azuredevops/serviceendpoint_snyk.py +1 -1
  140. pulumi_azuredevops/serviceendpoint_visualstudiomarketplace.py +1 -1
  141. pulumi_azuredevops/servicehook_permissions.py +1 -1
  142. pulumi_azuredevops/servicehook_storage_queue_pipelines.py +1 -1
  143. pulumi_azuredevops/tagging_permissions.py +1 -1
  144. pulumi_azuredevops/team.py +1 -1
  145. pulumi_azuredevops/team_administrators.py +1 -1
  146. pulumi_azuredevops/team_members.py +1 -1
  147. pulumi_azuredevops/user.py +1 -1
  148. pulumi_azuredevops/variable_group.py +1 -1
  149. pulumi_azuredevops/variable_group_permissions.py +1 -1
  150. pulumi_azuredevops/wiki.py +1 -1
  151. pulumi_azuredevops/wiki_page.py +1 -1
  152. pulumi_azuredevops/work_item_query_permissions.py +1 -1
  153. pulumi_azuredevops/workitem.py +166 -5
  154. {pulumi_azuredevops-3.10.0a1747977999.dist-info → pulumi_azuredevops-3.11.0a1748900713.dist-info}/METADATA +1 -1
  155. pulumi_azuredevops-3.11.0a1748900713.dist-info/RECORD +158 -0
  156. {pulumi_azuredevops-3.10.0a1747977999.dist-info → pulumi_azuredevops-3.11.0a1748900713.dist-info}/WHEEL +1 -1
  157. pulumi_azuredevops-3.10.0a1747977999.dist-info/RECORD +0 -156
  158. {pulumi_azuredevops-3.10.0a1747977999.dist-info → pulumi_azuredevops-3.11.0a1748900713.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,417 @@
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
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from . import _utilities
17
+
18
+ __all__ = ['ServiceendpointBlackDuckArgs', 'ServiceendpointBlackDuck']
19
+
20
+ @pulumi.input_type
21
+ class ServiceendpointBlackDuckArgs:
22
+ def __init__(__self__, *,
23
+ api_token: pulumi.Input[builtins.str],
24
+ project_id: pulumi.Input[builtins.str],
25
+ server_url: pulumi.Input[builtins.str],
26
+ service_endpoint_name: pulumi.Input[builtins.str],
27
+ description: Optional[pulumi.Input[builtins.str]] = None):
28
+ """
29
+ The set of arguments for constructing a ServiceendpointBlackDuck resource.
30
+ :param pulumi.Input[builtins.str] api_token: The API token of the Black Duck Detect.
31
+ :param pulumi.Input[builtins.str] project_id: The ID of the project.
32
+ :param pulumi.Input[builtins.str] server_url: The server URL of the Black Duck Detect.
33
+ :param pulumi.Input[builtins.str] service_endpoint_name: The Service Endpoint name.
34
+ """
35
+ pulumi.set(__self__, "api_token", api_token)
36
+ pulumi.set(__self__, "project_id", project_id)
37
+ pulumi.set(__self__, "server_url", server_url)
38
+ pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
39
+ if description is not None:
40
+ pulumi.set(__self__, "description", description)
41
+
42
+ @property
43
+ @pulumi.getter(name="apiToken")
44
+ def api_token(self) -> pulumi.Input[builtins.str]:
45
+ """
46
+ The API token of the Black Duck Detect.
47
+ """
48
+ return pulumi.get(self, "api_token")
49
+
50
+ @api_token.setter
51
+ def api_token(self, value: pulumi.Input[builtins.str]):
52
+ pulumi.set(self, "api_token", value)
53
+
54
+ @property
55
+ @pulumi.getter(name="projectId")
56
+ def project_id(self) -> pulumi.Input[builtins.str]:
57
+ """
58
+ The ID of the project.
59
+ """
60
+ return pulumi.get(self, "project_id")
61
+
62
+ @project_id.setter
63
+ def project_id(self, value: pulumi.Input[builtins.str]):
64
+ pulumi.set(self, "project_id", value)
65
+
66
+ @property
67
+ @pulumi.getter(name="serverUrl")
68
+ def server_url(self) -> pulumi.Input[builtins.str]:
69
+ """
70
+ The server URL of the Black Duck Detect.
71
+ """
72
+ return pulumi.get(self, "server_url")
73
+
74
+ @server_url.setter
75
+ def server_url(self, value: pulumi.Input[builtins.str]):
76
+ pulumi.set(self, "server_url", value)
77
+
78
+ @property
79
+ @pulumi.getter(name="serviceEndpointName")
80
+ def service_endpoint_name(self) -> pulumi.Input[builtins.str]:
81
+ """
82
+ The Service Endpoint name.
83
+ """
84
+ return pulumi.get(self, "service_endpoint_name")
85
+
86
+ @service_endpoint_name.setter
87
+ def service_endpoint_name(self, value: pulumi.Input[builtins.str]):
88
+ pulumi.set(self, "service_endpoint_name", value)
89
+
90
+ @property
91
+ @pulumi.getter
92
+ def description(self) -> Optional[pulumi.Input[builtins.str]]:
93
+ return pulumi.get(self, "description")
94
+
95
+ @description.setter
96
+ def description(self, value: Optional[pulumi.Input[builtins.str]]):
97
+ pulumi.set(self, "description", value)
98
+
99
+
100
+ @pulumi.input_type
101
+ class _ServiceendpointBlackDuckState:
102
+ def __init__(__self__, *,
103
+ api_token: Optional[pulumi.Input[builtins.str]] = None,
104
+ authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
105
+ description: Optional[pulumi.Input[builtins.str]] = None,
106
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
107
+ server_url: Optional[pulumi.Input[builtins.str]] = None,
108
+ service_endpoint_name: Optional[pulumi.Input[builtins.str]] = None):
109
+ """
110
+ Input properties used for looking up and filtering ServiceendpointBlackDuck resources.
111
+ :param pulumi.Input[builtins.str] api_token: The API token of the Black Duck Detect.
112
+ :param pulumi.Input[builtins.str] project_id: The ID of the project.
113
+ :param pulumi.Input[builtins.str] server_url: The server URL of the Black Duck Detect.
114
+ :param pulumi.Input[builtins.str] service_endpoint_name: The Service Endpoint name.
115
+ """
116
+ if api_token is not None:
117
+ pulumi.set(__self__, "api_token", api_token)
118
+ if authorization is not None:
119
+ pulumi.set(__self__, "authorization", authorization)
120
+ if description is not None:
121
+ pulumi.set(__self__, "description", description)
122
+ if project_id is not None:
123
+ pulumi.set(__self__, "project_id", project_id)
124
+ if server_url is not None:
125
+ pulumi.set(__self__, "server_url", server_url)
126
+ if service_endpoint_name is not None:
127
+ pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
128
+
129
+ @property
130
+ @pulumi.getter(name="apiToken")
131
+ def api_token(self) -> Optional[pulumi.Input[builtins.str]]:
132
+ """
133
+ The API token of the Black Duck Detect.
134
+ """
135
+ return pulumi.get(self, "api_token")
136
+
137
+ @api_token.setter
138
+ def api_token(self, value: Optional[pulumi.Input[builtins.str]]):
139
+ pulumi.set(self, "api_token", value)
140
+
141
+ @property
142
+ @pulumi.getter
143
+ def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
144
+ return pulumi.get(self, "authorization")
145
+
146
+ @authorization.setter
147
+ def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
148
+ pulumi.set(self, "authorization", value)
149
+
150
+ @property
151
+ @pulumi.getter
152
+ def description(self) -> Optional[pulumi.Input[builtins.str]]:
153
+ return pulumi.get(self, "description")
154
+
155
+ @description.setter
156
+ def description(self, value: Optional[pulumi.Input[builtins.str]]):
157
+ pulumi.set(self, "description", value)
158
+
159
+ @property
160
+ @pulumi.getter(name="projectId")
161
+ def project_id(self) -> Optional[pulumi.Input[builtins.str]]:
162
+ """
163
+ The ID of the project.
164
+ """
165
+ return pulumi.get(self, "project_id")
166
+
167
+ @project_id.setter
168
+ def project_id(self, value: Optional[pulumi.Input[builtins.str]]):
169
+ pulumi.set(self, "project_id", value)
170
+
171
+ @property
172
+ @pulumi.getter(name="serverUrl")
173
+ def server_url(self) -> Optional[pulumi.Input[builtins.str]]:
174
+ """
175
+ The server URL of the Black Duck Detect.
176
+ """
177
+ return pulumi.get(self, "server_url")
178
+
179
+ @server_url.setter
180
+ def server_url(self, value: Optional[pulumi.Input[builtins.str]]):
181
+ pulumi.set(self, "server_url", value)
182
+
183
+ @property
184
+ @pulumi.getter(name="serviceEndpointName")
185
+ def service_endpoint_name(self) -> Optional[pulumi.Input[builtins.str]]:
186
+ """
187
+ The Service Endpoint name.
188
+ """
189
+ return pulumi.get(self, "service_endpoint_name")
190
+
191
+ @service_endpoint_name.setter
192
+ def service_endpoint_name(self, value: Optional[pulumi.Input[builtins.str]]):
193
+ pulumi.set(self, "service_endpoint_name", value)
194
+
195
+
196
+ @pulumi.type_token("azuredevops:index/serviceendpointBlackDuck:ServiceendpointBlackDuck")
197
+ class ServiceendpointBlackDuck(pulumi.CustomResource):
198
+ @overload
199
+ def __init__(__self__,
200
+ resource_name: str,
201
+ opts: Optional[pulumi.ResourceOptions] = None,
202
+ api_token: Optional[pulumi.Input[builtins.str]] = None,
203
+ description: Optional[pulumi.Input[builtins.str]] = None,
204
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
205
+ server_url: Optional[pulumi.Input[builtins.str]] = None,
206
+ service_endpoint_name: Optional[pulumi.Input[builtins.str]] = None,
207
+ __props__=None):
208
+ """
209
+ Manages a Black Duck service endpoint within Azure DevOps. Using this service endpoint requires you to install: [Black Duck Detect](https://marketplace.visualstudio.com/items?itemName=blackduck.blackduck-detect)
210
+
211
+ ## Example Usage
212
+
213
+ ```python
214
+ import pulumi
215
+ import pulumi_azuredevops as azuredevops
216
+
217
+ example = azuredevops.Project("example",
218
+ name="Example Project",
219
+ visibility="private",
220
+ version_control="Git",
221
+ work_item_template="Agile",
222
+ description="Managed by Pulumi")
223
+ example_serviceendpoint_black_duck = azuredevops.ServiceendpointBlackDuck("example",
224
+ project_id=example.id,
225
+ server_url="https://blackduck.com/",
226
+ api_token="token",
227
+ service_endpoint_name="Example Black Duck",
228
+ description="Managed by Pulumi")
229
+ ```
230
+
231
+ ## Relevant Links
232
+
233
+ - [Azure DevOps Service REST API 7.0 - Endpoints](https://docs.microsoft.com/en-us/rest/api/azure/devops/serviceendpoint/endpoints?view=azure-devops-rest-7.0)
234
+
235
+ ## Import
236
+
237
+ Azure DevOps Black Duck Service Endpoint can be imported using **projectID/serviceEndpointID** or **projectName/serviceEndpointID**
238
+
239
+ ```sh
240
+ $ pulumi import azuredevops:index/serviceendpointBlackDuck:ServiceendpointBlackDuck example 00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000000
241
+ ```
242
+
243
+ :param str resource_name: The name of the resource.
244
+ :param pulumi.ResourceOptions opts: Options for the resource.
245
+ :param pulumi.Input[builtins.str] api_token: The API token of the Black Duck Detect.
246
+ :param pulumi.Input[builtins.str] project_id: The ID of the project.
247
+ :param pulumi.Input[builtins.str] server_url: The server URL of the Black Duck Detect.
248
+ :param pulumi.Input[builtins.str] service_endpoint_name: The Service Endpoint name.
249
+ """
250
+ ...
251
+ @overload
252
+ def __init__(__self__,
253
+ resource_name: str,
254
+ args: ServiceendpointBlackDuckArgs,
255
+ opts: Optional[pulumi.ResourceOptions] = None):
256
+ """
257
+ Manages a Black Duck service endpoint within Azure DevOps. Using this service endpoint requires you to install: [Black Duck Detect](https://marketplace.visualstudio.com/items?itemName=blackduck.blackduck-detect)
258
+
259
+ ## Example Usage
260
+
261
+ ```python
262
+ import pulumi
263
+ import pulumi_azuredevops as azuredevops
264
+
265
+ example = azuredevops.Project("example",
266
+ name="Example Project",
267
+ visibility="private",
268
+ version_control="Git",
269
+ work_item_template="Agile",
270
+ description="Managed by Pulumi")
271
+ example_serviceendpoint_black_duck = azuredevops.ServiceendpointBlackDuck("example",
272
+ project_id=example.id,
273
+ server_url="https://blackduck.com/",
274
+ api_token="token",
275
+ service_endpoint_name="Example Black Duck",
276
+ description="Managed by Pulumi")
277
+ ```
278
+
279
+ ## Relevant Links
280
+
281
+ - [Azure DevOps Service REST API 7.0 - Endpoints](https://docs.microsoft.com/en-us/rest/api/azure/devops/serviceendpoint/endpoints?view=azure-devops-rest-7.0)
282
+
283
+ ## Import
284
+
285
+ Azure DevOps Black Duck Service Endpoint can be imported using **projectID/serviceEndpointID** or **projectName/serviceEndpointID**
286
+
287
+ ```sh
288
+ $ pulumi import azuredevops:index/serviceendpointBlackDuck:ServiceendpointBlackDuck example 00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000000
289
+ ```
290
+
291
+ :param str resource_name: The name of the resource.
292
+ :param ServiceendpointBlackDuckArgs args: The arguments to use to populate this resource's properties.
293
+ :param pulumi.ResourceOptions opts: Options for the resource.
294
+ """
295
+ ...
296
+ def __init__(__self__, resource_name: str, *args, **kwargs):
297
+ resource_args, opts = _utilities.get_resource_args_opts(ServiceendpointBlackDuckArgs, pulumi.ResourceOptions, *args, **kwargs)
298
+ if resource_args is not None:
299
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
300
+ else:
301
+ __self__._internal_init(resource_name, *args, **kwargs)
302
+
303
+ def _internal_init(__self__,
304
+ resource_name: str,
305
+ opts: Optional[pulumi.ResourceOptions] = None,
306
+ api_token: Optional[pulumi.Input[builtins.str]] = None,
307
+ description: Optional[pulumi.Input[builtins.str]] = None,
308
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
309
+ server_url: Optional[pulumi.Input[builtins.str]] = None,
310
+ service_endpoint_name: Optional[pulumi.Input[builtins.str]] = None,
311
+ __props__=None):
312
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
313
+ if not isinstance(opts, pulumi.ResourceOptions):
314
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
315
+ if opts.id is None:
316
+ if __props__ is not None:
317
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
318
+ __props__ = ServiceendpointBlackDuckArgs.__new__(ServiceendpointBlackDuckArgs)
319
+
320
+ if api_token is None and not opts.urn:
321
+ raise TypeError("Missing required property 'api_token'")
322
+ __props__.__dict__["api_token"] = None if api_token is None else pulumi.Output.secret(api_token)
323
+ __props__.__dict__["description"] = description
324
+ if project_id is None and not opts.urn:
325
+ raise TypeError("Missing required property 'project_id'")
326
+ __props__.__dict__["project_id"] = project_id
327
+ if server_url is None and not opts.urn:
328
+ raise TypeError("Missing required property 'server_url'")
329
+ __props__.__dict__["server_url"] = server_url
330
+ if service_endpoint_name is None and not opts.urn:
331
+ raise TypeError("Missing required property 'service_endpoint_name'")
332
+ __props__.__dict__["service_endpoint_name"] = service_endpoint_name
333
+ __props__.__dict__["authorization"] = None
334
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apiToken"])
335
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
336
+ super(ServiceendpointBlackDuck, __self__).__init__(
337
+ 'azuredevops:index/serviceendpointBlackDuck:ServiceendpointBlackDuck',
338
+ resource_name,
339
+ __props__,
340
+ opts)
341
+
342
+ @staticmethod
343
+ def get(resource_name: str,
344
+ id: pulumi.Input[str],
345
+ opts: Optional[pulumi.ResourceOptions] = None,
346
+ api_token: Optional[pulumi.Input[builtins.str]] = None,
347
+ authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
348
+ description: Optional[pulumi.Input[builtins.str]] = None,
349
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
350
+ server_url: Optional[pulumi.Input[builtins.str]] = None,
351
+ service_endpoint_name: Optional[pulumi.Input[builtins.str]] = None) -> 'ServiceendpointBlackDuck':
352
+ """
353
+ Get an existing ServiceendpointBlackDuck resource's state with the given name, id, and optional extra
354
+ properties used to qualify the lookup.
355
+
356
+ :param str resource_name: The unique name of the resulting resource.
357
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
358
+ :param pulumi.ResourceOptions opts: Options for the resource.
359
+ :param pulumi.Input[builtins.str] api_token: The API token of the Black Duck Detect.
360
+ :param pulumi.Input[builtins.str] project_id: The ID of the project.
361
+ :param pulumi.Input[builtins.str] server_url: The server URL of the Black Duck Detect.
362
+ :param pulumi.Input[builtins.str] service_endpoint_name: The Service Endpoint name.
363
+ """
364
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
365
+
366
+ __props__ = _ServiceendpointBlackDuckState.__new__(_ServiceendpointBlackDuckState)
367
+
368
+ __props__.__dict__["api_token"] = api_token
369
+ __props__.__dict__["authorization"] = authorization
370
+ __props__.__dict__["description"] = description
371
+ __props__.__dict__["project_id"] = project_id
372
+ __props__.__dict__["server_url"] = server_url
373
+ __props__.__dict__["service_endpoint_name"] = service_endpoint_name
374
+ return ServiceendpointBlackDuck(resource_name, opts=opts, __props__=__props__)
375
+
376
+ @property
377
+ @pulumi.getter(name="apiToken")
378
+ def api_token(self) -> pulumi.Output[builtins.str]:
379
+ """
380
+ The API token of the Black Duck Detect.
381
+ """
382
+ return pulumi.get(self, "api_token")
383
+
384
+ @property
385
+ @pulumi.getter
386
+ def authorization(self) -> pulumi.Output[Mapping[str, builtins.str]]:
387
+ return pulumi.get(self, "authorization")
388
+
389
+ @property
390
+ @pulumi.getter
391
+ def description(self) -> pulumi.Output[Optional[builtins.str]]:
392
+ return pulumi.get(self, "description")
393
+
394
+ @property
395
+ @pulumi.getter(name="projectId")
396
+ def project_id(self) -> pulumi.Output[builtins.str]:
397
+ """
398
+ The ID of the project.
399
+ """
400
+ return pulumi.get(self, "project_id")
401
+
402
+ @property
403
+ @pulumi.getter(name="serverUrl")
404
+ def server_url(self) -> pulumi.Output[builtins.str]:
405
+ """
406
+ The server URL of the Black Duck Detect.
407
+ """
408
+ return pulumi.get(self, "server_url")
409
+
410
+ @property
411
+ @pulumi.getter(name="serviceEndpointName")
412
+ def service_endpoint_name(self) -> pulumi.Output[builtins.str]:
413
+ """
414
+ The Service Endpoint name.
415
+ """
416
+ return pulumi.get(self, "service_endpoint_name")
417
+
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -1,5 +1,5 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
5
  import builtins
@@ -20,59 +20,38 @@ __all__ = ['ServiceendpointGcpTerraformArgs', 'ServiceendpointGcpTerraform']
20
20
  @pulumi.input_type
21
21
  class ServiceendpointGcpTerraformArgs:
22
22
  def __init__(__self__, *,
23
- gcp_project_id: pulumi.Input[builtins.str],
24
- private_key: pulumi.Input[builtins.str],
25
23
  project_id: pulumi.Input[builtins.str],
26
24
  service_endpoint_name: pulumi.Input[builtins.str],
27
- token_uri: pulumi.Input[builtins.str],
28
25
  client_email: Optional[pulumi.Input[builtins.str]] = None,
29
26
  description: Optional[pulumi.Input[builtins.str]] = None,
30
- scope: Optional[pulumi.Input[builtins.str]] = None):
27
+ gcp_project_id: Optional[pulumi.Input[builtins.str]] = None,
28
+ private_key: Optional[pulumi.Input[builtins.str]] = None,
29
+ scope: Optional[pulumi.Input[builtins.str]] = None,
30
+ token_uri: Optional[pulumi.Input[builtins.str]] = None):
31
31
  """
32
32
  The set of arguments for constructing a ServiceendpointGcpTerraform resource.
33
- :param pulumi.Input[builtins.str] gcp_project_id: GCP project associated with the Service Connection.
34
- :param pulumi.Input[builtins.str] private_key: The client email field in the JSON key file for creating the JSON Web Token.
35
33
  :param pulumi.Input[builtins.str] project_id: The ID of the project.
36
34
  :param pulumi.Input[builtins.str] service_endpoint_name: The Service Endpoint name.
37
- :param pulumi.Input[builtins.str] token_uri: The token uri field in the JSON key file for creating the JSON Web Token.
38
35
  :param pulumi.Input[builtins.str] client_email: The client email field in the JSON key file for creating the JSON Web Token.
36
+ :param pulumi.Input[builtins.str] gcp_project_id: GCP project associated with the Service Connection.
37
+ :param pulumi.Input[builtins.str] private_key: The Private Key for connecting to the endpoint.
39
38
  :param pulumi.Input[builtins.str] scope: Scope to be provided.
39
+ :param pulumi.Input[builtins.str] token_uri: The token uri field in the JSON key file for creating the JSON Web Token.
40
40
  """
41
- pulumi.set(__self__, "gcp_project_id", gcp_project_id)
42
- pulumi.set(__self__, "private_key", private_key)
43
41
  pulumi.set(__self__, "project_id", project_id)
44
42
  pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
45
- pulumi.set(__self__, "token_uri", token_uri)
46
43
  if client_email is not None:
47
44
  pulumi.set(__self__, "client_email", client_email)
48
45
  if description is not None:
49
46
  pulumi.set(__self__, "description", description)
47
+ if gcp_project_id is not None:
48
+ pulumi.set(__self__, "gcp_project_id", gcp_project_id)
49
+ if private_key is not None:
50
+ pulumi.set(__self__, "private_key", private_key)
50
51
  if scope is not None:
51
52
  pulumi.set(__self__, "scope", scope)
52
-
53
- @property
54
- @pulumi.getter(name="gcpProjectId")
55
- def gcp_project_id(self) -> pulumi.Input[builtins.str]:
56
- """
57
- GCP project associated with the Service Connection.
58
- """
59
- return pulumi.get(self, "gcp_project_id")
60
-
61
- @gcp_project_id.setter
62
- def gcp_project_id(self, value: pulumi.Input[builtins.str]):
63
- pulumi.set(self, "gcp_project_id", value)
64
-
65
- @property
66
- @pulumi.getter(name="privateKey")
67
- def private_key(self) -> pulumi.Input[builtins.str]:
68
- """
69
- The client email field in the JSON key file for creating the JSON Web Token.
70
- """
71
- return pulumi.get(self, "private_key")
72
-
73
- @private_key.setter
74
- def private_key(self, value: pulumi.Input[builtins.str]):
75
- pulumi.set(self, "private_key", value)
53
+ if token_uri is not None:
54
+ pulumi.set(__self__, "token_uri", token_uri)
76
55
 
77
56
  @property
78
57
  @pulumi.getter(name="projectId")
@@ -98,18 +77,6 @@ class ServiceendpointGcpTerraformArgs:
98
77
  def service_endpoint_name(self, value: pulumi.Input[builtins.str]):
99
78
  pulumi.set(self, "service_endpoint_name", value)
100
79
 
101
- @property
102
- @pulumi.getter(name="tokenUri")
103
- def token_uri(self) -> pulumi.Input[builtins.str]:
104
- """
105
- The token uri field in the JSON key file for creating the JSON Web Token.
106
- """
107
- return pulumi.get(self, "token_uri")
108
-
109
- @token_uri.setter
110
- def token_uri(self, value: pulumi.Input[builtins.str]):
111
- pulumi.set(self, "token_uri", value)
112
-
113
80
  @property
114
81
  @pulumi.getter(name="clientEmail")
115
82
  def client_email(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -131,6 +98,30 @@ class ServiceendpointGcpTerraformArgs:
131
98
  def description(self, value: Optional[pulumi.Input[builtins.str]]):
132
99
  pulumi.set(self, "description", value)
133
100
 
101
+ @property
102
+ @pulumi.getter(name="gcpProjectId")
103
+ def gcp_project_id(self) -> Optional[pulumi.Input[builtins.str]]:
104
+ """
105
+ GCP project associated with the Service Connection.
106
+ """
107
+ return pulumi.get(self, "gcp_project_id")
108
+
109
+ @gcp_project_id.setter
110
+ def gcp_project_id(self, value: Optional[pulumi.Input[builtins.str]]):
111
+ pulumi.set(self, "gcp_project_id", value)
112
+
113
+ @property
114
+ @pulumi.getter(name="privateKey")
115
+ def private_key(self) -> Optional[pulumi.Input[builtins.str]]:
116
+ """
117
+ The Private Key for connecting to the endpoint.
118
+ """
119
+ return pulumi.get(self, "private_key")
120
+
121
+ @private_key.setter
122
+ def private_key(self, value: Optional[pulumi.Input[builtins.str]]):
123
+ pulumi.set(self, "private_key", value)
124
+
134
125
  @property
135
126
  @pulumi.getter
136
127
  def scope(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -143,6 +134,18 @@ class ServiceendpointGcpTerraformArgs:
143
134
  def scope(self, value: Optional[pulumi.Input[builtins.str]]):
144
135
  pulumi.set(self, "scope", value)
145
136
 
137
+ @property
138
+ @pulumi.getter(name="tokenUri")
139
+ def token_uri(self) -> Optional[pulumi.Input[builtins.str]]:
140
+ """
141
+ The token uri field in the JSON key file for creating the JSON Web Token.
142
+ """
143
+ return pulumi.get(self, "token_uri")
144
+
145
+ @token_uri.setter
146
+ def token_uri(self, value: Optional[pulumi.Input[builtins.str]]):
147
+ pulumi.set(self, "token_uri", value)
148
+
146
149
 
147
150
  @pulumi.input_type
148
151
  class _ServiceendpointGcpTerraformState:
@@ -160,7 +163,7 @@ class _ServiceendpointGcpTerraformState:
160
163
  Input properties used for looking up and filtering ServiceendpointGcpTerraform resources.
161
164
  :param pulumi.Input[builtins.str] client_email: The client email field in the JSON key file for creating the JSON Web Token.
162
165
  :param pulumi.Input[builtins.str] gcp_project_id: GCP project associated with the Service Connection.
163
- :param pulumi.Input[builtins.str] private_key: The client email field in the JSON key file for creating the JSON Web Token.
166
+ :param pulumi.Input[builtins.str] private_key: The Private Key for connecting to the endpoint.
164
167
  :param pulumi.Input[builtins.str] project_id: The ID of the project.
165
168
  :param pulumi.Input[builtins.str] scope: Scope to be provided.
166
169
  :param pulumi.Input[builtins.str] service_endpoint_name: The Service Endpoint name.
@@ -231,7 +234,7 @@ class _ServiceendpointGcpTerraformState:
231
234
  @pulumi.getter(name="privateKey")
232
235
  def private_key(self) -> Optional[pulumi.Input[builtins.str]]:
233
236
  """
234
- The client email field in the JSON key file for creating the JSON Web Token.
237
+ The Private Key for connecting to the endpoint.
235
238
  """
236
239
  return pulumi.get(self, "private_key")
237
240
 
@@ -342,7 +345,7 @@ class ServiceendpointGcpTerraform(pulumi.CustomResource):
342
345
  :param pulumi.ResourceOptions opts: Options for the resource.
343
346
  :param pulumi.Input[builtins.str] client_email: The client email field in the JSON key file for creating the JSON Web Token.
344
347
  :param pulumi.Input[builtins.str] gcp_project_id: GCP project associated with the Service Connection.
345
- :param pulumi.Input[builtins.str] private_key: The client email field in the JSON key file for creating the JSON Web Token.
348
+ :param pulumi.Input[builtins.str] private_key: The Private Key for connecting to the endpoint.
346
349
  :param pulumi.Input[builtins.str] project_id: The ID of the project.
347
350
  :param pulumi.Input[builtins.str] scope: Scope to be provided.
348
351
  :param pulumi.Input[builtins.str] service_endpoint_name: The Service Endpoint name.
@@ -423,11 +426,7 @@ class ServiceendpointGcpTerraform(pulumi.CustomResource):
423
426
 
424
427
  __props__.__dict__["client_email"] = client_email
425
428
  __props__.__dict__["description"] = description
426
- if gcp_project_id is None and not opts.urn:
427
- raise TypeError("Missing required property 'gcp_project_id'")
428
429
  __props__.__dict__["gcp_project_id"] = gcp_project_id
429
- if private_key is None and not opts.urn:
430
- raise TypeError("Missing required property 'private_key'")
431
430
  __props__.__dict__["private_key"] = None if private_key is None else pulumi.Output.secret(private_key)
432
431
  if project_id is None and not opts.urn:
433
432
  raise TypeError("Missing required property 'project_id'")
@@ -436,8 +435,6 @@ class ServiceendpointGcpTerraform(pulumi.CustomResource):
436
435
  if service_endpoint_name is None and not opts.urn:
437
436
  raise TypeError("Missing required property 'service_endpoint_name'")
438
437
  __props__.__dict__["service_endpoint_name"] = service_endpoint_name
439
- if token_uri is None and not opts.urn:
440
- raise TypeError("Missing required property 'token_uri'")
441
438
  __props__.__dict__["token_uri"] = token_uri
442
439
  __props__.__dict__["authorization"] = None
443
440
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["privateKey"])
@@ -470,7 +467,7 @@ class ServiceendpointGcpTerraform(pulumi.CustomResource):
470
467
  :param pulumi.ResourceOptions opts: Options for the resource.
471
468
  :param pulumi.Input[builtins.str] client_email: The client email field in the JSON key file for creating the JSON Web Token.
472
469
  :param pulumi.Input[builtins.str] gcp_project_id: GCP project associated with the Service Connection.
473
- :param pulumi.Input[builtins.str] private_key: The client email field in the JSON key file for creating the JSON Web Token.
470
+ :param pulumi.Input[builtins.str] private_key: The Private Key for connecting to the endpoint.
474
471
  :param pulumi.Input[builtins.str] project_id: The ID of the project.
475
472
  :param pulumi.Input[builtins.str] scope: Scope to be provided.
476
473
  :param pulumi.Input[builtins.str] service_endpoint_name: The Service Endpoint name.
@@ -521,7 +518,7 @@ class ServiceendpointGcpTerraform(pulumi.CustomResource):
521
518
  @pulumi.getter(name="privateKey")
522
519
  def private_key(self) -> pulumi.Output[builtins.str]:
523
520
  """
524
- The client email field in the JSON key file for creating the JSON Web Token.
521
+ The Private Key for connecting to the endpoint.
525
522
  """
526
523
  return pulumi.get(self, "private_key")
527
524