pulumi-gitlab 9.6.0a1766037229__py3-none-any.whl → 9.6.0a1766429294__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 (56) hide show
  1. pulumi_gitlab/__init__.py +13 -0
  2. pulumi_gitlab/_inputs.py +557 -0
  3. pulumi_gitlab/get_artifact_file.py +2 -2
  4. pulumi_gitlab/get_group_billable_member_memberships.py +2 -2
  5. pulumi_gitlab/get_group_membership.py +2 -2
  6. pulumi_gitlab/get_group_service_account.py +2 -2
  7. pulumi_gitlab/get_group_service_account_access_tokens.py +138 -0
  8. pulumi_gitlab/get_group_variable.py +1 -1
  9. pulumi_gitlab/get_instance_service_account.py +2 -2
  10. pulumi_gitlab/get_project.py +15 -1
  11. pulumi_gitlab/get_project_issue_label_events.py +170 -0
  12. pulumi_gitlab/get_project_membership.py +2 -2
  13. pulumi_gitlab/get_project_protected_tag.py +2 -2
  14. pulumi_gitlab/get_project_secure_file.py +247 -0
  15. pulumi_gitlab/get_projects.py +3 -3
  16. pulumi_gitlab/get_release_link.py +5 -5
  17. pulumi_gitlab/get_release_links.py +3 -3
  18. pulumi_gitlab/get_security_policy_document.py +170 -0
  19. pulumi_gitlab/global_level_notifications.py +2 -2
  20. pulumi_gitlab/group_access_token.py +4 -4
  21. pulumi_gitlab/group_label.py +7 -7
  22. pulumi_gitlab/group_membership.py +2 -2
  23. pulumi_gitlab/group_service_account.py +2 -2
  24. pulumi_gitlab/group_service_account_access_token.py +2 -2
  25. pulumi_gitlab/group_share_group.py +2 -2
  26. pulumi_gitlab/instance_service_account.py +2 -2
  27. pulumi_gitlab/instance_variable.py +12 -12
  28. pulumi_gitlab/label.py +7 -7
  29. pulumi_gitlab/member_role.py +9 -9
  30. pulumi_gitlab/outputs.py +770 -8
  31. pulumi_gitlab/pages_domain.py +7 -7
  32. pulumi_gitlab/personal_access_token.py +2 -2
  33. pulumi_gitlab/pipeline_schedule_variable.py +2 -2
  34. pulumi_gitlab/project.py +54 -7
  35. pulumi_gitlab/project_access_token.py +2 -2
  36. pulumi_gitlab/project_deploy_token.py +2 -2
  37. pulumi_gitlab/project_hook.py +2 -2
  38. pulumi_gitlab/project_label.py +11 -11
  39. pulumi_gitlab/project_level_mr_approvals.py +2 -2
  40. pulumi_gitlab/project_level_notifications.py +2 -2
  41. pulumi_gitlab/project_membership.py +2 -2
  42. pulumi_gitlab/project_target_branch_rule.py +2 -2
  43. pulumi_gitlab/project_variable.py +7 -7
  44. pulumi_gitlab/pulumi-plugin.json +1 -1
  45. pulumi_gitlab/release_link.py +18 -18
  46. pulumi_gitlab/runner.py +2 -2
  47. pulumi_gitlab/system_hook.py +7 -7
  48. pulumi_gitlab/user_avatar.py +386 -0
  49. pulumi_gitlab/user_gpg_key.py +2 -2
  50. pulumi_gitlab/user_impersonation_token.py +2 -2
  51. pulumi_gitlab/user_runner.py +2 -2
  52. pulumi_gitlab/user_ssh_key.py +2 -2
  53. {pulumi_gitlab-9.6.0a1766037229.dist-info → pulumi_gitlab-9.6.0a1766429294.dist-info}/METADATA +1 -1
  54. {pulumi_gitlab-9.6.0a1766037229.dist-info → pulumi_gitlab-9.6.0a1766429294.dist-info}/RECORD +56 -51
  55. {pulumi_gitlab-9.6.0a1766037229.dist-info → pulumi_gitlab-9.6.0a1766429294.dist-info}/WHEEL +0 -0
  56. {pulumi_gitlab-9.6.0a1766037229.dist-info → pulumi_gitlab-9.6.0a1766429294.dist-info}/top_level.txt +0 -0
pulumi_gitlab/__init__.py CHANGED
@@ -34,6 +34,7 @@ from .get_group_membership import *
34
34
  from .get_group_provisioned_users import *
35
35
  from .get_group_saml_links import *
36
36
  from .get_group_service_account import *
37
+ from .get_group_service_account_access_tokens import *
37
38
  from .get_group_subgroups import *
38
39
  from .get_group_variable import *
39
40
  from .get_group_variables import *
@@ -55,6 +56,7 @@ from .get_project_hook import *
55
56
  from .get_project_hooks import *
56
57
  from .get_project_ids import *
57
58
  from .get_project_issue import *
59
+ from .get_project_issue_label_events import *
58
60
  from .get_project_issues import *
59
61
  from .get_project_membership import *
60
62
  from .get_project_merge_request import *
@@ -66,6 +68,7 @@ from .get_project_protected_branch import *
66
68
  from .get_project_protected_branches import *
67
69
  from .get_project_protected_tag import *
68
70
  from .get_project_protected_tags import *
71
+ from .get_project_secure_file import *
69
72
  from .get_project_tag import *
70
73
  from .get_project_tags import *
71
74
  from .get_project_variable import *
@@ -77,6 +80,7 @@ from .get_release_links import *
77
80
  from .get_repository_file import *
78
81
  from .get_repository_tree import *
79
82
  from .get_runners import *
83
+ from .get_security_policy_document import *
80
84
  from .get_user import *
81
85
  from .get_user_sshkeys import *
82
86
  from .get_users import *
@@ -182,6 +186,7 @@ from .system_hook import *
182
186
  from .tag_protection import *
183
187
  from .topic import *
184
188
  from .user import *
189
+ from .user_avatar import *
185
190
  from .user_custom_attribute import *
186
191
  from .user_gpg_key import *
187
192
  from .user_identity import *
@@ -1098,6 +1103,14 @@ _utilities.register(
1098
1103
  "gitlab:index/user:User": "User"
1099
1104
  }
1100
1105
  },
1106
+ {
1107
+ "pkg": "gitlab",
1108
+ "mod": "index/userAvatar",
1109
+ "fqn": "pulumi_gitlab",
1110
+ "classes": {
1111
+ "gitlab:index/userAvatar:UserAvatar": "UserAvatar"
1112
+ }
1113
+ },
1101
1114
  {
1102
1115
  "pkg": "gitlab",
1103
1116
  "mod": "index/userCustomAttribute",
pulumi_gitlab/_inputs.py CHANGED
@@ -105,6 +105,18 @@ __all__ = [
105
105
  'GetReleaseAssetsLinkArgsDict',
106
106
  'GetReleaseAssetsSourceArgs',
107
107
  'GetReleaseAssetsSourceArgsDict',
108
+ 'GetSecurityPolicyDocumentScanExecutionPolicyArgs',
109
+ 'GetSecurityPolicyDocumentScanExecutionPolicyArgsDict',
110
+ 'GetSecurityPolicyDocumentScanExecutionPolicyActionArgs',
111
+ 'GetSecurityPolicyDocumentScanExecutionPolicyActionArgsDict',
112
+ 'GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgs',
113
+ 'GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgsDict',
114
+ 'GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgs',
115
+ 'GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgsDict',
116
+ 'GetSecurityPolicyDocumentScanExecutionPolicyRuleArgs',
117
+ 'GetSecurityPolicyDocumentScanExecutionPolicyRuleArgsDict',
118
+ 'GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgs',
119
+ 'GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgsDict',
108
120
  ]
109
121
 
110
122
  MYPY = False
@@ -5543,3 +5555,548 @@ class GetReleaseAssetsSourceArgs:
5543
5555
  pulumi.set(self, "url", value)
5544
5556
 
5545
5557
 
5558
+ if not MYPY:
5559
+ class GetSecurityPolicyDocumentScanExecutionPolicyArgsDict(TypedDict):
5560
+ actions: Sequence['GetSecurityPolicyDocumentScanExecutionPolicyActionArgsDict']
5561
+ """
5562
+ Actions to execute when rules match. At least one action is required.
5563
+ """
5564
+ enabled: _builtins.bool
5565
+ """
5566
+ Whether the policy is enabled.
5567
+ """
5568
+ name: _builtins.str
5569
+ """
5570
+ Name of the scan execution policy.
5571
+ """
5572
+ rules: Sequence['GetSecurityPolicyDocumentScanExecutionPolicyRuleArgsDict']
5573
+ """
5574
+ Rules that trigger the policy. At least one rule is required.
5575
+ """
5576
+ description: NotRequired[_builtins.str]
5577
+ """
5578
+ Description of the scan execution policy.
5579
+ """
5580
+ policy_scope: NotRequired['GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgsDict']
5581
+ """
5582
+ Scope configuration to limit which projects the policy applies to.
5583
+ """
5584
+ skip_ci: NotRequired['GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgsDict']
5585
+ """
5586
+ Control whether users can use the skip-ci directive.
5587
+ """
5588
+ elif False:
5589
+ GetSecurityPolicyDocumentScanExecutionPolicyArgsDict: TypeAlias = Mapping[str, Any]
5590
+
5591
+ @pulumi.input_type
5592
+ class GetSecurityPolicyDocumentScanExecutionPolicyArgs:
5593
+ def __init__(__self__, *,
5594
+ actions: Sequence['GetSecurityPolicyDocumentScanExecutionPolicyActionArgs'],
5595
+ enabled: _builtins.bool,
5596
+ name: _builtins.str,
5597
+ rules: Sequence['GetSecurityPolicyDocumentScanExecutionPolicyRuleArgs'],
5598
+ description: Optional[_builtins.str] = None,
5599
+ policy_scope: Optional['GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgs'] = None,
5600
+ skip_ci: Optional['GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgs'] = None):
5601
+ """
5602
+ :param Sequence['GetSecurityPolicyDocumentScanExecutionPolicyActionArgs'] actions: Actions to execute when rules match. At least one action is required.
5603
+ :param _builtins.bool enabled: Whether the policy is enabled.
5604
+ :param _builtins.str name: Name of the scan execution policy.
5605
+ :param Sequence['GetSecurityPolicyDocumentScanExecutionPolicyRuleArgs'] rules: Rules that trigger the policy. At least one rule is required.
5606
+ :param _builtins.str description: Description of the scan execution policy.
5607
+ :param 'GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgs' policy_scope: Scope configuration to limit which projects the policy applies to.
5608
+ :param 'GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgs' skip_ci: Control whether users can use the skip-ci directive.
5609
+ """
5610
+ pulumi.set(__self__, "actions", actions)
5611
+ pulumi.set(__self__, "enabled", enabled)
5612
+ pulumi.set(__self__, "name", name)
5613
+ pulumi.set(__self__, "rules", rules)
5614
+ if description is not None:
5615
+ pulumi.set(__self__, "description", description)
5616
+ if policy_scope is not None:
5617
+ pulumi.set(__self__, "policy_scope", policy_scope)
5618
+ if skip_ci is not None:
5619
+ pulumi.set(__self__, "skip_ci", skip_ci)
5620
+
5621
+ @_builtins.property
5622
+ @pulumi.getter
5623
+ def actions(self) -> Sequence['GetSecurityPolicyDocumentScanExecutionPolicyActionArgs']:
5624
+ """
5625
+ Actions to execute when rules match. At least one action is required.
5626
+ """
5627
+ return pulumi.get(self, "actions")
5628
+
5629
+ @actions.setter
5630
+ def actions(self, value: Sequence['GetSecurityPolicyDocumentScanExecutionPolicyActionArgs']):
5631
+ pulumi.set(self, "actions", value)
5632
+
5633
+ @_builtins.property
5634
+ @pulumi.getter
5635
+ def enabled(self) -> _builtins.bool:
5636
+ """
5637
+ Whether the policy is enabled.
5638
+ """
5639
+ return pulumi.get(self, "enabled")
5640
+
5641
+ @enabled.setter
5642
+ def enabled(self, value: _builtins.bool):
5643
+ pulumi.set(self, "enabled", value)
5644
+
5645
+ @_builtins.property
5646
+ @pulumi.getter
5647
+ def name(self) -> _builtins.str:
5648
+ """
5649
+ Name of the scan execution policy.
5650
+ """
5651
+ return pulumi.get(self, "name")
5652
+
5653
+ @name.setter
5654
+ def name(self, value: _builtins.str):
5655
+ pulumi.set(self, "name", value)
5656
+
5657
+ @_builtins.property
5658
+ @pulumi.getter
5659
+ def rules(self) -> Sequence['GetSecurityPolicyDocumentScanExecutionPolicyRuleArgs']:
5660
+ """
5661
+ Rules that trigger the policy. At least one rule is required.
5662
+ """
5663
+ return pulumi.get(self, "rules")
5664
+
5665
+ @rules.setter
5666
+ def rules(self, value: Sequence['GetSecurityPolicyDocumentScanExecutionPolicyRuleArgs']):
5667
+ pulumi.set(self, "rules", value)
5668
+
5669
+ @_builtins.property
5670
+ @pulumi.getter
5671
+ def description(self) -> Optional[_builtins.str]:
5672
+ """
5673
+ Description of the scan execution policy.
5674
+ """
5675
+ return pulumi.get(self, "description")
5676
+
5677
+ @description.setter
5678
+ def description(self, value: Optional[_builtins.str]):
5679
+ pulumi.set(self, "description", value)
5680
+
5681
+ @_builtins.property
5682
+ @pulumi.getter(name="policyScope")
5683
+ def policy_scope(self) -> Optional['GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgs']:
5684
+ """
5685
+ Scope configuration to limit which projects the policy applies to.
5686
+ """
5687
+ return pulumi.get(self, "policy_scope")
5688
+
5689
+ @policy_scope.setter
5690
+ def policy_scope(self, value: Optional['GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgs']):
5691
+ pulumi.set(self, "policy_scope", value)
5692
+
5693
+ @_builtins.property
5694
+ @pulumi.getter(name="skipCi")
5695
+ def skip_ci(self) -> Optional['GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgs']:
5696
+ """
5697
+ Control whether users can use the skip-ci directive.
5698
+ """
5699
+ return pulumi.get(self, "skip_ci")
5700
+
5701
+ @skip_ci.setter
5702
+ def skip_ci(self, value: Optional['GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgs']):
5703
+ pulumi.set(self, "skip_ci", value)
5704
+
5705
+
5706
+ if not MYPY:
5707
+ class GetSecurityPolicyDocumentScanExecutionPolicyActionArgsDict(TypedDict):
5708
+ scan: _builtins.str
5709
+ """
5710
+ Type of scan to run. Valid values: `sast`, `secret_detection`, `container_scanning`, `dependency_scanning`, `dast`, `sast_iac`, `cluster_image_scanning`, `api_fuzzing`, `coverage_fuzzing`.
5711
+ """
5712
+ scanner_profile: NotRequired[_builtins.str]
5713
+ """
5714
+ Scanner profile to use for DAST scans.
5715
+ """
5716
+ site_profile: NotRequired[_builtins.str]
5717
+ """
5718
+ Site profile to use for DAST scans.
5719
+ """
5720
+ tags_to_excludes: NotRequired[Sequence[_builtins.str]]
5721
+ """
5722
+ Tags to exclude from the scan.
5723
+ """
5724
+ template: NotRequired[_builtins.str]
5725
+ """
5726
+ The template to use for the scan. Valid values: `default`, `latest`.
5727
+ """
5728
+ variables: NotRequired[Mapping[str, _builtins.str]]
5729
+ """
5730
+ Environment variables to pass to the scan job.
5731
+ """
5732
+ elif False:
5733
+ GetSecurityPolicyDocumentScanExecutionPolicyActionArgsDict: TypeAlias = Mapping[str, Any]
5734
+
5735
+ @pulumi.input_type
5736
+ class GetSecurityPolicyDocumentScanExecutionPolicyActionArgs:
5737
+ def __init__(__self__, *,
5738
+ scan: _builtins.str,
5739
+ scanner_profile: Optional[_builtins.str] = None,
5740
+ site_profile: Optional[_builtins.str] = None,
5741
+ tags_to_excludes: Optional[Sequence[_builtins.str]] = None,
5742
+ template: Optional[_builtins.str] = None,
5743
+ variables: Optional[Mapping[str, _builtins.str]] = None):
5744
+ """
5745
+ :param _builtins.str scan: Type of scan to run. Valid values: `sast`, `secret_detection`, `container_scanning`, `dependency_scanning`, `dast`, `sast_iac`, `cluster_image_scanning`, `api_fuzzing`, `coverage_fuzzing`.
5746
+ :param _builtins.str scanner_profile: Scanner profile to use for DAST scans.
5747
+ :param _builtins.str site_profile: Site profile to use for DAST scans.
5748
+ :param Sequence[_builtins.str] tags_to_excludes: Tags to exclude from the scan.
5749
+ :param _builtins.str template: The template to use for the scan. Valid values: `default`, `latest`.
5750
+ :param Mapping[str, _builtins.str] variables: Environment variables to pass to the scan job.
5751
+ """
5752
+ pulumi.set(__self__, "scan", scan)
5753
+ if scanner_profile is not None:
5754
+ pulumi.set(__self__, "scanner_profile", scanner_profile)
5755
+ if site_profile is not None:
5756
+ pulumi.set(__self__, "site_profile", site_profile)
5757
+ if tags_to_excludes is not None:
5758
+ pulumi.set(__self__, "tags_to_excludes", tags_to_excludes)
5759
+ if template is not None:
5760
+ pulumi.set(__self__, "template", template)
5761
+ if variables is not None:
5762
+ pulumi.set(__self__, "variables", variables)
5763
+
5764
+ @_builtins.property
5765
+ @pulumi.getter
5766
+ def scan(self) -> _builtins.str:
5767
+ """
5768
+ Type of scan to run. Valid values: `sast`, `secret_detection`, `container_scanning`, `dependency_scanning`, `dast`, `sast_iac`, `cluster_image_scanning`, `api_fuzzing`, `coverage_fuzzing`.
5769
+ """
5770
+ return pulumi.get(self, "scan")
5771
+
5772
+ @scan.setter
5773
+ def scan(self, value: _builtins.str):
5774
+ pulumi.set(self, "scan", value)
5775
+
5776
+ @_builtins.property
5777
+ @pulumi.getter(name="scannerProfile")
5778
+ def scanner_profile(self) -> Optional[_builtins.str]:
5779
+ """
5780
+ Scanner profile to use for DAST scans.
5781
+ """
5782
+ return pulumi.get(self, "scanner_profile")
5783
+
5784
+ @scanner_profile.setter
5785
+ def scanner_profile(self, value: Optional[_builtins.str]):
5786
+ pulumi.set(self, "scanner_profile", value)
5787
+
5788
+ @_builtins.property
5789
+ @pulumi.getter(name="siteProfile")
5790
+ def site_profile(self) -> Optional[_builtins.str]:
5791
+ """
5792
+ Site profile to use for DAST scans.
5793
+ """
5794
+ return pulumi.get(self, "site_profile")
5795
+
5796
+ @site_profile.setter
5797
+ def site_profile(self, value: Optional[_builtins.str]):
5798
+ pulumi.set(self, "site_profile", value)
5799
+
5800
+ @_builtins.property
5801
+ @pulumi.getter(name="tagsToExcludes")
5802
+ def tags_to_excludes(self) -> Optional[Sequence[_builtins.str]]:
5803
+ """
5804
+ Tags to exclude from the scan.
5805
+ """
5806
+ return pulumi.get(self, "tags_to_excludes")
5807
+
5808
+ @tags_to_excludes.setter
5809
+ def tags_to_excludes(self, value: Optional[Sequence[_builtins.str]]):
5810
+ pulumi.set(self, "tags_to_excludes", value)
5811
+
5812
+ @_builtins.property
5813
+ @pulumi.getter
5814
+ def template(self) -> Optional[_builtins.str]:
5815
+ """
5816
+ The template to use for the scan. Valid values: `default`, `latest`.
5817
+ """
5818
+ return pulumi.get(self, "template")
5819
+
5820
+ @template.setter
5821
+ def template(self, value: Optional[_builtins.str]):
5822
+ pulumi.set(self, "template", value)
5823
+
5824
+ @_builtins.property
5825
+ @pulumi.getter
5826
+ def variables(self) -> Optional[Mapping[str, _builtins.str]]:
5827
+ """
5828
+ Environment variables to pass to the scan job.
5829
+ """
5830
+ return pulumi.get(self, "variables")
5831
+
5832
+ @variables.setter
5833
+ def variables(self, value: Optional[Mapping[str, _builtins.str]]):
5834
+ pulumi.set(self, "variables", value)
5835
+
5836
+
5837
+ if not MYPY:
5838
+ class GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgsDict(TypedDict):
5839
+ compliance_frameworks: NotRequired[Sequence[_builtins.str]]
5840
+ """
5841
+ Compliance framework names to scope the policy to.
5842
+ """
5843
+ projects: NotRequired['GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgsDict']
5844
+ """
5845
+ Project scope configuration.
5846
+ """
5847
+ elif False:
5848
+ GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgsDict: TypeAlias = Mapping[str, Any]
5849
+
5850
+ @pulumi.input_type
5851
+ class GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeArgs:
5852
+ def __init__(__self__, *,
5853
+ compliance_frameworks: Optional[Sequence[_builtins.str]] = None,
5854
+ projects: Optional['GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgs'] = None):
5855
+ """
5856
+ :param Sequence[_builtins.str] compliance_frameworks: Compliance framework names to scope the policy to.
5857
+ :param 'GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgs' projects: Project scope configuration.
5858
+ """
5859
+ if compliance_frameworks is not None:
5860
+ pulumi.set(__self__, "compliance_frameworks", compliance_frameworks)
5861
+ if projects is not None:
5862
+ pulumi.set(__self__, "projects", projects)
5863
+
5864
+ @_builtins.property
5865
+ @pulumi.getter(name="complianceFrameworks")
5866
+ def compliance_frameworks(self) -> Optional[Sequence[_builtins.str]]:
5867
+ """
5868
+ Compliance framework names to scope the policy to.
5869
+ """
5870
+ return pulumi.get(self, "compliance_frameworks")
5871
+
5872
+ @compliance_frameworks.setter
5873
+ def compliance_frameworks(self, value: Optional[Sequence[_builtins.str]]):
5874
+ pulumi.set(self, "compliance_frameworks", value)
5875
+
5876
+ @_builtins.property
5877
+ @pulumi.getter
5878
+ def projects(self) -> Optional['GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgs']:
5879
+ """
5880
+ Project scope configuration.
5881
+ """
5882
+ return pulumi.get(self, "projects")
5883
+
5884
+ @projects.setter
5885
+ def projects(self, value: Optional['GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgs']):
5886
+ pulumi.set(self, "projects", value)
5887
+
5888
+
5889
+ if not MYPY:
5890
+ class GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgsDict(TypedDict):
5891
+ excludings: NotRequired[Sequence[_builtins.int]]
5892
+ """
5893
+ List of project IDs to exclude from this policy.
5894
+ """
5895
+ includings: NotRequired[Sequence[_builtins.int]]
5896
+ """
5897
+ List of project IDs to explicitly include in this policy.
5898
+ """
5899
+ elif False:
5900
+ GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgsDict: TypeAlias = Mapping[str, Any]
5901
+
5902
+ @pulumi.input_type
5903
+ class GetSecurityPolicyDocumentScanExecutionPolicyPolicyScopeProjectsArgs:
5904
+ def __init__(__self__, *,
5905
+ excludings: Optional[Sequence[_builtins.int]] = None,
5906
+ includings: Optional[Sequence[_builtins.int]] = None):
5907
+ """
5908
+ :param Sequence[_builtins.int] excludings: List of project IDs to exclude from this policy.
5909
+ :param Sequence[_builtins.int] includings: List of project IDs to explicitly include in this policy.
5910
+ """
5911
+ if excludings is not None:
5912
+ pulumi.set(__self__, "excludings", excludings)
5913
+ if includings is not None:
5914
+ pulumi.set(__self__, "includings", includings)
5915
+
5916
+ @_builtins.property
5917
+ @pulumi.getter
5918
+ def excludings(self) -> Optional[Sequence[_builtins.int]]:
5919
+ """
5920
+ List of project IDs to exclude from this policy.
5921
+ """
5922
+ return pulumi.get(self, "excludings")
5923
+
5924
+ @excludings.setter
5925
+ def excludings(self, value: Optional[Sequence[_builtins.int]]):
5926
+ pulumi.set(self, "excludings", value)
5927
+
5928
+ @_builtins.property
5929
+ @pulumi.getter
5930
+ def includings(self) -> Optional[Sequence[_builtins.int]]:
5931
+ """
5932
+ List of project IDs to explicitly include in this policy.
5933
+ """
5934
+ return pulumi.get(self, "includings")
5935
+
5936
+ @includings.setter
5937
+ def includings(self, value: Optional[Sequence[_builtins.int]]):
5938
+ pulumi.set(self, "includings", value)
5939
+
5940
+
5941
+ if not MYPY:
5942
+ class GetSecurityPolicyDocumentScanExecutionPolicyRuleArgsDict(TypedDict):
5943
+ type: _builtins.str
5944
+ """
5945
+ Type of rule. Valid values: `pipeline`, `schedule`, `agent`.
5946
+ """
5947
+ agents: NotRequired[Mapping[str, _builtins.str]]
5948
+ """
5949
+ Kubernetes agents configuration for agent-based policies.
5950
+ """
5951
+ branch_exceptions: NotRequired[Sequence[_builtins.str]]
5952
+ """
5953
+ Branches to exclude from the policy.
5954
+ """
5955
+ branch_type: NotRequired[_builtins.str]
5956
+ """
5957
+ Type of branches to match. Valid values: `all`, `protected`, `default`.
5958
+ """
5959
+ branches: NotRequired[Sequence[_builtins.str]]
5960
+ """
5961
+ Branch names or patterns to match.
5962
+ """
5963
+ cadence: NotRequired[_builtins.str]
5964
+ """
5965
+ Cron expression for schedule type rules (e.g., `*/15 * * * *` for every 15 minutes).
5966
+ """
5967
+ elif False:
5968
+ GetSecurityPolicyDocumentScanExecutionPolicyRuleArgsDict: TypeAlias = Mapping[str, Any]
5969
+
5970
+ @pulumi.input_type
5971
+ class GetSecurityPolicyDocumentScanExecutionPolicyRuleArgs:
5972
+ def __init__(__self__, *,
5973
+ type: _builtins.str,
5974
+ agents: Optional[Mapping[str, _builtins.str]] = None,
5975
+ branch_exceptions: Optional[Sequence[_builtins.str]] = None,
5976
+ branch_type: Optional[_builtins.str] = None,
5977
+ branches: Optional[Sequence[_builtins.str]] = None,
5978
+ cadence: Optional[_builtins.str] = None):
5979
+ """
5980
+ :param _builtins.str type: Type of rule. Valid values: `pipeline`, `schedule`, `agent`.
5981
+ :param Mapping[str, _builtins.str] agents: Kubernetes agents configuration for agent-based policies.
5982
+ :param Sequence[_builtins.str] branch_exceptions: Branches to exclude from the policy.
5983
+ :param _builtins.str branch_type: Type of branches to match. Valid values: `all`, `protected`, `default`.
5984
+ :param Sequence[_builtins.str] branches: Branch names or patterns to match.
5985
+ :param _builtins.str cadence: Cron expression for schedule type rules (e.g., `*/15 * * * *` for every 15 minutes).
5986
+ """
5987
+ pulumi.set(__self__, "type", type)
5988
+ if agents is not None:
5989
+ pulumi.set(__self__, "agents", agents)
5990
+ if branch_exceptions is not None:
5991
+ pulumi.set(__self__, "branch_exceptions", branch_exceptions)
5992
+ if branch_type is not None:
5993
+ pulumi.set(__self__, "branch_type", branch_type)
5994
+ if branches is not None:
5995
+ pulumi.set(__self__, "branches", branches)
5996
+ if cadence is not None:
5997
+ pulumi.set(__self__, "cadence", cadence)
5998
+
5999
+ @_builtins.property
6000
+ @pulumi.getter
6001
+ def type(self) -> _builtins.str:
6002
+ """
6003
+ Type of rule. Valid values: `pipeline`, `schedule`, `agent`.
6004
+ """
6005
+ return pulumi.get(self, "type")
6006
+
6007
+ @type.setter
6008
+ def type(self, value: _builtins.str):
6009
+ pulumi.set(self, "type", value)
6010
+
6011
+ @_builtins.property
6012
+ @pulumi.getter
6013
+ def agents(self) -> Optional[Mapping[str, _builtins.str]]:
6014
+ """
6015
+ Kubernetes agents configuration for agent-based policies.
6016
+ """
6017
+ return pulumi.get(self, "agents")
6018
+
6019
+ @agents.setter
6020
+ def agents(self, value: Optional[Mapping[str, _builtins.str]]):
6021
+ pulumi.set(self, "agents", value)
6022
+
6023
+ @_builtins.property
6024
+ @pulumi.getter(name="branchExceptions")
6025
+ def branch_exceptions(self) -> Optional[Sequence[_builtins.str]]:
6026
+ """
6027
+ Branches to exclude from the policy.
6028
+ """
6029
+ return pulumi.get(self, "branch_exceptions")
6030
+
6031
+ @branch_exceptions.setter
6032
+ def branch_exceptions(self, value: Optional[Sequence[_builtins.str]]):
6033
+ pulumi.set(self, "branch_exceptions", value)
6034
+
6035
+ @_builtins.property
6036
+ @pulumi.getter(name="branchType")
6037
+ def branch_type(self) -> Optional[_builtins.str]:
6038
+ """
6039
+ Type of branches to match. Valid values: `all`, `protected`, `default`.
6040
+ """
6041
+ return pulumi.get(self, "branch_type")
6042
+
6043
+ @branch_type.setter
6044
+ def branch_type(self, value: Optional[_builtins.str]):
6045
+ pulumi.set(self, "branch_type", value)
6046
+
6047
+ @_builtins.property
6048
+ @pulumi.getter
6049
+ def branches(self) -> Optional[Sequence[_builtins.str]]:
6050
+ """
6051
+ Branch names or patterns to match.
6052
+ """
6053
+ return pulumi.get(self, "branches")
6054
+
6055
+ @branches.setter
6056
+ def branches(self, value: Optional[Sequence[_builtins.str]]):
6057
+ pulumi.set(self, "branches", value)
6058
+
6059
+ @_builtins.property
6060
+ @pulumi.getter
6061
+ def cadence(self) -> Optional[_builtins.str]:
6062
+ """
6063
+ Cron expression for schedule type rules (e.g., `*/15 * * * *` for every 15 minutes).
6064
+ """
6065
+ return pulumi.get(self, "cadence")
6066
+
6067
+ @cadence.setter
6068
+ def cadence(self, value: Optional[_builtins.str]):
6069
+ pulumi.set(self, "cadence", value)
6070
+
6071
+
6072
+ if not MYPY:
6073
+ class GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgsDict(TypedDict):
6074
+ allowed: _builtins.bool
6075
+ """
6076
+ Allow (true) or prevent (false) the use of skip-ci directive.
6077
+ """
6078
+ elif False:
6079
+ GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgsDict: TypeAlias = Mapping[str, Any]
6080
+
6081
+ @pulumi.input_type
6082
+ class GetSecurityPolicyDocumentScanExecutionPolicySkipCiArgs:
6083
+ def __init__(__self__, *,
6084
+ allowed: _builtins.bool):
6085
+ """
6086
+ :param _builtins.bool allowed: Allow (true) or prevent (false) the use of skip-ci directive.
6087
+ """
6088
+ pulumi.set(__self__, "allowed", allowed)
6089
+
6090
+ @_builtins.property
6091
+ @pulumi.getter
6092
+ def allowed(self) -> _builtins.bool:
6093
+ """
6094
+ Allow (true) or prevent (false) the use of skip-ci directive.
6095
+ """
6096
+ return pulumi.get(self, "allowed")
6097
+
6098
+ @allowed.setter
6099
+ def allowed(self, value: _builtins.bool):
6100
+ pulumi.set(self, "allowed", value)
6101
+
6102
+
@@ -141,7 +141,7 @@ def get_artifact_file(artifact_path: Optional[_builtins.str] = None,
141
141
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetArtifactFileResult:
142
142
  """
143
143
  The `get_artifact_file` data source allows downloading a single artifact file from a specific job in the latest successful pipeline for a given reference (branch, tag, or commit).
144
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/ee/api/job_artifacts.html#download-a-single-artifact-file-from-specific-tag-or-branch)
144
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/job_artifacts/#download-a-single-artifact-file-by-reference-name)
145
145
 
146
146
  ## Example Usage
147
147
 
@@ -207,7 +207,7 @@ def get_artifact_file_output(artifact_path: Optional[pulumi.Input[_builtins.str]
207
207
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetArtifactFileResult]:
208
208
  """
209
209
  The `get_artifact_file` data source allows downloading a single artifact file from a specific job in the latest successful pipeline for a given reference (branch, tag, or commit).
210
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/ee/api/job_artifacts.html#download-a-single-artifact-file-from-specific-tag-or-branch)
210
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/job_artifacts/#download-a-single-artifact-file-by-reference-name)
211
211
 
212
212
  ## Example Usage
213
213
 
@@ -97,7 +97,7 @@ def get_group_billable_member_memberships(group_id: Optional[_builtins.str] = No
97
97
  > When using the `email` attribute, an exact match is not guaranteed. The most related match will be returned. Starting with GitLab 16.6,
98
98
  the most related match will prioritize an exact match if one is available.
99
99
 
100
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/members/#list-memberships-for-a-billable-member-of-a-group)
100
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/group_members/#list-all-billable-members-of-a-group)
101
101
 
102
102
  ## Example Usage
103
103
 
@@ -135,7 +135,7 @@ def get_group_billable_member_memberships_output(group_id: Optional[pulumi.Input
135
135
  > When using the `email` attribute, an exact match is not guaranteed. The most related match will be returned. Starting with GitLab 16.6,
136
136
  the most related match will prioritize an exact match if one is available.
137
137
 
138
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/members/#list-memberships-for-a-billable-member-of-a-group)
138
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/group_members/#list-all-billable-members-of-a-group)
139
139
 
140
140
  ## Example Usage
141
141
 
@@ -118,7 +118,7 @@ def get_group_membership(access_level: Optional[_builtins.str] = None,
118
118
  """
119
119
  The `GroupMembership` data source allows to list and filter all members of a group specified by either its id or full path.
120
120
 
121
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/members/#list-all-members-of-a-group-or-project)
121
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/group_members/#list-all-members-of-a-group)
122
122
 
123
123
 
124
124
  :param _builtins.str access_level: Only return members with the desired access level. Acceptable values are: `guest`, `reporter`, `developer`, `maintainer`, `owner`.
@@ -149,7 +149,7 @@ def get_group_membership_output(access_level: Optional[pulumi.Input[Optional[_bu
149
149
  """
150
150
  The `GroupMembership` data source allows to list and filter all members of a group specified by either its id or full path.
151
151
 
152
- **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/members/#list-all-members-of-a-group-or-project)
152
+ **Upstream API**: [GitLab REST API docs](https://docs.gitlab.com/api/group_members/#list-all-members-of-a-group)
153
153
 
154
154
 
155
155
  :param _builtins.str access_level: Only return members with the desired access level. Acceptable values are: `guest`, `reporter`, `developer`, `maintainer`, `owner`.