pulumi-azuredevops 3.7.0a1741238592__py3-none-any.whl → 3.8.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 (61) hide show
  1. pulumi_azuredevops/__init__.py +13 -0
  2. pulumi_azuredevops/_inputs.py +435 -26
  3. pulumi_azuredevops/build_definition.py +335 -0
  4. pulumi_azuredevops/dashboard.py +475 -0
  5. pulumi_azuredevops/feed_retention_policy.py +0 -22
  6. pulumi_azuredevops/get_build_definition.py +43 -1
  7. pulumi_azuredevops/get_client_config.py +61 -5
  8. pulumi_azuredevops/get_descriptor.py +133 -0
  9. pulumi_azuredevops/get_group_membership.py +131 -0
  10. pulumi_azuredevops/get_identity_group.py +20 -6
  11. pulumi_azuredevops/get_identity_groups.py +2 -2
  12. pulumi_azuredevops/get_identity_users.py +19 -5
  13. pulumi_azuredevops/get_storage_key.py +133 -0
  14. pulumi_azuredevops/get_teams.py +2 -2
  15. pulumi_azuredevops/get_user.py +193 -0
  16. pulumi_azuredevops/get_users.py +4 -0
  17. pulumi_azuredevops/outputs.py +558 -19
  18. pulumi_azuredevops/pulumi-plugin.json +1 -1
  19. pulumi_azuredevops/service_endpoint_artifactory.py +1 -15
  20. pulumi_azuredevops/service_endpoint_aws.py +1 -15
  21. pulumi_azuredevops/service_endpoint_azure_dev_ops.py +1 -15
  22. pulumi_azuredevops/service_endpoint_azure_ecr.py +13 -27
  23. pulumi_azuredevops/service_endpoint_azure_rm.py +9 -15
  24. pulumi_azuredevops/service_endpoint_bit_bucket.py +1 -15
  25. pulumi_azuredevops/service_endpoint_docker_registry.py +1 -15
  26. pulumi_azuredevops/service_endpoint_generic.py +1 -15
  27. pulumi_azuredevops/service_endpoint_generic_git.py +1 -15
  28. pulumi_azuredevops/service_endpoint_git_hub.py +1 -15
  29. pulumi_azuredevops/service_endpoint_git_hub_enterprise.py +1 -15
  30. pulumi_azuredevops/service_endpoint_git_lab.py +1 -15
  31. pulumi_azuredevops/service_endpoint_kubernetes.py +1 -15
  32. pulumi_azuredevops/service_endpoint_npm.py +1 -15
  33. pulumi_azuredevops/service_endpoint_pipeline.py +1 -15
  34. pulumi_azuredevops/service_endpoint_service_fabric.py +1 -15
  35. pulumi_azuredevops/service_endpoint_sonar_cloud.py +1 -15
  36. pulumi_azuredevops/service_endpoint_sonar_qube.py +1 -15
  37. pulumi_azuredevops/service_endpoint_ssh.py +1 -15
  38. pulumi_azuredevops/serviceendpoint_argocd.py +1 -15
  39. pulumi_azuredevops/serviceendpoint_azure_service_bus.py +1 -15
  40. pulumi_azuredevops/serviceendpoint_checkmarx_one.py +1 -15
  41. pulumi_azuredevops/serviceendpoint_checkmarx_sast.py +1 -15
  42. pulumi_azuredevops/serviceendpoint_checkmarx_sca.py +1 -15
  43. pulumi_azuredevops/serviceendpoint_dynamics_lifecycle_services.py +1 -15
  44. pulumi_azuredevops/serviceendpoint_externaltfs.py +1 -15
  45. pulumi_azuredevops/serviceendpoint_gcp_terraform.py +1 -15
  46. pulumi_azuredevops/serviceendpoint_incomingwebhook.py +1 -15
  47. pulumi_azuredevops/serviceendpoint_jenkins.py +1 -15
  48. pulumi_azuredevops/serviceendpoint_jfrog_artifactory_v2.py +1 -15
  49. pulumi_azuredevops/serviceendpoint_jfrog_distribution_v2.py +1 -15
  50. pulumi_azuredevops/serviceendpoint_jfrog_platform_v2.py +1 -15
  51. pulumi_azuredevops/serviceendpoint_jfrog_xray_v2.py +1 -15
  52. pulumi_azuredevops/serviceendpoint_maven.py +1 -15
  53. pulumi_azuredevops/serviceendpoint_nexus.py +1 -15
  54. pulumi_azuredevops/serviceendpoint_nuget.py +1 -15
  55. pulumi_azuredevops/serviceendpoint_octopusdeploy.py +1 -15
  56. pulumi_azuredevops/serviceendpoint_snyk.py +1 -15
  57. pulumi_azuredevops/serviceendpoint_visualstudiomarketplace.py +1 -15
  58. {pulumi_azuredevops-3.7.0a1741238592.dist-info → pulumi_azuredevops-3.8.0.dist-info}/METADATA +1 -1
  59. {pulumi_azuredevops-3.7.0a1741238592.dist-info → pulumi_azuredevops-3.8.0.dist-info}/RECORD +61 -56
  60. {pulumi_azuredevops-3.7.0a1741238592.dist-info → pulumi_azuredevops-3.8.0.dist-info}/WHEEL +1 -1
  61. {pulumi_azuredevops-3.7.0a1741238592.dist-info → pulumi_azuredevops-3.8.0.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "azuredevops",
4
- "version": "3.7.0-alpha.1741238592"
4
+ "version": "3.8.0"
5
5
  }
@@ -26,7 +26,6 @@ class ServiceEndpointArtifactoryArgs:
26
26
  url: pulumi.Input[str],
27
27
  authentication_basic: Optional[pulumi.Input['ServiceEndpointArtifactoryAuthenticationBasicArgs']] = None,
28
28
  authentication_token: Optional[pulumi.Input['ServiceEndpointArtifactoryAuthenticationTokenArgs']] = None,
29
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
30
29
  description: Optional[pulumi.Input[str]] = None):
31
30
  """
32
31
  The set of arguments for constructing a ServiceEndpointArtifactory resource.
@@ -45,8 +44,6 @@ class ServiceEndpointArtifactoryArgs:
45
44
  pulumi.set(__self__, "authentication_basic", authentication_basic)
46
45
  if authentication_token is not None:
47
46
  pulumi.set(__self__, "authentication_token", authentication_token)
48
- if authorization is not None:
49
- pulumi.set(__self__, "authorization", authorization)
50
47
  if description is not None:
51
48
  pulumi.set(__self__, "description", description)
52
49
 
@@ -109,15 +106,6 @@ class ServiceEndpointArtifactoryArgs:
109
106
  def authentication_token(self, value: Optional[pulumi.Input['ServiceEndpointArtifactoryAuthenticationTokenArgs']]):
110
107
  pulumi.set(self, "authentication_token", value)
111
108
 
112
- @property
113
- @pulumi.getter
114
- def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
115
- return pulumi.get(self, "authorization")
116
-
117
- @authorization.setter
118
- def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
119
- pulumi.set(self, "authorization", value)
120
-
121
109
  @property
122
110
  @pulumi.getter
123
111
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -254,7 +242,6 @@ class ServiceEndpointArtifactory(pulumi.CustomResource):
254
242
  opts: Optional[pulumi.ResourceOptions] = None,
255
243
  authentication_basic: Optional[pulumi.Input[Union['ServiceEndpointArtifactoryAuthenticationBasicArgs', 'ServiceEndpointArtifactoryAuthenticationBasicArgsDict']]] = None,
256
244
  authentication_token: Optional[pulumi.Input[Union['ServiceEndpointArtifactoryAuthenticationTokenArgs', 'ServiceEndpointArtifactoryAuthenticationTokenArgsDict']]] = None,
257
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
258
245
  description: Optional[pulumi.Input[str]] = None,
259
246
  project_id: Optional[pulumi.Input[str]] = None,
260
247
  service_endpoint_name: Optional[pulumi.Input[str]] = None,
@@ -413,7 +400,6 @@ class ServiceEndpointArtifactory(pulumi.CustomResource):
413
400
  opts: Optional[pulumi.ResourceOptions] = None,
414
401
  authentication_basic: Optional[pulumi.Input[Union['ServiceEndpointArtifactoryAuthenticationBasicArgs', 'ServiceEndpointArtifactoryAuthenticationBasicArgsDict']]] = None,
415
402
  authentication_token: Optional[pulumi.Input[Union['ServiceEndpointArtifactoryAuthenticationTokenArgs', 'ServiceEndpointArtifactoryAuthenticationTokenArgsDict']]] = None,
416
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
417
403
  description: Optional[pulumi.Input[str]] = None,
418
404
  project_id: Optional[pulumi.Input[str]] = None,
419
405
  service_endpoint_name: Optional[pulumi.Input[str]] = None,
@@ -429,7 +415,6 @@ class ServiceEndpointArtifactory(pulumi.CustomResource):
429
415
 
430
416
  __props__.__dict__["authentication_basic"] = authentication_basic
431
417
  __props__.__dict__["authentication_token"] = authentication_token
432
- __props__.__dict__["authorization"] = authorization
433
418
  __props__.__dict__["description"] = description
434
419
  if project_id is None and not opts.urn:
435
420
  raise TypeError("Missing required property 'project_id'")
@@ -440,6 +425,7 @@ class ServiceEndpointArtifactory(pulumi.CustomResource):
440
425
  if url is None and not opts.urn:
441
426
  raise TypeError("Missing required property 'url'")
442
427
  __props__.__dict__["url"] = url
428
+ __props__.__dict__["authorization"] = None
443
429
  super(ServiceEndpointArtifactory, __self__).__init__(
444
430
  'azuredevops:index/serviceEndpointArtifactory:ServiceEndpointArtifactory',
445
431
  resource_name,
@@ -22,7 +22,6 @@ class ServiceEndpointAwsArgs:
22
22
  project_id: pulumi.Input[str],
23
23
  service_endpoint_name: pulumi.Input[str],
24
24
  access_key_id: Optional[pulumi.Input[str]] = None,
25
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
26
25
  description: Optional[pulumi.Input[str]] = None,
27
26
  external_id: Optional[pulumi.Input[str]] = None,
28
27
  role_session_name: Optional[pulumi.Input[str]] = None,
@@ -46,8 +45,6 @@ class ServiceEndpointAwsArgs:
46
45
  pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
47
46
  if access_key_id is not None:
48
47
  pulumi.set(__self__, "access_key_id", access_key_id)
49
- if authorization is not None:
50
- pulumi.set(__self__, "authorization", authorization)
51
48
  if description is not None:
52
49
  pulumi.set(__self__, "description", description)
53
50
  if external_id is not None:
@@ -99,15 +96,6 @@ class ServiceEndpointAwsArgs:
99
96
  def access_key_id(self, value: Optional[pulumi.Input[str]]):
100
97
  pulumi.set(self, "access_key_id", value)
101
98
 
102
- @property
103
- @pulumi.getter
104
- def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
105
- return pulumi.get(self, "authorization")
106
-
107
- @authorization.setter
108
- def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
109
- pulumi.set(self, "authorization", value)
110
-
111
99
  @property
112
100
  @pulumi.getter
113
101
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -372,7 +360,6 @@ class ServiceEndpointAws(pulumi.CustomResource):
372
360
  resource_name: str,
373
361
  opts: Optional[pulumi.ResourceOptions] = None,
374
362
  access_key_id: Optional[pulumi.Input[str]] = None,
375
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
376
363
  description: Optional[pulumi.Input[str]] = None,
377
364
  external_id: Optional[pulumi.Input[str]] = None,
378
365
  project_id: Optional[pulumi.Input[str]] = None,
@@ -489,7 +476,6 @@ class ServiceEndpointAws(pulumi.CustomResource):
489
476
  resource_name: str,
490
477
  opts: Optional[pulumi.ResourceOptions] = None,
491
478
  access_key_id: Optional[pulumi.Input[str]] = None,
492
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
493
479
  description: Optional[pulumi.Input[str]] = None,
494
480
  external_id: Optional[pulumi.Input[str]] = None,
495
481
  project_id: Optional[pulumi.Input[str]] = None,
@@ -509,7 +495,6 @@ class ServiceEndpointAws(pulumi.CustomResource):
509
495
  __props__ = ServiceEndpointAwsArgs.__new__(ServiceEndpointAwsArgs)
510
496
 
511
497
  __props__.__dict__["access_key_id"] = access_key_id
512
- __props__.__dict__["authorization"] = authorization
513
498
  __props__.__dict__["description"] = description
514
499
  __props__.__dict__["external_id"] = external_id
515
500
  if project_id is None and not opts.urn:
@@ -523,6 +508,7 @@ class ServiceEndpointAws(pulumi.CustomResource):
523
508
  __props__.__dict__["service_endpoint_name"] = service_endpoint_name
524
509
  __props__.__dict__["session_token"] = None if session_token is None else pulumi.Output.secret(session_token)
525
510
  __props__.__dict__["use_oidc"] = use_oidc
511
+ __props__.__dict__["authorization"] = None
526
512
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["secretAccessKey", "sessionToken"])
527
513
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
528
514
  super(ServiceEndpointAws, __self__).__init__(
@@ -24,7 +24,6 @@ class ServiceEndpointAzureDevOpsArgs:
24
24
  project_id: pulumi.Input[str],
25
25
  release_api_url: pulumi.Input[str],
26
26
  service_endpoint_name: pulumi.Input[str],
27
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
28
27
  description: Optional[pulumi.Input[str]] = None):
29
28
  """
30
29
  The set of arguments for constructing a ServiceEndpointAzureDevOps resource.
@@ -39,8 +38,6 @@ class ServiceEndpointAzureDevOpsArgs:
39
38
  pulumi.set(__self__, "project_id", project_id)
40
39
  pulumi.set(__self__, "release_api_url", release_api_url)
41
40
  pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
42
- if authorization is not None:
43
- pulumi.set(__self__, "authorization", authorization)
44
41
  if description is not None:
45
42
  pulumi.set(__self__, "description", description)
46
43
 
@@ -104,15 +101,6 @@ class ServiceEndpointAzureDevOpsArgs:
104
101
  def service_endpoint_name(self, value: pulumi.Input[str]):
105
102
  pulumi.set(self, "service_endpoint_name", value)
106
103
 
107
- @property
108
- @pulumi.getter
109
- def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
110
- return pulumi.get(self, "authorization")
111
-
112
- @authorization.setter
113
- def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
114
- pulumi.set(self, "authorization", value)
115
-
116
104
  @property
117
105
  @pulumi.getter
118
106
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -240,7 +228,6 @@ class ServiceEndpointAzureDevOps(pulumi.CustomResource):
240
228
  def __init__(__self__,
241
229
  resource_name: str,
242
230
  opts: Optional[pulumi.ResourceOptions] = None,
243
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
244
231
  description: Optional[pulumi.Input[str]] = None,
245
232
  org_url: Optional[pulumi.Input[str]] = None,
246
233
  personal_access_token: Optional[pulumi.Input[str]] = None,
@@ -357,7 +344,6 @@ class ServiceEndpointAzureDevOps(pulumi.CustomResource):
357
344
  def _internal_init(__self__,
358
345
  resource_name: str,
359
346
  opts: Optional[pulumi.ResourceOptions] = None,
360
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
361
347
  description: Optional[pulumi.Input[str]] = None,
362
348
  org_url: Optional[pulumi.Input[str]] = None,
363
349
  personal_access_token: Optional[pulumi.Input[str]] = None,
@@ -373,7 +359,6 @@ class ServiceEndpointAzureDevOps(pulumi.CustomResource):
373
359
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
374
360
  __props__ = ServiceEndpointAzureDevOpsArgs.__new__(ServiceEndpointAzureDevOpsArgs)
375
361
 
376
- __props__.__dict__["authorization"] = authorization
377
362
  __props__.__dict__["description"] = description
378
363
  if org_url is None and not opts.urn:
379
364
  raise TypeError("Missing required property 'org_url'")
@@ -390,6 +375,7 @@ class ServiceEndpointAzureDevOps(pulumi.CustomResource):
390
375
  if service_endpoint_name is None and not opts.urn:
391
376
  raise TypeError("Missing required property 'service_endpoint_name'")
392
377
  __props__.__dict__["service_endpoint_name"] = service_endpoint_name
378
+ __props__.__dict__["authorization"] = None
393
379
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["personalAccessToken"])
394
380
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
395
381
  super(ServiceEndpointAzureDevOps, __self__).__init__(
@@ -27,7 +27,6 @@ class ServiceEndpointAzureEcrArgs:
27
27
  azurecr_subscription_name: pulumi.Input[str],
28
28
  project_id: pulumi.Input[str],
29
29
  service_endpoint_name: pulumi.Input[str],
30
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
31
30
  credentials: Optional[pulumi.Input['ServiceEndpointAzureEcrCredentialsArgs']] = None,
32
31
  description: Optional[pulumi.Input[str]] = None,
33
32
  resource_group: Optional[pulumi.Input[str]] = None,
@@ -50,8 +49,6 @@ class ServiceEndpointAzureEcrArgs:
50
49
  pulumi.set(__self__, "azurecr_subscription_name", azurecr_subscription_name)
51
50
  pulumi.set(__self__, "project_id", project_id)
52
51
  pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
53
- if authorization is not None:
54
- pulumi.set(__self__, "authorization", authorization)
55
52
  if credentials is not None:
56
53
  pulumi.set(__self__, "credentials", credentials)
57
54
  if description is not None:
@@ -133,15 +130,6 @@ class ServiceEndpointAzureEcrArgs:
133
130
  def service_endpoint_name(self, value: pulumi.Input[str]):
134
131
  pulumi.set(self, "service_endpoint_name", value)
135
132
 
136
- @property
137
- @pulumi.getter
138
- def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
139
- return pulumi.get(self, "authorization")
140
-
141
- @authorization.setter
142
- def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
143
- pulumi.set(self, "authorization", value)
144
-
145
133
  @property
146
134
  @pulumi.getter
147
135
  def credentials(self) -> Optional[pulumi.Input['ServiceEndpointAzureEcrCredentialsArgs']]:
@@ -220,9 +208,9 @@ class _ServiceEndpointAzureEcrState:
220
208
  :param pulumi.Input[str] resource_group: The resource group to which the container registry belongs.
221
209
  :param pulumi.Input[str] service_endpoint_authentication_scheme: Specifies the type of azurerm endpoint, either `WorkloadIdentityFederation`, `ManagedServiceIdentity` or `ServicePrincipal`. Defaults to `ServicePrincipal` for backwards compatibility. `ManagedServiceIdentity` has not yet been implemented for this resource.
222
210
  :param pulumi.Input[str] service_endpoint_name: The name you will use to refer to this service connection in task inputs.
223
- :param pulumi.Input[str] service_principal_id: The service principal ID.
224
- :param pulumi.Input[str] workload_identity_federation_issuer: The issuer of the workload identity federation service principal.
225
- :param pulumi.Input[str] workload_identity_federation_subject: The subject of the workload identity federation service principal.
211
+ :param pulumi.Input[str] service_principal_id: The Application(Client) ID of the Service Principal.
212
+ :param pulumi.Input[str] workload_identity_federation_issuer: The issuer if `service_endpoint_authentication_scheme` is set to `WorkloadIdentityFederation`. This looks like `https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000`, where the GUID is the Organization ID of your Azure DevOps Organisation.
213
+ :param pulumi.Input[str] workload_identity_federation_subject: The subject if `service_endpoint_authentication_scheme` is set to `WorkloadIdentityFederation`. This looks like `sc://<organisation>/<project>/<service-connection-name>`.
226
214
  """
227
215
  if app_object_id is not None:
228
216
  pulumi.set(__self__, "app_object_id", app_object_id)
@@ -418,7 +406,7 @@ class _ServiceEndpointAzureEcrState:
418
406
  @pulumi.getter(name="servicePrincipalId")
419
407
  def service_principal_id(self) -> Optional[pulumi.Input[str]]:
420
408
  """
421
- The service principal ID.
409
+ The Application(Client) ID of the Service Principal.
422
410
  """
423
411
  return pulumi.get(self, "service_principal_id")
424
412
 
@@ -439,7 +427,7 @@ class _ServiceEndpointAzureEcrState:
439
427
  @pulumi.getter(name="workloadIdentityFederationIssuer")
440
428
  def workload_identity_federation_issuer(self) -> Optional[pulumi.Input[str]]:
441
429
  """
442
- The issuer of the workload identity federation service principal.
430
+ The issuer if `service_endpoint_authentication_scheme` is set to `WorkloadIdentityFederation`. This looks like `https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000`, where the GUID is the Organization ID of your Azure DevOps Organisation.
443
431
  """
444
432
  return pulumi.get(self, "workload_identity_federation_issuer")
445
433
 
@@ -451,7 +439,7 @@ class _ServiceEndpointAzureEcrState:
451
439
  @pulumi.getter(name="workloadIdentityFederationSubject")
452
440
  def workload_identity_federation_subject(self) -> Optional[pulumi.Input[str]]:
453
441
  """
454
- The subject of the workload identity federation service principal.
442
+ The subject if `service_endpoint_authentication_scheme` is set to `WorkloadIdentityFederation`. This looks like `sc://<organisation>/<project>/<service-connection-name>`.
455
443
  """
456
444
  return pulumi.get(self, "workload_identity_federation_subject")
457
445
 
@@ -465,7 +453,6 @@ class ServiceEndpointAzureEcr(pulumi.CustomResource):
465
453
  def __init__(__self__,
466
454
  resource_name: str,
467
455
  opts: Optional[pulumi.ResourceOptions] = None,
468
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
469
456
  azurecr_name: Optional[pulumi.Input[str]] = None,
470
457
  azurecr_spn_tenantid: Optional[pulumi.Input[str]] = None,
471
458
  azurecr_subscription_id: Optional[pulumi.Input[str]] = None,
@@ -674,7 +661,6 @@ class ServiceEndpointAzureEcr(pulumi.CustomResource):
674
661
  def _internal_init(__self__,
675
662
  resource_name: str,
676
663
  opts: Optional[pulumi.ResourceOptions] = None,
677
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
678
664
  azurecr_name: Optional[pulumi.Input[str]] = None,
679
665
  azurecr_spn_tenantid: Optional[pulumi.Input[str]] = None,
680
666
  azurecr_subscription_id: Optional[pulumi.Input[str]] = None,
@@ -694,7 +680,6 @@ class ServiceEndpointAzureEcr(pulumi.CustomResource):
694
680
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
695
681
  __props__ = ServiceEndpointAzureEcrArgs.__new__(ServiceEndpointAzureEcrArgs)
696
682
 
697
- __props__.__dict__["authorization"] = authorization
698
683
  if azurecr_name is None and not opts.urn:
699
684
  raise TypeError("Missing required property 'azurecr_name'")
700
685
  __props__.__dict__["azurecr_name"] = azurecr_name
@@ -718,6 +703,7 @@ class ServiceEndpointAzureEcr(pulumi.CustomResource):
718
703
  raise TypeError("Missing required property 'service_endpoint_name'")
719
704
  __props__.__dict__["service_endpoint_name"] = service_endpoint_name
720
705
  __props__.__dict__["app_object_id"] = None
706
+ __props__.__dict__["authorization"] = None
721
707
  __props__.__dict__["az_spn_role_assignment_id"] = None
722
708
  __props__.__dict__["az_spn_role_permissions"] = None
723
709
  __props__.__dict__["service_principal_id"] = None
@@ -768,9 +754,9 @@ class ServiceEndpointAzureEcr(pulumi.CustomResource):
768
754
  :param pulumi.Input[str] resource_group: The resource group to which the container registry belongs.
769
755
  :param pulumi.Input[str] service_endpoint_authentication_scheme: Specifies the type of azurerm endpoint, either `WorkloadIdentityFederation`, `ManagedServiceIdentity` or `ServicePrincipal`. Defaults to `ServicePrincipal` for backwards compatibility. `ManagedServiceIdentity` has not yet been implemented for this resource.
770
756
  :param pulumi.Input[str] service_endpoint_name: The name you will use to refer to this service connection in task inputs.
771
- :param pulumi.Input[str] service_principal_id: The service principal ID.
772
- :param pulumi.Input[str] workload_identity_federation_issuer: The issuer of the workload identity federation service principal.
773
- :param pulumi.Input[str] workload_identity_federation_subject: The subject of the workload identity federation service principal.
757
+ :param pulumi.Input[str] service_principal_id: The Application(Client) ID of the Service Principal.
758
+ :param pulumi.Input[str] workload_identity_federation_issuer: The issuer if `service_endpoint_authentication_scheme` is set to `WorkloadIdentityFederation`. This looks like `https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000`, where the GUID is the Organization ID of your Azure DevOps Organisation.
759
+ :param pulumi.Input[str] workload_identity_federation_subject: The subject if `service_endpoint_authentication_scheme` is set to `WorkloadIdentityFederation`. This looks like `sc://<organisation>/<project>/<service-connection-name>`.
774
760
  """
775
761
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
776
762
 
@@ -897,7 +883,7 @@ class ServiceEndpointAzureEcr(pulumi.CustomResource):
897
883
  @pulumi.getter(name="servicePrincipalId")
898
884
  def service_principal_id(self) -> pulumi.Output[str]:
899
885
  """
900
- The service principal ID.
886
+ The Application(Client) ID of the Service Principal.
901
887
  """
902
888
  return pulumi.get(self, "service_principal_id")
903
889
 
@@ -910,7 +896,7 @@ class ServiceEndpointAzureEcr(pulumi.CustomResource):
910
896
  @pulumi.getter(name="workloadIdentityFederationIssuer")
911
897
  def workload_identity_federation_issuer(self) -> pulumi.Output[str]:
912
898
  """
913
- The issuer of the workload identity federation service principal.
899
+ The issuer if `service_endpoint_authentication_scheme` is set to `WorkloadIdentityFederation`. This looks like `https://vstoken.dev.azure.com/00000000-0000-0000-0000-000000000000`, where the GUID is the Organization ID of your Azure DevOps Organisation.
914
900
  """
915
901
  return pulumi.get(self, "workload_identity_federation_issuer")
916
902
 
@@ -918,7 +904,7 @@ class ServiceEndpointAzureEcr(pulumi.CustomResource):
918
904
  @pulumi.getter(name="workloadIdentityFederationSubject")
919
905
  def workload_identity_federation_subject(self) -> pulumi.Output[str]:
920
906
  """
921
- The subject of the workload identity federation service principal.
907
+ The subject if `service_endpoint_authentication_scheme` is set to `WorkloadIdentityFederation`. This looks like `sc://<organisation>/<project>/<service-connection-name>`.
922
908
  """
923
909
  return pulumi.get(self, "workload_identity_federation_subject")
924
910
 
@@ -24,7 +24,6 @@ class ServiceEndpointAzureRMArgs:
24
24
  azurerm_spn_tenantid: pulumi.Input[str],
25
25
  project_id: pulumi.Input[str],
26
26
  service_endpoint_name: pulumi.Input[str],
27
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
28
27
  azurerm_management_group_id: Optional[pulumi.Input[str]] = None,
29
28
  azurerm_management_group_name: Optional[pulumi.Input[str]] = None,
30
29
  azurerm_subscription_id: Optional[pulumi.Input[str]] = None,
@@ -60,8 +59,6 @@ class ServiceEndpointAzureRMArgs:
60
59
  pulumi.set(__self__, "azurerm_spn_tenantid", azurerm_spn_tenantid)
61
60
  pulumi.set(__self__, "project_id", project_id)
62
61
  pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
63
- if authorization is not None:
64
- pulumi.set(__self__, "authorization", authorization)
65
62
  if azurerm_management_group_id is not None:
66
63
  pulumi.set(__self__, "azurerm_management_group_id", azurerm_management_group_id)
67
64
  if azurerm_management_group_name is not None:
@@ -121,15 +118,6 @@ class ServiceEndpointAzureRMArgs:
121
118
  def service_endpoint_name(self, value: pulumi.Input[str]):
122
119
  pulumi.set(self, "service_endpoint_name", value)
123
120
 
124
- @property
125
- @pulumi.getter
126
- def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
127
- return pulumi.get(self, "authorization")
128
-
129
- @authorization.setter
130
- def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
131
- pulumi.set(self, "authorization", value)
132
-
133
121
  @property
134
122
  @pulumi.getter(name="azurermManagementGroupId")
135
123
  def azurerm_management_group_id(self) -> Optional[pulumi.Input[str]]:
@@ -572,7 +560,6 @@ class ServiceEndpointAzureRM(pulumi.CustomResource):
572
560
  def __init__(__self__,
573
561
  resource_name: str,
574
562
  opts: Optional[pulumi.ResourceOptions] = None,
575
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
576
563
  azurerm_management_group_id: Optional[pulumi.Input[str]] = None,
577
564
  azurerm_management_group_name: Optional[pulumi.Input[str]] = None,
578
565
  azurerm_spn_tenantid: Optional[pulumi.Input[str]] = None,
@@ -591,6 +578,10 @@ class ServiceEndpointAzureRM(pulumi.CustomResource):
591
578
  """
592
579
  Manages Manual or Automatic Azure Resource Manager service endpoint within Azure DevOps.
593
580
 
581
+ ~>**NOTE:**
582
+ If you receive an error message like:```Failed to obtain the Json Web Token(JWT) using service principal client ID. Exception message: A configuration issue is preventing authentication - check the error message from the server for details.```
583
+ You should check the secret of this Application or if you recently rotate the secret, wait a few minutes for Azure to propagate the secret.
584
+
594
585
  ## Requirements (Manual AzureRM Service Endpoint)
595
586
 
596
587
  Before to create a service end point in Azure DevOps, you need to create a Service Principal in your Azure subscription.
@@ -794,6 +785,10 @@ class ServiceEndpointAzureRM(pulumi.CustomResource):
794
785
  """
795
786
  Manages Manual or Automatic Azure Resource Manager service endpoint within Azure DevOps.
796
787
 
788
+ ~>**NOTE:**
789
+ If you receive an error message like:```Failed to obtain the Json Web Token(JWT) using service principal client ID. Exception message: A configuration issue is preventing authentication - check the error message from the server for details.```
790
+ You should check the secret of this Application or if you recently rotate the secret, wait a few minutes for Azure to propagate the secret.
791
+
797
792
  ## Requirements (Manual AzureRM Service Endpoint)
798
793
 
799
794
  Before to create a service end point in Azure DevOps, you need to create a Service Principal in your Azure subscription.
@@ -982,7 +977,6 @@ class ServiceEndpointAzureRM(pulumi.CustomResource):
982
977
  def _internal_init(__self__,
983
978
  resource_name: str,
984
979
  opts: Optional[pulumi.ResourceOptions] = None,
985
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
986
980
  azurerm_management_group_id: Optional[pulumi.Input[str]] = None,
987
981
  azurerm_management_group_name: Optional[pulumi.Input[str]] = None,
988
982
  azurerm_spn_tenantid: Optional[pulumi.Input[str]] = None,
@@ -1006,7 +1000,6 @@ class ServiceEndpointAzureRM(pulumi.CustomResource):
1006
1000
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1007
1001
  __props__ = ServiceEndpointAzureRMArgs.__new__(ServiceEndpointAzureRMArgs)
1008
1002
 
1009
- __props__.__dict__["authorization"] = authorization
1010
1003
  __props__.__dict__["azurerm_management_group_id"] = azurerm_management_group_id
1011
1004
  __props__.__dict__["azurerm_management_group_name"] = azurerm_management_group_name
1012
1005
  if azurerm_spn_tenantid is None and not opts.urn:
@@ -1027,6 +1020,7 @@ class ServiceEndpointAzureRM(pulumi.CustomResource):
1027
1020
  if service_endpoint_name is None and not opts.urn:
1028
1021
  raise TypeError("Missing required property 'service_endpoint_name'")
1029
1022
  __props__.__dict__["service_endpoint_name"] = service_endpoint_name
1023
+ __props__.__dict__["authorization"] = None
1030
1024
  __props__.__dict__["service_principal_id"] = None
1031
1025
  __props__.__dict__["workload_identity_federation_issuer"] = None
1032
1026
  __props__.__dict__["workload_identity_federation_subject"] = None
@@ -23,7 +23,6 @@ class ServiceEndpointBitBucketArgs:
23
23
  project_id: pulumi.Input[str],
24
24
  service_endpoint_name: pulumi.Input[str],
25
25
  username: pulumi.Input[str],
26
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
26
  description: Optional[pulumi.Input[str]] = None):
28
27
  """
29
28
  The set of arguments for constructing a ServiceEndpointBitBucket resource.
@@ -36,8 +35,6 @@ class ServiceEndpointBitBucketArgs:
36
35
  pulumi.set(__self__, "project_id", project_id)
37
36
  pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
38
37
  pulumi.set(__self__, "username", username)
39
- if authorization is not None:
40
- pulumi.set(__self__, "authorization", authorization)
41
38
  if description is not None:
42
39
  pulumi.set(__self__, "description", description)
43
40
 
@@ -89,15 +86,6 @@ class ServiceEndpointBitBucketArgs:
89
86
  def username(self, value: pulumi.Input[str]):
90
87
  pulumi.set(self, "username", value)
91
88
 
92
- @property
93
- @pulumi.getter
94
- def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
95
- return pulumi.get(self, "authorization")
96
-
97
- @authorization.setter
98
- def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
99
- pulumi.set(self, "authorization", value)
100
-
101
89
  @property
102
90
  @pulumi.getter
103
91
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -209,7 +197,6 @@ class ServiceEndpointBitBucket(pulumi.CustomResource):
209
197
  def __init__(__self__,
210
198
  resource_name: str,
211
199
  opts: Optional[pulumi.ResourceOptions] = None,
212
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
213
200
  description: Optional[pulumi.Input[str]] = None,
214
201
  password: Optional[pulumi.Input[str]] = None,
215
202
  project_id: Optional[pulumi.Input[str]] = None,
@@ -314,7 +301,6 @@ class ServiceEndpointBitBucket(pulumi.CustomResource):
314
301
  def _internal_init(__self__,
315
302
  resource_name: str,
316
303
  opts: Optional[pulumi.ResourceOptions] = None,
317
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
318
304
  description: Optional[pulumi.Input[str]] = None,
319
305
  password: Optional[pulumi.Input[str]] = None,
320
306
  project_id: Optional[pulumi.Input[str]] = None,
@@ -329,7 +315,6 @@ class ServiceEndpointBitBucket(pulumi.CustomResource):
329
315
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
330
316
  __props__ = ServiceEndpointBitBucketArgs.__new__(ServiceEndpointBitBucketArgs)
331
317
 
332
- __props__.__dict__["authorization"] = authorization
333
318
  __props__.__dict__["description"] = description
334
319
  if password is None and not opts.urn:
335
320
  raise TypeError("Missing required property 'password'")
@@ -343,6 +328,7 @@ class ServiceEndpointBitBucket(pulumi.CustomResource):
343
328
  if username is None and not opts.urn:
344
329
  raise TypeError("Missing required property 'username'")
345
330
  __props__.__dict__["username"] = username
331
+ __props__.__dict__["authorization"] = None
346
332
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["password"])
347
333
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
348
334
  super(ServiceEndpointBitBucket, __self__).__init__(
@@ -23,7 +23,6 @@ class ServiceEndpointDockerRegistryArgs:
23
23
  project_id: pulumi.Input[str],
24
24
  registry_type: pulumi.Input[str],
25
25
  service_endpoint_name: pulumi.Input[str],
26
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
26
  description: Optional[pulumi.Input[str]] = None,
28
27
  docker_email: Optional[pulumi.Input[str]] = None,
29
28
  docker_password: Optional[pulumi.Input[str]] = None,
@@ -42,8 +41,6 @@ class ServiceEndpointDockerRegistryArgs:
42
41
  pulumi.set(__self__, "project_id", project_id)
43
42
  pulumi.set(__self__, "registry_type", registry_type)
44
43
  pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
45
- if authorization is not None:
46
- pulumi.set(__self__, "authorization", authorization)
47
44
  if description is not None:
48
45
  pulumi.set(__self__, "description", description)
49
46
  if docker_email is not None:
@@ -101,15 +98,6 @@ class ServiceEndpointDockerRegistryArgs:
101
98
  def service_endpoint_name(self, value: pulumi.Input[str]):
102
99
  pulumi.set(self, "service_endpoint_name", value)
103
100
 
104
- @property
105
- @pulumi.getter
106
- def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
107
- return pulumi.get(self, "authorization")
108
-
109
- @authorization.setter
110
- def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
111
- pulumi.set(self, "authorization", value)
112
-
113
101
  @property
114
102
  @pulumi.getter
115
103
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -305,7 +293,6 @@ class ServiceEndpointDockerRegistry(pulumi.CustomResource):
305
293
  def __init__(__self__,
306
294
  resource_name: str,
307
295
  opts: Optional[pulumi.ResourceOptions] = None,
308
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
309
296
  description: Optional[pulumi.Input[str]] = None,
310
297
  docker_email: Optional[pulumi.Input[str]] = None,
311
298
  docker_password: Optional[pulumi.Input[str]] = None,
@@ -438,7 +425,6 @@ class ServiceEndpointDockerRegistry(pulumi.CustomResource):
438
425
  def _internal_init(__self__,
439
426
  resource_name: str,
440
427
  opts: Optional[pulumi.ResourceOptions] = None,
441
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
442
428
  description: Optional[pulumi.Input[str]] = None,
443
429
  docker_email: Optional[pulumi.Input[str]] = None,
444
430
  docker_password: Optional[pulumi.Input[str]] = None,
@@ -456,7 +442,6 @@ class ServiceEndpointDockerRegistry(pulumi.CustomResource):
456
442
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
457
443
  __props__ = ServiceEndpointDockerRegistryArgs.__new__(ServiceEndpointDockerRegistryArgs)
458
444
 
459
- __props__.__dict__["authorization"] = authorization
460
445
  __props__.__dict__["description"] = description
461
446
  __props__.__dict__["docker_email"] = docker_email
462
447
  __props__.__dict__["docker_password"] = None if docker_password is None else pulumi.Output.secret(docker_password)
@@ -473,6 +458,7 @@ class ServiceEndpointDockerRegistry(pulumi.CustomResource):
473
458
  if service_endpoint_name is None and not opts.urn:
474
459
  raise TypeError("Missing required property 'service_endpoint_name'")
475
460
  __props__.__dict__["service_endpoint_name"] = service_endpoint_name
461
+ __props__.__dict__["authorization"] = None
476
462
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["dockerPassword"])
477
463
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
478
464
  super(ServiceEndpointDockerRegistry, __self__).__init__(
@@ -22,7 +22,6 @@ class ServiceEndpointGenericArgs:
22
22
  project_id: pulumi.Input[str],
23
23
  server_url: pulumi.Input[str],
24
24
  service_endpoint_name: pulumi.Input[str],
25
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
26
25
  description: Optional[pulumi.Input[str]] = None,
27
26
  password: Optional[pulumi.Input[str]] = None,
28
27
  username: Optional[pulumi.Input[str]] = None):
@@ -37,8 +36,6 @@ class ServiceEndpointGenericArgs:
37
36
  pulumi.set(__self__, "project_id", project_id)
38
37
  pulumi.set(__self__, "server_url", server_url)
39
38
  pulumi.set(__self__, "service_endpoint_name", service_endpoint_name)
40
- if authorization is not None:
41
- pulumi.set(__self__, "authorization", authorization)
42
39
  if description is not None:
43
40
  pulumi.set(__self__, "description", description)
44
41
  if password is not None:
@@ -82,15 +79,6 @@ class ServiceEndpointGenericArgs:
82
79
  def service_endpoint_name(self, value: pulumi.Input[str]):
83
80
  pulumi.set(self, "service_endpoint_name", value)
84
81
 
85
- @property
86
- @pulumi.getter
87
- def authorization(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
88
- return pulumi.get(self, "authorization")
89
-
90
- @authorization.setter
91
- def authorization(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
92
- pulumi.set(self, "authorization", value)
93
-
94
82
  @property
95
83
  @pulumi.getter
96
84
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -242,7 +230,6 @@ class ServiceEndpointGeneric(pulumi.CustomResource):
242
230
  def __init__(__self__,
243
231
  resource_name: str,
244
232
  opts: Optional[pulumi.ResourceOptions] = None,
245
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
246
233
  description: Optional[pulumi.Input[str]] = None,
247
234
  password: Optional[pulumi.Input[str]] = None,
248
235
  project_id: Optional[pulumi.Input[str]] = None,
@@ -353,7 +340,6 @@ class ServiceEndpointGeneric(pulumi.CustomResource):
353
340
  def _internal_init(__self__,
354
341
  resource_name: str,
355
342
  opts: Optional[pulumi.ResourceOptions] = None,
356
- authorization: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
357
343
  description: Optional[pulumi.Input[str]] = None,
358
344
  password: Optional[pulumi.Input[str]] = None,
359
345
  project_id: Optional[pulumi.Input[str]] = None,
@@ -369,7 +355,6 @@ class ServiceEndpointGeneric(pulumi.CustomResource):
369
355
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
370
356
  __props__ = ServiceEndpointGenericArgs.__new__(ServiceEndpointGenericArgs)
371
357
 
372
- __props__.__dict__["authorization"] = authorization
373
358
  __props__.__dict__["description"] = description
374
359
  __props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
375
360
  if project_id is None and not opts.urn:
@@ -382,6 +367,7 @@ class ServiceEndpointGeneric(pulumi.CustomResource):
382
367
  raise TypeError("Missing required property 'service_endpoint_name'")
383
368
  __props__.__dict__["service_endpoint_name"] = service_endpoint_name
384
369
  __props__.__dict__["username"] = username
370
+ __props__.__dict__["authorization"] = None
385
371
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["password"])
386
372
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
387
373
  super(ServiceEndpointGeneric, __self__).__init__(