pulumi-azuredevops 3.9.0a1745040263__py3-none-any.whl → 3.10.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 (121) hide show
  1. pulumi_azuredevops/__init__.py +29 -0
  2. pulumi_azuredevops/_inputs.py +206 -26
  3. pulumi_azuredevops/area_permissions.py +1 -0
  4. pulumi_azuredevops/branch_policy_auto_reviewers.py +1 -0
  5. pulumi_azuredevops/branch_policy_build_validation.py +1 -0
  6. pulumi_azuredevops/branch_policy_comment_resolution.py +1 -0
  7. pulumi_azuredevops/branch_policy_merge_types.py +1 -0
  8. pulumi_azuredevops/branch_policy_min_reviewers.py +1 -0
  9. pulumi_azuredevops/branch_policy_status_check.py +1 -0
  10. pulumi_azuredevops/branch_policy_work_item_linking.py +1 -0
  11. pulumi_azuredevops/build_definition.py +1 -0
  12. pulumi_azuredevops/build_definition_permissions.py +1 -0
  13. pulumi_azuredevops/build_folder.py +1 -0
  14. pulumi_azuredevops/build_folder_permissions.py +8 -0
  15. pulumi_azuredevops/check_approval.py +1 -0
  16. pulumi_azuredevops/check_branch_control.py +1 -0
  17. pulumi_azuredevops/check_business_hours.py +1 -0
  18. pulumi_azuredevops/check_exclusive_lock.py +1 -0
  19. pulumi_azuredevops/check_required_template.py +1 -0
  20. pulumi_azuredevops/check_rest_api.py +1 -0
  21. pulumi_azuredevops/dashboard.py +1 -0
  22. pulumi_azuredevops/elastic_pool.py +1 -0
  23. pulumi_azuredevops/environment.py +1 -0
  24. pulumi_azuredevops/environment_resource_kubernetes.py +1 -0
  25. pulumi_azuredevops/extension.py +427 -0
  26. pulumi_azuredevops/feed.py +1 -0
  27. pulumi_azuredevops/feed_permission.py +29 -0
  28. pulumi_azuredevops/feed_retention_policy.py +1 -0
  29. pulumi_azuredevops/get_git_repository_file.py +201 -0
  30. pulumi_azuredevops/get_group.py +1 -1
  31. pulumi_azuredevops/get_serviceendpoint_dockerregistry.py +282 -0
  32. pulumi_azuredevops/git.py +1 -0
  33. pulumi_azuredevops/git_permissions.py +22 -0
  34. pulumi_azuredevops/git_repository_branch.py +1 -0
  35. pulumi_azuredevops/git_repository_file.py +257 -0
  36. pulumi_azuredevops/group.py +1 -0
  37. pulumi_azuredevops/group_entitlement.py +1 -0
  38. pulumi_azuredevops/group_membership.py +1 -0
  39. pulumi_azuredevops/iterative_permissions.py +1 -0
  40. pulumi_azuredevops/library_permissions.py +1 -0
  41. pulumi_azuredevops/outputs.py +156 -18
  42. pulumi_azuredevops/pipeline_authorization.py +1 -0
  43. pulumi_azuredevops/pool.py +1 -0
  44. pulumi_azuredevops/project.py +1 -0
  45. pulumi_azuredevops/project_features.py +1 -0
  46. pulumi_azuredevops/project_permissions.py +1 -0
  47. pulumi_azuredevops/project_pipeline_settings.py +1 -0
  48. pulumi_azuredevops/project_tags.py +1 -0
  49. pulumi_azuredevops/provider.py +21 -0
  50. pulumi_azuredevops/pulumi-plugin.json +1 -1
  51. pulumi_azuredevops/queue.py +1 -0
  52. pulumi_azuredevops/repository_policy_author_email_pattern.py +1 -0
  53. pulumi_azuredevops/repository_policy_case_enforcement.py +1 -0
  54. pulumi_azuredevops/repository_policy_check_credentials.py +1 -0
  55. pulumi_azuredevops/repository_policy_file_path_pattern.py +1 -0
  56. pulumi_azuredevops/repository_policy_max_file_size.py +1 -0
  57. pulumi_azuredevops/repository_policy_max_path_length.py +1 -0
  58. pulumi_azuredevops/repository_policy_reserved_names.py +1 -0
  59. pulumi_azuredevops/resource_authorization.py +1 -0
  60. pulumi_azuredevops/securityrole_assignment.py +1 -0
  61. pulumi_azuredevops/service_endpoint_artifactory.py +1 -0
  62. pulumi_azuredevops/service_endpoint_aws.py +1 -0
  63. pulumi_azuredevops/service_endpoint_azure_dev_ops.py +1 -0
  64. pulumi_azuredevops/service_endpoint_azure_ecr.py +1 -0
  65. pulumi_azuredevops/service_endpoint_azure_rm.py +1 -0
  66. pulumi_azuredevops/service_endpoint_bit_bucket.py +1 -0
  67. pulumi_azuredevops/service_endpoint_docker_registry.py +1 -0
  68. pulumi_azuredevops/service_endpoint_generic.py +1 -0
  69. pulumi_azuredevops/service_endpoint_generic_git.py +1 -0
  70. pulumi_azuredevops/service_endpoint_git_hub.py +1 -0
  71. pulumi_azuredevops/service_endpoint_git_hub_enterprise.py +123 -31
  72. pulumi_azuredevops/service_endpoint_git_lab.py +1 -0
  73. pulumi_azuredevops/service_endpoint_kubernetes.py +1 -0
  74. pulumi_azuredevops/service_endpoint_npm.py +1 -0
  75. pulumi_azuredevops/service_endpoint_pipeline.py +1 -0
  76. pulumi_azuredevops/service_endpoint_service_fabric.py +1 -0
  77. pulumi_azuredevops/service_endpoint_sonar_cloud.py +1 -0
  78. pulumi_azuredevops/service_endpoint_sonar_qube.py +1 -0
  79. pulumi_azuredevops/service_endpoint_ssh.py +1 -0
  80. pulumi_azuredevops/service_principal_entitlement.py +1 -0
  81. pulumi_azuredevops/serviceendpoint_argocd.py +1 -0
  82. pulumi_azuredevops/serviceendpoint_azure_service_bus.py +1 -0
  83. pulumi_azuredevops/serviceendpoint_black_duck.py +417 -0
  84. pulumi_azuredevops/serviceendpoint_checkmarx_one.py +1 -0
  85. pulumi_azuredevops/serviceendpoint_checkmarx_sast.py +1 -0
  86. pulumi_azuredevops/serviceendpoint_checkmarx_sca.py +1 -0
  87. pulumi_azuredevops/serviceendpoint_dynamics_lifecycle_services.py +1 -0
  88. pulumi_azuredevops/serviceendpoint_externaltfs.py +1 -0
  89. pulumi_azuredevops/serviceendpoint_gcp_terraform.py +8 -7
  90. pulumi_azuredevops/serviceendpoint_incomingwebhook.py +1 -0
  91. pulumi_azuredevops/serviceendpoint_jenkins.py +1 -0
  92. pulumi_azuredevops/serviceendpoint_jfrog_artifactory_v2.py +1 -0
  93. pulumi_azuredevops/serviceendpoint_jfrog_distribution_v2.py +1 -0
  94. pulumi_azuredevops/serviceendpoint_jfrog_platform_v2.py +1 -0
  95. pulumi_azuredevops/serviceendpoint_jfrog_xray_v2.py +1 -0
  96. pulumi_azuredevops/serviceendpoint_maven.py +1 -0
  97. pulumi_azuredevops/serviceendpoint_nexus.py +1 -0
  98. pulumi_azuredevops/serviceendpoint_nuget.py +1 -0
  99. pulumi_azuredevops/serviceendpoint_octopusdeploy.py +1 -0
  100. pulumi_azuredevops/serviceendpoint_openshift.py +689 -0
  101. pulumi_azuredevops/serviceendpoint_permissions.py +1 -0
  102. pulumi_azuredevops/serviceendpoint_snyk.py +1 -0
  103. pulumi_azuredevops/serviceendpoint_visualstudiomarketplace.py +1 -0
  104. pulumi_azuredevops/servicehook_permissions.py +1 -0
  105. pulumi_azuredevops/servicehook_storage_queue_pipelines.py +1 -0
  106. pulumi_azuredevops/tagging_permissions.py +1 -0
  107. pulumi_azuredevops/team.py +1 -0
  108. pulumi_azuredevops/team_administrators.py +1 -0
  109. pulumi_azuredevops/team_members.py +1 -0
  110. pulumi_azuredevops/user.py +1 -0
  111. pulumi_azuredevops/variable_group.py +1 -0
  112. pulumi_azuredevops/variable_group_permissions.py +1 -0
  113. pulumi_azuredevops/wiki.py +1 -0
  114. pulumi_azuredevops/wiki_page.py +1 -0
  115. pulumi_azuredevops/work_item_query_permissions.py +1 -0
  116. pulumi_azuredevops/workitem.py +166 -4
  117. {pulumi_azuredevops-3.9.0a1745040263.dist-info → pulumi_azuredevops-3.10.0.dist-info}/METADATA +3 -3
  118. pulumi_azuredevops-3.10.0.dist-info/RECORD +158 -0
  119. {pulumi_azuredevops-3.9.0a1745040263.dist-info → pulumi_azuredevops-3.10.0.dist-info}/WHEEL +1 -1
  120. pulumi_azuredevops-3.9.0a1745040263.dist-info/RECORD +0 -153
  121. {pulumi_azuredevops-3.9.0a1745040263.dist-info → pulumi_azuredevops-3.10.0.dist-info}/top_level.txt +0 -0
@@ -23,25 +23,41 @@ class GitRepositoryFileArgs:
23
23
  content: pulumi.Input[builtins.str],
24
24
  file: pulumi.Input[builtins.str],
25
25
  repository_id: pulumi.Input[builtins.str],
26
+ author_email: Optional[pulumi.Input[builtins.str]] = None,
27
+ author_name: Optional[pulumi.Input[builtins.str]] = None,
26
28
  branch: Optional[pulumi.Input[builtins.str]] = None,
27
29
  commit_message: Optional[pulumi.Input[builtins.str]] = None,
30
+ committer_email: Optional[pulumi.Input[builtins.str]] = None,
31
+ committer_name: Optional[pulumi.Input[builtins.str]] = None,
28
32
  overwrite_on_create: Optional[pulumi.Input[builtins.bool]] = None):
29
33
  """
30
34
  The set of arguments for constructing a GitRepositoryFile resource.
31
35
  :param pulumi.Input[builtins.str] content: The file content.
32
36
  :param pulumi.Input[builtins.str] file: The path of the file to manage.
33
37
  :param pulumi.Input[builtins.str] repository_id: The ID of the Git repository.
38
+ :param pulumi.Input[builtins.str] author_email: The email of the author.
39
+ :param pulumi.Input[builtins.str] author_name: The name of the author.
34
40
  :param pulumi.Input[builtins.str] branch: Git branch (defaults to `refs/heads/master`). The branch must already exist, it will not be created if it does not already exist.
35
41
  :param pulumi.Input[builtins.str] commit_message: Commit message when adding or updating the managed file.
42
+ :param pulumi.Input[builtins.str] committer_email: The email of the committer.
43
+ :param pulumi.Input[builtins.str] committer_name: The name of the committer.
36
44
  :param pulumi.Input[builtins.bool] overwrite_on_create: Enable overwriting existing files (defaults to `false`).
37
45
  """
38
46
  pulumi.set(__self__, "content", content)
39
47
  pulumi.set(__self__, "file", file)
40
48
  pulumi.set(__self__, "repository_id", repository_id)
49
+ if author_email is not None:
50
+ pulumi.set(__self__, "author_email", author_email)
51
+ if author_name is not None:
52
+ pulumi.set(__self__, "author_name", author_name)
41
53
  if branch is not None:
42
54
  pulumi.set(__self__, "branch", branch)
43
55
  if commit_message is not None:
44
56
  pulumi.set(__self__, "commit_message", commit_message)
57
+ if committer_email is not None:
58
+ pulumi.set(__self__, "committer_email", committer_email)
59
+ if committer_name is not None:
60
+ pulumi.set(__self__, "committer_name", committer_name)
45
61
  if overwrite_on_create is not None:
46
62
  pulumi.set(__self__, "overwrite_on_create", overwrite_on_create)
47
63
 
@@ -81,6 +97,30 @@ class GitRepositoryFileArgs:
81
97
  def repository_id(self, value: pulumi.Input[builtins.str]):
82
98
  pulumi.set(self, "repository_id", value)
83
99
 
100
+ @property
101
+ @pulumi.getter(name="authorEmail")
102
+ def author_email(self) -> Optional[pulumi.Input[builtins.str]]:
103
+ """
104
+ The email of the author.
105
+ """
106
+ return pulumi.get(self, "author_email")
107
+
108
+ @author_email.setter
109
+ def author_email(self, value: Optional[pulumi.Input[builtins.str]]):
110
+ pulumi.set(self, "author_email", value)
111
+
112
+ @property
113
+ @pulumi.getter(name="authorName")
114
+ def author_name(self) -> Optional[pulumi.Input[builtins.str]]:
115
+ """
116
+ The name of the author.
117
+ """
118
+ return pulumi.get(self, "author_name")
119
+
120
+ @author_name.setter
121
+ def author_name(self, value: Optional[pulumi.Input[builtins.str]]):
122
+ pulumi.set(self, "author_name", value)
123
+
84
124
  @property
85
125
  @pulumi.getter
86
126
  def branch(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -105,6 +145,30 @@ class GitRepositoryFileArgs:
105
145
  def commit_message(self, value: Optional[pulumi.Input[builtins.str]]):
106
146
  pulumi.set(self, "commit_message", value)
107
147
 
148
+ @property
149
+ @pulumi.getter(name="committerEmail")
150
+ def committer_email(self) -> Optional[pulumi.Input[builtins.str]]:
151
+ """
152
+ The email of the committer.
153
+ """
154
+ return pulumi.get(self, "committer_email")
155
+
156
+ @committer_email.setter
157
+ def committer_email(self, value: Optional[pulumi.Input[builtins.str]]):
158
+ pulumi.set(self, "committer_email", value)
159
+
160
+ @property
161
+ @pulumi.getter(name="committerName")
162
+ def committer_name(self) -> Optional[pulumi.Input[builtins.str]]:
163
+ """
164
+ The name of the committer.
165
+ """
166
+ return pulumi.get(self, "committer_name")
167
+
168
+ @committer_name.setter
169
+ def committer_name(self, value: Optional[pulumi.Input[builtins.str]]):
170
+ pulumi.set(self, "committer_name", value)
171
+
108
172
  @property
109
173
  @pulumi.getter(name="overwriteOnCreate")
110
174
  def overwrite_on_create(self) -> Optional[pulumi.Input[builtins.bool]]:
@@ -121,25 +185,41 @@ class GitRepositoryFileArgs:
121
185
  @pulumi.input_type
122
186
  class _GitRepositoryFileState:
123
187
  def __init__(__self__, *,
188
+ author_email: Optional[pulumi.Input[builtins.str]] = None,
189
+ author_name: Optional[pulumi.Input[builtins.str]] = None,
124
190
  branch: Optional[pulumi.Input[builtins.str]] = None,
125
191
  commit_message: Optional[pulumi.Input[builtins.str]] = None,
192
+ committer_email: Optional[pulumi.Input[builtins.str]] = None,
193
+ committer_name: Optional[pulumi.Input[builtins.str]] = None,
126
194
  content: Optional[pulumi.Input[builtins.str]] = None,
127
195
  file: Optional[pulumi.Input[builtins.str]] = None,
128
196
  overwrite_on_create: Optional[pulumi.Input[builtins.bool]] = None,
129
197
  repository_id: Optional[pulumi.Input[builtins.str]] = None):
130
198
  """
131
199
  Input properties used for looking up and filtering GitRepositoryFile resources.
200
+ :param pulumi.Input[builtins.str] author_email: The email of the author.
201
+ :param pulumi.Input[builtins.str] author_name: The name of the author.
132
202
  :param pulumi.Input[builtins.str] branch: Git branch (defaults to `refs/heads/master`). The branch must already exist, it will not be created if it does not already exist.
133
203
  :param pulumi.Input[builtins.str] commit_message: Commit message when adding or updating the managed file.
204
+ :param pulumi.Input[builtins.str] committer_email: The email of the committer.
205
+ :param pulumi.Input[builtins.str] committer_name: The name of the committer.
134
206
  :param pulumi.Input[builtins.str] content: The file content.
135
207
  :param pulumi.Input[builtins.str] file: The path of the file to manage.
136
208
  :param pulumi.Input[builtins.bool] overwrite_on_create: Enable overwriting existing files (defaults to `false`).
137
209
  :param pulumi.Input[builtins.str] repository_id: The ID of the Git repository.
138
210
  """
211
+ if author_email is not None:
212
+ pulumi.set(__self__, "author_email", author_email)
213
+ if author_name is not None:
214
+ pulumi.set(__self__, "author_name", author_name)
139
215
  if branch is not None:
140
216
  pulumi.set(__self__, "branch", branch)
141
217
  if commit_message is not None:
142
218
  pulumi.set(__self__, "commit_message", commit_message)
219
+ if committer_email is not None:
220
+ pulumi.set(__self__, "committer_email", committer_email)
221
+ if committer_name is not None:
222
+ pulumi.set(__self__, "committer_name", committer_name)
143
223
  if content is not None:
144
224
  pulumi.set(__self__, "content", content)
145
225
  if file is not None:
@@ -149,6 +229,30 @@ class _GitRepositoryFileState:
149
229
  if repository_id is not None:
150
230
  pulumi.set(__self__, "repository_id", repository_id)
151
231
 
232
+ @property
233
+ @pulumi.getter(name="authorEmail")
234
+ def author_email(self) -> Optional[pulumi.Input[builtins.str]]:
235
+ """
236
+ The email of the author.
237
+ """
238
+ return pulumi.get(self, "author_email")
239
+
240
+ @author_email.setter
241
+ def author_email(self, value: Optional[pulumi.Input[builtins.str]]):
242
+ pulumi.set(self, "author_email", value)
243
+
244
+ @property
245
+ @pulumi.getter(name="authorName")
246
+ def author_name(self) -> Optional[pulumi.Input[builtins.str]]:
247
+ """
248
+ The name of the author.
249
+ """
250
+ return pulumi.get(self, "author_name")
251
+
252
+ @author_name.setter
253
+ def author_name(self, value: Optional[pulumi.Input[builtins.str]]):
254
+ pulumi.set(self, "author_name", value)
255
+
152
256
  @property
153
257
  @pulumi.getter
154
258
  def branch(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -173,6 +277,30 @@ class _GitRepositoryFileState:
173
277
  def commit_message(self, value: Optional[pulumi.Input[builtins.str]]):
174
278
  pulumi.set(self, "commit_message", value)
175
279
 
280
+ @property
281
+ @pulumi.getter(name="committerEmail")
282
+ def committer_email(self) -> Optional[pulumi.Input[builtins.str]]:
283
+ """
284
+ The email of the committer.
285
+ """
286
+ return pulumi.get(self, "committer_email")
287
+
288
+ @committer_email.setter
289
+ def committer_email(self, value: Optional[pulumi.Input[builtins.str]]):
290
+ pulumi.set(self, "committer_email", value)
291
+
292
+ @property
293
+ @pulumi.getter(name="committerName")
294
+ def committer_name(self) -> Optional[pulumi.Input[builtins.str]]:
295
+ """
296
+ The name of the committer.
297
+ """
298
+ return pulumi.get(self, "committer_name")
299
+
300
+ @committer_name.setter
301
+ def committer_name(self, value: Optional[pulumi.Input[builtins.str]]):
302
+ pulumi.set(self, "committer_name", value)
303
+
176
304
  @property
177
305
  @pulumi.getter
178
306
  def content(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -222,13 +350,18 @@ class _GitRepositoryFileState:
222
350
  pulumi.set(self, "repository_id", value)
223
351
 
224
352
 
353
+ @pulumi.type_token("azuredevops:index/gitRepositoryFile:GitRepositoryFile")
225
354
  class GitRepositoryFile(pulumi.CustomResource):
226
355
  @overload
227
356
  def __init__(__self__,
228
357
  resource_name: str,
229
358
  opts: Optional[pulumi.ResourceOptions] = None,
359
+ author_email: Optional[pulumi.Input[builtins.str]] = None,
360
+ author_name: Optional[pulumi.Input[builtins.str]] = None,
230
361
  branch: Optional[pulumi.Input[builtins.str]] = None,
231
362
  commit_message: Optional[pulumi.Input[builtins.str]] = None,
363
+ committer_email: Optional[pulumi.Input[builtins.str]] = None,
364
+ committer_name: Optional[pulumi.Input[builtins.str]] = None,
232
365
  content: Optional[pulumi.Input[builtins.str]] = None,
233
366
  file: Optional[pulumi.Input[builtins.str]] = None,
234
367
  overwrite_on_create: Optional[pulumi.Input[builtins.bool]] = None,
@@ -263,6 +396,40 @@ class GitRepositoryFile(pulumi.CustomResource):
263
396
  overwrite_on_create=False)
264
397
  ```
265
398
 
399
+ ### Author Email Pattern
400
+ ```python
401
+ import pulumi
402
+ import pulumi_azuredevops as azuredevops
403
+
404
+ example = azuredevops.Project("example",
405
+ name="Example Project",
406
+ visibility="private",
407
+ version_control="Git",
408
+ work_item_template="Agile")
409
+ example_git = azuredevops.Git("example",
410
+ project_id=example.id,
411
+ name="Example Git Repository",
412
+ initialization={
413
+ "init_type": "Clean",
414
+ })
415
+ example_repository_policy_author_email_pattern = azuredevops.RepositoryPolicyAuthorEmailPattern("example",
416
+ project_id=example.id,
417
+ enabled=True,
418
+ blocking=True,
419
+ author_email_patterns=["auhtor@test.com"],
420
+ repository_ids=[example_git.id])
421
+ example_git_repository_file = azuredevops.GitRepositoryFile("example",
422
+ repository_id=example_git.id,
423
+ file=".gitignore",
424
+ content="**/*.tfstate",
425
+ branch="refs/heads/master",
426
+ commit_message="First commit",
427
+ overwrite_on_create=False,
428
+ author_name="authorname",
429
+ author_email="auhtor@test.com",
430
+ opts = pulumi.ResourceOptions(depends_on=[example_repository_policy_author_email_pattern]))
431
+ ```
432
+
266
433
  ## Relevant Links
267
434
 
268
435
  - [Azure DevOps Service REST API 7.0 - Git API](https://docs.microsoft.com/en-us/rest/api/azure/devops/git/?view=azure-devops-rest-7.0)
@@ -283,8 +450,12 @@ class GitRepositoryFile(pulumi.CustomResource):
283
450
 
284
451
  :param str resource_name: The name of the resource.
285
452
  :param pulumi.ResourceOptions opts: Options for the resource.
453
+ :param pulumi.Input[builtins.str] author_email: The email of the author.
454
+ :param pulumi.Input[builtins.str] author_name: The name of the author.
286
455
  :param pulumi.Input[builtins.str] branch: Git branch (defaults to `refs/heads/master`). The branch must already exist, it will not be created if it does not already exist.
287
456
  :param pulumi.Input[builtins.str] commit_message: Commit message when adding or updating the managed file.
457
+ :param pulumi.Input[builtins.str] committer_email: The email of the committer.
458
+ :param pulumi.Input[builtins.str] committer_name: The name of the committer.
288
459
  :param pulumi.Input[builtins.str] content: The file content.
289
460
  :param pulumi.Input[builtins.str] file: The path of the file to manage.
290
461
  :param pulumi.Input[builtins.bool] overwrite_on_create: Enable overwriting existing files (defaults to `false`).
@@ -325,6 +496,40 @@ class GitRepositoryFile(pulumi.CustomResource):
325
496
  overwrite_on_create=False)
326
497
  ```
327
498
 
499
+ ### Author Email Pattern
500
+ ```python
501
+ import pulumi
502
+ import pulumi_azuredevops as azuredevops
503
+
504
+ example = azuredevops.Project("example",
505
+ name="Example Project",
506
+ visibility="private",
507
+ version_control="Git",
508
+ work_item_template="Agile")
509
+ example_git = azuredevops.Git("example",
510
+ project_id=example.id,
511
+ name="Example Git Repository",
512
+ initialization={
513
+ "init_type": "Clean",
514
+ })
515
+ example_repository_policy_author_email_pattern = azuredevops.RepositoryPolicyAuthorEmailPattern("example",
516
+ project_id=example.id,
517
+ enabled=True,
518
+ blocking=True,
519
+ author_email_patterns=["auhtor@test.com"],
520
+ repository_ids=[example_git.id])
521
+ example_git_repository_file = azuredevops.GitRepositoryFile("example",
522
+ repository_id=example_git.id,
523
+ file=".gitignore",
524
+ content="**/*.tfstate",
525
+ branch="refs/heads/master",
526
+ commit_message="First commit",
527
+ overwrite_on_create=False,
528
+ author_name="authorname",
529
+ author_email="auhtor@test.com",
530
+ opts = pulumi.ResourceOptions(depends_on=[example_repository_policy_author_email_pattern]))
531
+ ```
532
+
328
533
  ## Relevant Links
329
534
 
330
535
  - [Azure DevOps Service REST API 7.0 - Git API](https://docs.microsoft.com/en-us/rest/api/azure/devops/git/?view=azure-devops-rest-7.0)
@@ -358,8 +563,12 @@ class GitRepositoryFile(pulumi.CustomResource):
358
563
  def _internal_init(__self__,
359
564
  resource_name: str,
360
565
  opts: Optional[pulumi.ResourceOptions] = None,
566
+ author_email: Optional[pulumi.Input[builtins.str]] = None,
567
+ author_name: Optional[pulumi.Input[builtins.str]] = None,
361
568
  branch: Optional[pulumi.Input[builtins.str]] = None,
362
569
  commit_message: Optional[pulumi.Input[builtins.str]] = None,
570
+ committer_email: Optional[pulumi.Input[builtins.str]] = None,
571
+ committer_name: Optional[pulumi.Input[builtins.str]] = None,
363
572
  content: Optional[pulumi.Input[builtins.str]] = None,
364
573
  file: Optional[pulumi.Input[builtins.str]] = None,
365
574
  overwrite_on_create: Optional[pulumi.Input[builtins.bool]] = None,
@@ -373,8 +582,12 @@ class GitRepositoryFile(pulumi.CustomResource):
373
582
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
374
583
  __props__ = GitRepositoryFileArgs.__new__(GitRepositoryFileArgs)
375
584
 
585
+ __props__.__dict__["author_email"] = author_email
586
+ __props__.__dict__["author_name"] = author_name
376
587
  __props__.__dict__["branch"] = branch
377
588
  __props__.__dict__["commit_message"] = commit_message
589
+ __props__.__dict__["committer_email"] = committer_email
590
+ __props__.__dict__["committer_name"] = committer_name
378
591
  if content is None and not opts.urn:
379
592
  raise TypeError("Missing required property 'content'")
380
593
  __props__.__dict__["content"] = content
@@ -395,8 +608,12 @@ class GitRepositoryFile(pulumi.CustomResource):
395
608
  def get(resource_name: str,
396
609
  id: pulumi.Input[str],
397
610
  opts: Optional[pulumi.ResourceOptions] = None,
611
+ author_email: Optional[pulumi.Input[builtins.str]] = None,
612
+ author_name: Optional[pulumi.Input[builtins.str]] = None,
398
613
  branch: Optional[pulumi.Input[builtins.str]] = None,
399
614
  commit_message: Optional[pulumi.Input[builtins.str]] = None,
615
+ committer_email: Optional[pulumi.Input[builtins.str]] = None,
616
+ committer_name: Optional[pulumi.Input[builtins.str]] = None,
400
617
  content: Optional[pulumi.Input[builtins.str]] = None,
401
618
  file: Optional[pulumi.Input[builtins.str]] = None,
402
619
  overwrite_on_create: Optional[pulumi.Input[builtins.bool]] = None,
@@ -408,8 +625,12 @@ class GitRepositoryFile(pulumi.CustomResource):
408
625
  :param str resource_name: The unique name of the resulting resource.
409
626
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
410
627
  :param pulumi.ResourceOptions opts: Options for the resource.
628
+ :param pulumi.Input[builtins.str] author_email: The email of the author.
629
+ :param pulumi.Input[builtins.str] author_name: The name of the author.
411
630
  :param pulumi.Input[builtins.str] branch: Git branch (defaults to `refs/heads/master`). The branch must already exist, it will not be created if it does not already exist.
412
631
  :param pulumi.Input[builtins.str] commit_message: Commit message when adding or updating the managed file.
632
+ :param pulumi.Input[builtins.str] committer_email: The email of the committer.
633
+ :param pulumi.Input[builtins.str] committer_name: The name of the committer.
413
634
  :param pulumi.Input[builtins.str] content: The file content.
414
635
  :param pulumi.Input[builtins.str] file: The path of the file to manage.
415
636
  :param pulumi.Input[builtins.bool] overwrite_on_create: Enable overwriting existing files (defaults to `false`).
@@ -419,14 +640,34 @@ class GitRepositoryFile(pulumi.CustomResource):
419
640
 
420
641
  __props__ = _GitRepositoryFileState.__new__(_GitRepositoryFileState)
421
642
 
643
+ __props__.__dict__["author_email"] = author_email
644
+ __props__.__dict__["author_name"] = author_name
422
645
  __props__.__dict__["branch"] = branch
423
646
  __props__.__dict__["commit_message"] = commit_message
647
+ __props__.__dict__["committer_email"] = committer_email
648
+ __props__.__dict__["committer_name"] = committer_name
424
649
  __props__.__dict__["content"] = content
425
650
  __props__.__dict__["file"] = file
426
651
  __props__.__dict__["overwrite_on_create"] = overwrite_on_create
427
652
  __props__.__dict__["repository_id"] = repository_id
428
653
  return GitRepositoryFile(resource_name, opts=opts, __props__=__props__)
429
654
 
655
+ @property
656
+ @pulumi.getter(name="authorEmail")
657
+ def author_email(self) -> pulumi.Output[builtins.str]:
658
+ """
659
+ The email of the author.
660
+ """
661
+ return pulumi.get(self, "author_email")
662
+
663
+ @property
664
+ @pulumi.getter(name="authorName")
665
+ def author_name(self) -> pulumi.Output[builtins.str]:
666
+ """
667
+ The name of the author.
668
+ """
669
+ return pulumi.get(self, "author_name")
670
+
430
671
  @property
431
672
  @pulumi.getter
432
673
  def branch(self) -> pulumi.Output[Optional[builtins.str]]:
@@ -443,6 +684,22 @@ class GitRepositoryFile(pulumi.CustomResource):
443
684
  """
444
685
  return pulumi.get(self, "commit_message")
445
686
 
687
+ @property
688
+ @pulumi.getter(name="committerEmail")
689
+ def committer_email(self) -> pulumi.Output[builtins.str]:
690
+ """
691
+ The email of the committer.
692
+ """
693
+ return pulumi.get(self, "committer_email")
694
+
695
+ @property
696
+ @pulumi.getter(name="committerName")
697
+ def committer_name(self) -> pulumi.Output[builtins.str]:
698
+ """
699
+ The name of the committer.
700
+ """
701
+ return pulumi.get(self, "committer_name")
702
+
446
703
  @property
447
704
  @pulumi.getter
448
705
  def content(self) -> pulumi.Output[builtins.str]:
@@ -345,6 +345,7 @@ class _GroupState:
345
345
  pulumi.set(self, "url", value)
346
346
 
347
347
 
348
+ @pulumi.type_token("azuredevops:index/group:Group")
348
349
  class Group(pulumi.CustomResource):
349
350
  @overload
350
351
  def __init__(__self__,
@@ -233,6 +233,7 @@ class _GroupEntitlementState:
233
233
  pulumi.set(self, "principal_name", value)
234
234
 
235
235
 
236
+ @pulumi.type_token("azuredevops:index/groupEntitlement:GroupEntitlement")
236
237
  class GroupEntitlement(pulumi.CustomResource):
237
238
  @overload
238
239
  def __init__(__self__,
@@ -155,6 +155,7 @@ class _GroupMembershipState:
155
155
  pulumi.set(self, "mode", value)
156
156
 
157
157
 
158
+ @pulumi.type_token("azuredevops:index/groupMembership:GroupMembership")
158
159
  class GroupMembership(pulumi.CustomResource):
159
160
  @overload
160
161
  def __init__(__self__,
@@ -218,6 +218,7 @@ class _IterativePermissionsState:
218
218
  pulumi.set(self, "replace", value)
219
219
 
220
220
 
221
+ @pulumi.type_token("azuredevops:index/iterativePermissions:IterativePermissions")
221
222
  class IterativePermissions(pulumi.CustomResource):
222
223
  @overload
223
224
  def __init__(__self__,
@@ -194,6 +194,7 @@ class _LibraryPermissionsState:
194
194
  pulumi.set(self, "replace", value)
195
195
 
196
196
 
197
+ @pulumi.type_token("azuredevops:index/libraryPermissions:LibraryPermissions")
197
198
  class LibraryPermissions(pulumi.CustomResource):
198
199
  @overload
199
200
  def __init__(__self__,