pulumi-azuredevops 3.8.0a1742224403__py3-none-any.whl → 3.9.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 (155) hide show
  1. pulumi_azuredevops/__init__.py +20 -0
  2. pulumi_azuredevops/_inputs.py +1140 -1013
  3. pulumi_azuredevops/area_permissions.py +71 -70
  4. pulumi_azuredevops/branch_policy_auto_reviewers.py +43 -42
  5. pulumi_azuredevops/branch_policy_build_validation.py +43 -42
  6. pulumi_azuredevops/branch_policy_comment_resolution.py +43 -42
  7. pulumi_azuredevops/branch_policy_merge_types.py +43 -42
  8. pulumi_azuredevops/branch_policy_min_reviewers.py +43 -42
  9. pulumi_azuredevops/branch_policy_status_check.py +43 -42
  10. pulumi_azuredevops/branch_policy_work_item_linking.py +43 -42
  11. pulumi_azuredevops/build_definition.py +120 -119
  12. pulumi_azuredevops/build_definition_permissions.py +71 -70
  13. pulumi_azuredevops/build_folder.py +43 -42
  14. pulumi_azuredevops/build_folder_permissions.py +78 -70
  15. pulumi_azuredevops/check_approval.py +120 -119
  16. pulumi_azuredevops/check_branch_control.py +120 -119
  17. pulumi_azuredevops/check_business_hours.py +218 -217
  18. pulumi_azuredevops/check_exclusive_lock.py +64 -63
  19. pulumi_azuredevops/check_required_template.py +50 -49
  20. pulumi_azuredevops/check_rest_api.py +218 -217
  21. pulumi_azuredevops/config/__init__.py +1 -0
  22. pulumi_azuredevops/config/__init__.pyi +1 -0
  23. pulumi_azuredevops/config/vars.py +1 -0
  24. pulumi_azuredevops/dashboard.py +78 -77
  25. pulumi_azuredevops/elastic_pool.py +169 -168
  26. pulumi_azuredevops/environment.py +43 -42
  27. pulumi_azuredevops/environment_resource_kubernetes.py +99 -98
  28. pulumi_azuredevops/extension.py +426 -0
  29. pulumi_azuredevops/feed.py +29 -28
  30. pulumi_azuredevops/feed_permission.py +106 -77
  31. pulumi_azuredevops/feed_retention_policy.py +57 -56
  32. pulumi_azuredevops/get_agent_queue.py +13 -12
  33. pulumi_azuredevops/get_area.py +19 -18
  34. pulumi_azuredevops/get_build_definition.py +23 -22
  35. pulumi_azuredevops/get_client_config.py +7 -6
  36. pulumi_azuredevops/get_descriptor.py +8 -7
  37. pulumi_azuredevops/get_environment.py +18 -17
  38. pulumi_azuredevops/get_feed.py +17 -16
  39. pulumi_azuredevops/get_git_repository.py +20 -19
  40. pulumi_azuredevops/get_git_repository_file.py +201 -0
  41. pulumi_azuredevops/get_group.py +16 -15
  42. pulumi_azuredevops/get_group_membership.py +8 -7
  43. pulumi_azuredevops/get_groups.py +7 -6
  44. pulumi_azuredevops/get_identity_group.py +14 -13
  45. pulumi_azuredevops/get_identity_groups.py +7 -6
  46. pulumi_azuredevops/get_identity_users.py +14 -13
  47. pulumi_azuredevops/get_iteration.py +19 -18
  48. pulumi_azuredevops/get_pool.py +10 -9
  49. pulumi_azuredevops/get_pools.py +2 -1
  50. pulumi_azuredevops/get_project.py +18 -17
  51. pulumi_azuredevops/get_projects.py +12 -11
  52. pulumi_azuredevops/get_repositories.py +17 -16
  53. pulumi_azuredevops/get_securityrole_definitions.py +7 -6
  54. pulumi_azuredevops/get_service_endpoint_azure_rm.py +31 -30
  55. pulumi_azuredevops/get_service_endpoint_github.py +19 -18
  56. pulumi_azuredevops/get_service_principal.py +10 -9
  57. pulumi_azuredevops/get_serviceendpoint_azurecr.py +29 -28
  58. pulumi_azuredevops/get_serviceendpoint_bitbucket.py +19 -18
  59. pulumi_azuredevops/get_serviceendpoint_npm.py +20 -19
  60. pulumi_azuredevops/get_serviceendpoint_sonarcloud.py +19 -18
  61. pulumi_azuredevops/get_storage_key.py +8 -7
  62. pulumi_azuredevops/get_team.py +21 -20
  63. pulumi_azuredevops/get_teams.py +12 -11
  64. pulumi_azuredevops/get_user.py +14 -13
  65. pulumi_azuredevops/get_users.py +84 -21
  66. pulumi_azuredevops/get_variable_group.py +14 -13
  67. pulumi_azuredevops/git.py +113 -112
  68. pulumi_azuredevops/git_permissions.py +85 -84
  69. pulumi_azuredevops/git_repository_branch.py +78 -77
  70. pulumi_azuredevops/git_repository_file.py +342 -85
  71. pulumi_azuredevops/group.py +134 -133
  72. pulumi_azuredevops/group_entitlement.py +85 -84
  73. pulumi_azuredevops/group_membership.py +43 -42
  74. pulumi_azuredevops/iterative_permissions.py +71 -70
  75. pulumi_azuredevops/library_permissions.py +57 -56
  76. pulumi_azuredevops/outputs.py +1118 -995
  77. pulumi_azuredevops/pipeline_authorization.py +71 -70
  78. pulumi_azuredevops/pool.py +57 -56
  79. pulumi_azuredevops/project.py +92 -91
  80. pulumi_azuredevops/project_features.py +25 -24
  81. pulumi_azuredevops/project_permissions.py +57 -56
  82. pulumi_azuredevops/project_pipeline_settings.py +99 -98
  83. pulumi_azuredevops/project_tags.py +29 -28
  84. pulumi_azuredevops/provider.py +157 -156
  85. pulumi_azuredevops/pulumi-plugin.json +1 -1
  86. pulumi_azuredevops/queue.py +43 -42
  87. pulumi_azuredevops/repository_policy_author_email_pattern.py +71 -70
  88. pulumi_azuredevops/repository_policy_case_enforcement.py +71 -70
  89. pulumi_azuredevops/repository_policy_check_credentials.py +57 -56
  90. pulumi_azuredevops/repository_policy_file_path_pattern.py +71 -70
  91. pulumi_azuredevops/repository_policy_max_file_size.py +71 -70
  92. pulumi_azuredevops/repository_policy_max_path_length.py +71 -70
  93. pulumi_azuredevops/repository_policy_reserved_names.py +57 -56
  94. pulumi_azuredevops/resource_authorization.py +71 -70
  95. pulumi_azuredevops/securityrole_assignment.py +57 -56
  96. pulumi_azuredevops/service_endpoint_artifactory.py +62 -61
  97. pulumi_azuredevops/service_endpoint_aws.py +144 -143
  98. pulumi_azuredevops/service_endpoint_azure_dev_ops.py +86 -85
  99. pulumi_azuredevops/service_endpoint_azure_ecr.py +169 -168
  100. pulumi_azuredevops/service_endpoint_azure_rm.py +195 -194
  101. pulumi_azuredevops/service_endpoint_bit_bucket.py +72 -71
  102. pulumi_azuredevops/service_endpoint_docker_registry.py +114 -113
  103. pulumi_azuredevops/service_endpoint_generic.py +86 -85
  104. pulumi_azuredevops/service_endpoint_generic_git.py +100 -99
  105. pulumi_azuredevops/service_endpoint_git_hub.py +44 -43
  106. pulumi_azuredevops/service_endpoint_git_hub_enterprise.py +174 -82
  107. pulumi_azuredevops/service_endpoint_git_lab.py +86 -85
  108. pulumi_azuredevops/service_endpoint_kubernetes.py +72 -71
  109. pulumi_azuredevops/service_endpoint_npm.py +76 -75
  110. pulumi_azuredevops/service_endpoint_pipeline.py +58 -57
  111. pulumi_azuredevops/service_endpoint_service_fabric.py +58 -57
  112. pulumi_azuredevops/service_endpoint_sonar_cloud.py +62 -61
  113. pulumi_azuredevops/service_endpoint_sonar_qube.py +76 -75
  114. pulumi_azuredevops/service_endpoint_ssh.py +114 -113
  115. pulumi_azuredevops/service_principal_entitlement.py +71 -70
  116. pulumi_azuredevops/serviceendpoint_argocd.py +62 -61
  117. pulumi_azuredevops/serviceendpoint_azure_service_bus.py +72 -71
  118. pulumi_azuredevops/serviceendpoint_checkmarx_one.py +114 -113
  119. pulumi_azuredevops/serviceendpoint_checkmarx_sast.py +114 -113
  120. pulumi_azuredevops/serviceendpoint_checkmarx_sca.py +142 -141
  121. pulumi_azuredevops/serviceendpoint_dynamics_lifecycle_services.py +114 -113
  122. pulumi_azuredevops/serviceendpoint_externaltfs.py +58 -57
  123. pulumi_azuredevops/serviceendpoint_gcp_terraform.py +116 -115
  124. pulumi_azuredevops/serviceendpoint_incomingwebhook.py +86 -85
  125. pulumi_azuredevops/serviceendpoint_jenkins.py +100 -99
  126. pulumi_azuredevops/serviceendpoint_jfrog_artifactory_v2.py +62 -61
  127. pulumi_azuredevops/serviceendpoint_jfrog_distribution_v2.py +62 -61
  128. pulumi_azuredevops/serviceendpoint_jfrog_platform_v2.py +62 -61
  129. pulumi_azuredevops/serviceendpoint_jfrog_xray_v2.py +62 -61
  130. pulumi_azuredevops/serviceendpoint_maven.py +72 -71
  131. pulumi_azuredevops/serviceendpoint_nexus.py +86 -85
  132. pulumi_azuredevops/serviceendpoint_nuget.py +114 -113
  133. pulumi_azuredevops/serviceendpoint_octopusdeploy.py +86 -85
  134. pulumi_azuredevops/serviceendpoint_openshift.py +688 -0
  135. pulumi_azuredevops/serviceendpoint_permissions.py +71 -70
  136. pulumi_azuredevops/serviceendpoint_snyk.py +72 -71
  137. pulumi_azuredevops/serviceendpoint_visualstudiomarketplace.py +58 -57
  138. pulumi_azuredevops/servicehook_permissions.py +57 -56
  139. pulumi_azuredevops/servicehook_storage_queue_pipelines.py +85 -84
  140. pulumi_azuredevops/tagging_permissions.py +57 -56
  141. pulumi_azuredevops/team.py +78 -77
  142. pulumi_azuredevops/team_administrators.py +57 -56
  143. pulumi_azuredevops/team_members.py +57 -56
  144. pulumi_azuredevops/user.py +78 -77
  145. pulumi_azuredevops/variable_group.py +57 -56
  146. pulumi_azuredevops/variable_group_permissions.py +71 -70
  147. pulumi_azuredevops/wiki.py +99 -98
  148. pulumi_azuredevops/wiki_page.py +67 -66
  149. pulumi_azuredevops/work_item_query_permissions.py +71 -70
  150. pulumi_azuredevops/workitem.py +113 -112
  151. {pulumi_azuredevops-3.8.0a1742224403.dist-info → pulumi_azuredevops-3.9.0.dist-info}/METADATA +2 -2
  152. pulumi_azuredevops-3.9.0.dist-info/RECORD +156 -0
  153. {pulumi_azuredevops-3.8.0a1742224403.dist-info → pulumi_azuredevops-3.9.0.dist-info}/WHEEL +1 -1
  154. pulumi_azuredevops-3.8.0a1742224403.dist-info/RECORD +0 -153
  155. {pulumi_azuredevops-3.8.0a1742224403.dist-info → pulumi_azuredevops-3.9.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,426 @@
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 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__ = ['ExtensionArgs', 'Extension']
19
+
20
+ @pulumi.input_type
21
+ class ExtensionArgs:
22
+ def __init__(__self__, *,
23
+ extension_id: pulumi.Input[builtins.str],
24
+ publisher_id: pulumi.Input[builtins.str],
25
+ disabled: Optional[pulumi.Input[builtins.bool]] = None,
26
+ version: Optional[pulumi.Input[builtins.str]] = None):
27
+ """
28
+ The set of arguments for constructing a Extension resource.
29
+ :param pulumi.Input[builtins.str] extension_id: The publisher ID of the extension.
30
+ :param pulumi.Input[builtins.str] publisher_id: The extension ID of the extension.
31
+ :param pulumi.Input[builtins.bool] disabled: Whether to disable the extension.
32
+ :param pulumi.Input[builtins.str] version: The version of the extension.
33
+ """
34
+ pulumi.set(__self__, "extension_id", extension_id)
35
+ pulumi.set(__self__, "publisher_id", publisher_id)
36
+ if disabled is not None:
37
+ pulumi.set(__self__, "disabled", disabled)
38
+ if version is not None:
39
+ pulumi.set(__self__, "version", version)
40
+
41
+ @property
42
+ @pulumi.getter(name="extensionId")
43
+ def extension_id(self) -> pulumi.Input[builtins.str]:
44
+ """
45
+ The publisher ID of the extension.
46
+ """
47
+ return pulumi.get(self, "extension_id")
48
+
49
+ @extension_id.setter
50
+ def extension_id(self, value: pulumi.Input[builtins.str]):
51
+ pulumi.set(self, "extension_id", value)
52
+
53
+ @property
54
+ @pulumi.getter(name="publisherId")
55
+ def publisher_id(self) -> pulumi.Input[builtins.str]:
56
+ """
57
+ The extension ID of the extension.
58
+ """
59
+ return pulumi.get(self, "publisher_id")
60
+
61
+ @publisher_id.setter
62
+ def publisher_id(self, value: pulumi.Input[builtins.str]):
63
+ pulumi.set(self, "publisher_id", value)
64
+
65
+ @property
66
+ @pulumi.getter
67
+ def disabled(self) -> Optional[pulumi.Input[builtins.bool]]:
68
+ """
69
+ Whether to disable the extension.
70
+ """
71
+ return pulumi.get(self, "disabled")
72
+
73
+ @disabled.setter
74
+ def disabled(self, value: Optional[pulumi.Input[builtins.bool]]):
75
+ pulumi.set(self, "disabled", value)
76
+
77
+ @property
78
+ @pulumi.getter
79
+ def version(self) -> Optional[pulumi.Input[builtins.str]]:
80
+ """
81
+ The version of the extension.
82
+ """
83
+ return pulumi.get(self, "version")
84
+
85
+ @version.setter
86
+ def version(self, value: Optional[pulumi.Input[builtins.str]]):
87
+ pulumi.set(self, "version", value)
88
+
89
+
90
+ @pulumi.input_type
91
+ class _ExtensionState:
92
+ def __init__(__self__, *,
93
+ disabled: Optional[pulumi.Input[builtins.bool]] = None,
94
+ extension_id: Optional[pulumi.Input[builtins.str]] = None,
95
+ extension_name: Optional[pulumi.Input[builtins.str]] = None,
96
+ publisher_id: Optional[pulumi.Input[builtins.str]] = None,
97
+ publisher_name: Optional[pulumi.Input[builtins.str]] = None,
98
+ scopes: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
99
+ version: Optional[pulumi.Input[builtins.str]] = None):
100
+ """
101
+ Input properties used for looking up and filtering Extension resources.
102
+ :param pulumi.Input[builtins.bool] disabled: Whether to disable the extension.
103
+ :param pulumi.Input[builtins.str] extension_id: The publisher ID of the extension.
104
+ :param pulumi.Input[builtins.str] extension_name: The name of the extension.
105
+ :param pulumi.Input[builtins.str] publisher_id: The extension ID of the extension.
106
+ :param pulumi.Input[builtins.str] publisher_name: The name of the publisher.
107
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] scopes: List of all oauth scopes required by this extension.
108
+ :param pulumi.Input[builtins.str] version: The version of the extension.
109
+ """
110
+ if disabled is not None:
111
+ pulumi.set(__self__, "disabled", disabled)
112
+ if extension_id is not None:
113
+ pulumi.set(__self__, "extension_id", extension_id)
114
+ if extension_name is not None:
115
+ pulumi.set(__self__, "extension_name", extension_name)
116
+ if publisher_id is not None:
117
+ pulumi.set(__self__, "publisher_id", publisher_id)
118
+ if publisher_name is not None:
119
+ pulumi.set(__self__, "publisher_name", publisher_name)
120
+ if scopes is not None:
121
+ pulumi.set(__self__, "scopes", scopes)
122
+ if version is not None:
123
+ pulumi.set(__self__, "version", version)
124
+
125
+ @property
126
+ @pulumi.getter
127
+ def disabled(self) -> Optional[pulumi.Input[builtins.bool]]:
128
+ """
129
+ Whether to disable the extension.
130
+ """
131
+ return pulumi.get(self, "disabled")
132
+
133
+ @disabled.setter
134
+ def disabled(self, value: Optional[pulumi.Input[builtins.bool]]):
135
+ pulumi.set(self, "disabled", value)
136
+
137
+ @property
138
+ @pulumi.getter(name="extensionId")
139
+ def extension_id(self) -> Optional[pulumi.Input[builtins.str]]:
140
+ """
141
+ The publisher ID of the extension.
142
+ """
143
+ return pulumi.get(self, "extension_id")
144
+
145
+ @extension_id.setter
146
+ def extension_id(self, value: Optional[pulumi.Input[builtins.str]]):
147
+ pulumi.set(self, "extension_id", value)
148
+
149
+ @property
150
+ @pulumi.getter(name="extensionName")
151
+ def extension_name(self) -> Optional[pulumi.Input[builtins.str]]:
152
+ """
153
+ The name of the extension.
154
+ """
155
+ return pulumi.get(self, "extension_name")
156
+
157
+ @extension_name.setter
158
+ def extension_name(self, value: Optional[pulumi.Input[builtins.str]]):
159
+ pulumi.set(self, "extension_name", value)
160
+
161
+ @property
162
+ @pulumi.getter(name="publisherId")
163
+ def publisher_id(self) -> Optional[pulumi.Input[builtins.str]]:
164
+ """
165
+ The extension ID of the extension.
166
+ """
167
+ return pulumi.get(self, "publisher_id")
168
+
169
+ @publisher_id.setter
170
+ def publisher_id(self, value: Optional[pulumi.Input[builtins.str]]):
171
+ pulumi.set(self, "publisher_id", value)
172
+
173
+ @property
174
+ @pulumi.getter(name="publisherName")
175
+ def publisher_name(self) -> Optional[pulumi.Input[builtins.str]]:
176
+ """
177
+ The name of the publisher.
178
+ """
179
+ return pulumi.get(self, "publisher_name")
180
+
181
+ @publisher_name.setter
182
+ def publisher_name(self, value: Optional[pulumi.Input[builtins.str]]):
183
+ pulumi.set(self, "publisher_name", value)
184
+
185
+ @property
186
+ @pulumi.getter
187
+ def scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
188
+ """
189
+ List of all oauth scopes required by this extension.
190
+ """
191
+ return pulumi.get(self, "scopes")
192
+
193
+ @scopes.setter
194
+ def scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
195
+ pulumi.set(self, "scopes", value)
196
+
197
+ @property
198
+ @pulumi.getter
199
+ def version(self) -> Optional[pulumi.Input[builtins.str]]:
200
+ """
201
+ The version of the extension.
202
+ """
203
+ return pulumi.get(self, "version")
204
+
205
+ @version.setter
206
+ def version(self, value: Optional[pulumi.Input[builtins.str]]):
207
+ pulumi.set(self, "version", value)
208
+
209
+
210
+ class Extension(pulumi.CustomResource):
211
+ @overload
212
+ def __init__(__self__,
213
+ resource_name: str,
214
+ opts: Optional[pulumi.ResourceOptions] = None,
215
+ disabled: Optional[pulumi.Input[builtins.bool]] = None,
216
+ extension_id: Optional[pulumi.Input[builtins.str]] = None,
217
+ publisher_id: Optional[pulumi.Input[builtins.str]] = None,
218
+ version: Optional[pulumi.Input[builtins.str]] = None,
219
+ __props__=None):
220
+ """
221
+ Manages extension within Azure DevOps organization.
222
+
223
+ ## Example Usage
224
+
225
+ ### Install Extension
226
+ ```python
227
+ import pulumi
228
+ import pulumi_azuredevops as azuredevops
229
+
230
+ example = azuredevops.Extension("example",
231
+ extension_id="extension ID",
232
+ publisher_id="publisher ID")
233
+ ```
234
+
235
+ ## Relevant Links
236
+
237
+ - [Azure DevOps Service REST API 7.1 - Extension Management](https://learn.microsoft.com/en-us/rest/api/azure/devops/extensionmanagement/installed-extensions?view=azure-devops-rest-7.1)
238
+
239
+ ## Import
240
+
241
+ Azure DevOps Extension can be imported using the publisher ID and extension ID:
242
+
243
+ ```sh
244
+ $ pulumi import azuredevops:index/extension:Extension example publisherId/extensionId
245
+ ```
246
+
247
+ :param str resource_name: The name of the resource.
248
+ :param pulumi.ResourceOptions opts: Options for the resource.
249
+ :param pulumi.Input[builtins.bool] disabled: Whether to disable the extension.
250
+ :param pulumi.Input[builtins.str] extension_id: The publisher ID of the extension.
251
+ :param pulumi.Input[builtins.str] publisher_id: The extension ID of the extension.
252
+ :param pulumi.Input[builtins.str] version: The version of the extension.
253
+ """
254
+ ...
255
+ @overload
256
+ def __init__(__self__,
257
+ resource_name: str,
258
+ args: ExtensionArgs,
259
+ opts: Optional[pulumi.ResourceOptions] = None):
260
+ """
261
+ Manages extension within Azure DevOps organization.
262
+
263
+ ## Example Usage
264
+
265
+ ### Install Extension
266
+ ```python
267
+ import pulumi
268
+ import pulumi_azuredevops as azuredevops
269
+
270
+ example = azuredevops.Extension("example",
271
+ extension_id="extension ID",
272
+ publisher_id="publisher ID")
273
+ ```
274
+
275
+ ## Relevant Links
276
+
277
+ - [Azure DevOps Service REST API 7.1 - Extension Management](https://learn.microsoft.com/en-us/rest/api/azure/devops/extensionmanagement/installed-extensions?view=azure-devops-rest-7.1)
278
+
279
+ ## Import
280
+
281
+ Azure DevOps Extension can be imported using the publisher ID and extension ID:
282
+
283
+ ```sh
284
+ $ pulumi import azuredevops:index/extension:Extension example publisherId/extensionId
285
+ ```
286
+
287
+ :param str resource_name: The name of the resource.
288
+ :param ExtensionArgs args: The arguments to use to populate this resource's properties.
289
+ :param pulumi.ResourceOptions opts: Options for the resource.
290
+ """
291
+ ...
292
+ def __init__(__self__, resource_name: str, *args, **kwargs):
293
+ resource_args, opts = _utilities.get_resource_args_opts(ExtensionArgs, pulumi.ResourceOptions, *args, **kwargs)
294
+ if resource_args is not None:
295
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
296
+ else:
297
+ __self__._internal_init(resource_name, *args, **kwargs)
298
+
299
+ def _internal_init(__self__,
300
+ resource_name: str,
301
+ opts: Optional[pulumi.ResourceOptions] = None,
302
+ disabled: Optional[pulumi.Input[builtins.bool]] = None,
303
+ extension_id: Optional[pulumi.Input[builtins.str]] = None,
304
+ publisher_id: Optional[pulumi.Input[builtins.str]] = None,
305
+ version: Optional[pulumi.Input[builtins.str]] = None,
306
+ __props__=None):
307
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
308
+ if not isinstance(opts, pulumi.ResourceOptions):
309
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
310
+ if opts.id is None:
311
+ if __props__ is not None:
312
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
313
+ __props__ = ExtensionArgs.__new__(ExtensionArgs)
314
+
315
+ __props__.__dict__["disabled"] = disabled
316
+ if extension_id is None and not opts.urn:
317
+ raise TypeError("Missing required property 'extension_id'")
318
+ __props__.__dict__["extension_id"] = extension_id
319
+ if publisher_id is None and not opts.urn:
320
+ raise TypeError("Missing required property 'publisher_id'")
321
+ __props__.__dict__["publisher_id"] = publisher_id
322
+ __props__.__dict__["version"] = version
323
+ __props__.__dict__["extension_name"] = None
324
+ __props__.__dict__["publisher_name"] = None
325
+ __props__.__dict__["scopes"] = None
326
+ super(Extension, __self__).__init__(
327
+ 'azuredevops:index/extension:Extension',
328
+ resource_name,
329
+ __props__,
330
+ opts)
331
+
332
+ @staticmethod
333
+ def get(resource_name: str,
334
+ id: pulumi.Input[str],
335
+ opts: Optional[pulumi.ResourceOptions] = None,
336
+ disabled: Optional[pulumi.Input[builtins.bool]] = None,
337
+ extension_id: Optional[pulumi.Input[builtins.str]] = None,
338
+ extension_name: Optional[pulumi.Input[builtins.str]] = None,
339
+ publisher_id: Optional[pulumi.Input[builtins.str]] = None,
340
+ publisher_name: Optional[pulumi.Input[builtins.str]] = None,
341
+ scopes: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
342
+ version: Optional[pulumi.Input[builtins.str]] = None) -> 'Extension':
343
+ """
344
+ Get an existing Extension resource's state with the given name, id, and optional extra
345
+ properties used to qualify the lookup.
346
+
347
+ :param str resource_name: The unique name of the resulting resource.
348
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
349
+ :param pulumi.ResourceOptions opts: Options for the resource.
350
+ :param pulumi.Input[builtins.bool] disabled: Whether to disable the extension.
351
+ :param pulumi.Input[builtins.str] extension_id: The publisher ID of the extension.
352
+ :param pulumi.Input[builtins.str] extension_name: The name of the extension.
353
+ :param pulumi.Input[builtins.str] publisher_id: The extension ID of the extension.
354
+ :param pulumi.Input[builtins.str] publisher_name: The name of the publisher.
355
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] scopes: List of all oauth scopes required by this extension.
356
+ :param pulumi.Input[builtins.str] version: The version of the extension.
357
+ """
358
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
359
+
360
+ __props__ = _ExtensionState.__new__(_ExtensionState)
361
+
362
+ __props__.__dict__["disabled"] = disabled
363
+ __props__.__dict__["extension_id"] = extension_id
364
+ __props__.__dict__["extension_name"] = extension_name
365
+ __props__.__dict__["publisher_id"] = publisher_id
366
+ __props__.__dict__["publisher_name"] = publisher_name
367
+ __props__.__dict__["scopes"] = scopes
368
+ __props__.__dict__["version"] = version
369
+ return Extension(resource_name, opts=opts, __props__=__props__)
370
+
371
+ @property
372
+ @pulumi.getter
373
+ def disabled(self) -> pulumi.Output[builtins.bool]:
374
+ """
375
+ Whether to disable the extension.
376
+ """
377
+ return pulumi.get(self, "disabled")
378
+
379
+ @property
380
+ @pulumi.getter(name="extensionId")
381
+ def extension_id(self) -> pulumi.Output[builtins.str]:
382
+ """
383
+ The publisher ID of the extension.
384
+ """
385
+ return pulumi.get(self, "extension_id")
386
+
387
+ @property
388
+ @pulumi.getter(name="extensionName")
389
+ def extension_name(self) -> pulumi.Output[builtins.str]:
390
+ """
391
+ The name of the extension.
392
+ """
393
+ return pulumi.get(self, "extension_name")
394
+
395
+ @property
396
+ @pulumi.getter(name="publisherId")
397
+ def publisher_id(self) -> pulumi.Output[builtins.str]:
398
+ """
399
+ The extension ID of the extension.
400
+ """
401
+ return pulumi.get(self, "publisher_id")
402
+
403
+ @property
404
+ @pulumi.getter(name="publisherName")
405
+ def publisher_name(self) -> pulumi.Output[builtins.str]:
406
+ """
407
+ The name of the publisher.
408
+ """
409
+ return pulumi.get(self, "publisher_name")
410
+
411
+ @property
412
+ @pulumi.getter
413
+ def scopes(self) -> pulumi.Output[Sequence[builtins.str]]:
414
+ """
415
+ List of all oauth scopes required by this extension.
416
+ """
417
+ return pulumi.get(self, "scopes")
418
+
419
+ @property
420
+ @pulumi.getter
421
+ def version(self) -> pulumi.Output[builtins.str]:
422
+ """
423
+ The version of the extension.
424
+ """
425
+ return pulumi.get(self, "version")
426
+
@@ -2,6 +2,7 @@
2
2
  # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
+ import builtins
5
6
  import copy
6
7
  import warnings
7
8
  import sys
@@ -22,15 +23,15 @@ __all__ = ['FeedArgs', 'Feed']
22
23
  class FeedArgs:
23
24
  def __init__(__self__, *,
24
25
  features: Optional[pulumi.Input[Sequence[pulumi.Input['FeedFeatureArgs']]]] = None,
25
- name: Optional[pulumi.Input[str]] = None,
26
- project_id: Optional[pulumi.Input[str]] = None):
26
+ name: Optional[pulumi.Input[builtins.str]] = None,
27
+ project_id: Optional[pulumi.Input[builtins.str]] = None):
27
28
  """
28
29
  The set of arguments for constructing a Feed resource.
29
30
  :param pulumi.Input[Sequence[pulumi.Input['FeedFeatureArgs']]] features: A `features` blocks as documented below.
30
31
 
31
32
  > **Note** *Because of ADO limitations feed name can be **reserved** for up to 15 minutes after permanent delete of the feed*
32
- :param pulumi.Input[str] name: The name of the Feed.
33
- :param pulumi.Input[str] project_id: The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
33
+ :param pulumi.Input[builtins.str] name: The name of the Feed.
34
+ :param pulumi.Input[builtins.str] project_id: The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
34
35
  """
35
36
  if features is not None:
36
37
  pulumi.set(__self__, "features", features)
@@ -55,26 +56,26 @@ class FeedArgs:
55
56
 
56
57
  @property
57
58
  @pulumi.getter
58
- def name(self) -> Optional[pulumi.Input[str]]:
59
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
59
60
  """
60
61
  The name of the Feed.
61
62
  """
62
63
  return pulumi.get(self, "name")
63
64
 
64
65
  @name.setter
65
- def name(self, value: Optional[pulumi.Input[str]]):
66
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
66
67
  pulumi.set(self, "name", value)
67
68
 
68
69
  @property
69
70
  @pulumi.getter(name="projectId")
70
- def project_id(self) -> Optional[pulumi.Input[str]]:
71
+ def project_id(self) -> Optional[pulumi.Input[builtins.str]]:
71
72
  """
72
73
  The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
73
74
  """
74
75
  return pulumi.get(self, "project_id")
75
76
 
76
77
  @project_id.setter
77
- def project_id(self, value: Optional[pulumi.Input[str]]):
78
+ def project_id(self, value: Optional[pulumi.Input[builtins.str]]):
78
79
  pulumi.set(self, "project_id", value)
79
80
 
80
81
 
@@ -82,15 +83,15 @@ class FeedArgs:
82
83
  class _FeedState:
83
84
  def __init__(__self__, *,
84
85
  features: Optional[pulumi.Input[Sequence[pulumi.Input['FeedFeatureArgs']]]] = None,
85
- name: Optional[pulumi.Input[str]] = None,
86
- project_id: Optional[pulumi.Input[str]] = None):
86
+ name: Optional[pulumi.Input[builtins.str]] = None,
87
+ project_id: Optional[pulumi.Input[builtins.str]] = None):
87
88
  """
88
89
  Input properties used for looking up and filtering Feed resources.
89
90
  :param pulumi.Input[Sequence[pulumi.Input['FeedFeatureArgs']]] features: A `features` blocks as documented below.
90
91
 
91
92
  > **Note** *Because of ADO limitations feed name can be **reserved** for up to 15 minutes after permanent delete of the feed*
92
- :param pulumi.Input[str] name: The name of the Feed.
93
- :param pulumi.Input[str] project_id: The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
93
+ :param pulumi.Input[builtins.str] name: The name of the Feed.
94
+ :param pulumi.Input[builtins.str] project_id: The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
94
95
  """
95
96
  if features is not None:
96
97
  pulumi.set(__self__, "features", features)
@@ -115,26 +116,26 @@ class _FeedState:
115
116
 
116
117
  @property
117
118
  @pulumi.getter
118
- def name(self) -> Optional[pulumi.Input[str]]:
119
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
119
120
  """
120
121
  The name of the Feed.
121
122
  """
122
123
  return pulumi.get(self, "name")
123
124
 
124
125
  @name.setter
125
- def name(self, value: Optional[pulumi.Input[str]]):
126
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
126
127
  pulumi.set(self, "name", value)
127
128
 
128
129
  @property
129
130
  @pulumi.getter(name="projectId")
130
- def project_id(self) -> Optional[pulumi.Input[str]]:
131
+ def project_id(self) -> Optional[pulumi.Input[builtins.str]]:
131
132
  """
132
133
  The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
133
134
  """
134
135
  return pulumi.get(self, "project_id")
135
136
 
136
137
  @project_id.setter
137
- def project_id(self, value: Optional[pulumi.Input[str]]):
138
+ def project_id(self, value: Optional[pulumi.Input[builtins.str]]):
138
139
  pulumi.set(self, "project_id", value)
139
140
 
140
141
 
@@ -144,8 +145,8 @@ class Feed(pulumi.CustomResource):
144
145
  resource_name: str,
145
146
  opts: Optional[pulumi.ResourceOptions] = None,
146
147
  features: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FeedFeatureArgs', 'FeedFeatureArgsDict']]]]] = None,
147
- name: Optional[pulumi.Input[str]] = None,
148
- project_id: Optional[pulumi.Input[str]] = None,
148
+ name: Optional[pulumi.Input[builtins.str]] = None,
149
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
149
150
  __props__=None):
150
151
  """
151
152
  Manages Feed within Azure DevOps organization.
@@ -211,8 +212,8 @@ class Feed(pulumi.CustomResource):
211
212
  :param pulumi.Input[Sequence[pulumi.Input[Union['FeedFeatureArgs', 'FeedFeatureArgsDict']]]] features: A `features` blocks as documented below.
212
213
 
213
214
  > **Note** *Because of ADO limitations feed name can be **reserved** for up to 15 minutes after permanent delete of the feed*
214
- :param pulumi.Input[str] name: The name of the Feed.
215
- :param pulumi.Input[str] project_id: The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
215
+ :param pulumi.Input[builtins.str] name: The name of the Feed.
216
+ :param pulumi.Input[builtins.str] project_id: The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
216
217
  """
217
218
  ...
218
219
  @overload
@@ -295,8 +296,8 @@ class Feed(pulumi.CustomResource):
295
296
  resource_name: str,
296
297
  opts: Optional[pulumi.ResourceOptions] = None,
297
298
  features: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FeedFeatureArgs', 'FeedFeatureArgsDict']]]]] = None,
298
- name: Optional[pulumi.Input[str]] = None,
299
- project_id: Optional[pulumi.Input[str]] = None,
299
+ name: Optional[pulumi.Input[builtins.str]] = None,
300
+ project_id: Optional[pulumi.Input[builtins.str]] = None,
300
301
  __props__=None):
301
302
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
302
303
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -320,8 +321,8 @@ class Feed(pulumi.CustomResource):
320
321
  id: pulumi.Input[str],
321
322
  opts: Optional[pulumi.ResourceOptions] = None,
322
323
  features: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FeedFeatureArgs', 'FeedFeatureArgsDict']]]]] = None,
323
- name: Optional[pulumi.Input[str]] = None,
324
- project_id: Optional[pulumi.Input[str]] = None) -> 'Feed':
324
+ name: Optional[pulumi.Input[builtins.str]] = None,
325
+ project_id: Optional[pulumi.Input[builtins.str]] = None) -> 'Feed':
325
326
  """
326
327
  Get an existing Feed resource's state with the given name, id, and optional extra
327
328
  properties used to qualify the lookup.
@@ -332,8 +333,8 @@ class Feed(pulumi.CustomResource):
332
333
  :param pulumi.Input[Sequence[pulumi.Input[Union['FeedFeatureArgs', 'FeedFeatureArgsDict']]]] features: A `features` blocks as documented below.
333
334
 
334
335
  > **Note** *Because of ADO limitations feed name can be **reserved** for up to 15 minutes after permanent delete of the feed*
335
- :param pulumi.Input[str] name: The name of the Feed.
336
- :param pulumi.Input[str] project_id: The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
336
+ :param pulumi.Input[builtins.str] name: The name of the Feed.
337
+ :param pulumi.Input[builtins.str] project_id: The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
337
338
  """
338
339
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
339
340
 
@@ -356,7 +357,7 @@ class Feed(pulumi.CustomResource):
356
357
 
357
358
  @property
358
359
  @pulumi.getter
359
- def name(self) -> pulumi.Output[str]:
360
+ def name(self) -> pulumi.Output[builtins.str]:
360
361
  """
361
362
  The name of the Feed.
362
363
  """
@@ -364,7 +365,7 @@ class Feed(pulumi.CustomResource):
364
365
 
365
366
  @property
366
367
  @pulumi.getter(name="projectId")
367
- def project_id(self) -> pulumi.Output[Optional[str]]:
368
+ def project_id(self) -> pulumi.Output[Optional[builtins.str]]:
368
369
  """
369
370
  The ID of the Project Feed is created in. If not specified, feed will be created at the organization level.
370
371
  """