Documentation ¶
Index ¶
- func Group_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func Group_IsConstruct(x interface{}) *bool
- func Group_IsTerraformElement(x interface{}) *bool
- func Group_IsTerraformResource(x interface{}) *bool
- func Group_TfResourceType() *string
- func NewGroupDefaultBranchProtectionDefaultsOutputReference_Override(g GroupDefaultBranchProtectionDefaultsOutputReference, ...)
- func NewGroupPushRulesOutputReference_Override(g GroupPushRulesOutputReference, terraformResource cdktf.IInterpolatingParent, ...)
- func NewGroup_Override(g Group, scope constructs.Construct, id *string, config *GroupConfig)
- type Group
- type GroupConfig
- type GroupDefaultBranchProtectionDefaults
- type GroupDefaultBranchProtectionDefaultsOutputReference
- type GroupPushRules
- type GroupPushRulesOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Group_GenerateConfigForImport ¶
func Group_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a Group resource upon running "cdktf plan <stack-name>".
func Group_IsConstruct ¶
func Group_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func Group_TfResourceType ¶
func Group_TfResourceType() *string
func NewGroupDefaultBranchProtectionDefaultsOutputReference_Override ¶ added in v13.4.0
func NewGroupDefaultBranchProtectionDefaultsOutputReference_Override(g GroupDefaultBranchProtectionDefaultsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewGroupPushRulesOutputReference_Override ¶
func NewGroupPushRulesOutputReference_Override(g GroupPushRulesOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewGroup_Override ¶
func NewGroup_Override(g Group, scope constructs.Construct, id *string, config *GroupConfig)
Create a new {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group gitlab_group} Resource.
Types ¶
type Group ¶
type Group interface { cdktf.TerraformResource AllowedEmailDomainsList() *[]*string SetAllowedEmailDomainsList(val *[]*string) AllowedEmailDomainsListInput() *[]*string AutoDevopsEnabled() interface{} SetAutoDevopsEnabled(val interface{}) AutoDevopsEnabledInput() interface{} Avatar() *string SetAvatar(val *string) AvatarHash() *string SetAvatarHash(val *string) AvatarHashInput() *string AvatarInput() *string AvatarUrl() *string // Experimental. CdktfStack() cdktf.TerraformStack // Experimental. Connection() interface{} // Experimental. SetConnection(val interface{}) // Experimental. ConstructNodeMetadata() *map[string]interface{} // Experimental. Count() interface{} // Experimental. SetCount(val interface{}) DefaultBranch() *string SetDefaultBranch(val *string) DefaultBranchInput() *string DefaultBranchProtection() *float64 SetDefaultBranchProtection(val *float64) DefaultBranchProtectionDefaults() GroupDefaultBranchProtectionDefaultsOutputReference DefaultBranchProtectionDefaultsInput() *GroupDefaultBranchProtectionDefaults DefaultBranchProtectionInput() *float64 // Experimental. DependsOn() *[]*string // Experimental. SetDependsOn(val *[]*string) Description() *string SetDescription(val *string) DescriptionInput() *string EmailsEnabled() interface{} SetEmailsEnabled(val interface{}) EmailsEnabledInput() interface{} // Experimental. ForEach() cdktf.ITerraformIterator // Experimental. SetForEach(val cdktf.ITerraformIterator) // Experimental. Fqn() *string // Experimental. FriendlyUniqueId() *string FullName() *string FullPath() *string Id() *string SetId(val *string) IdInput() *string IpRestrictionRanges() *[]*string SetIpRestrictionRanges(val *[]*string) IpRestrictionRangesInput() *[]*string LfsEnabled() interface{} SetLfsEnabled(val interface{}) LfsEnabledInput() interface{} // Experimental. Lifecycle() *cdktf.TerraformResourceLifecycle // Experimental. SetLifecycle(val *cdktf.TerraformResourceLifecycle) MembershipLock() interface{} SetMembershipLock(val interface{}) MembershipLockInput() interface{} MentionsDisabled() interface{} SetMentionsDisabled(val interface{}) MentionsDisabledInput() interface{} Name() *string SetName(val *string) NameInput() *string // The tree node. Node() constructs.Node ParentId() *float64 SetParentId(val *float64) ParentIdInput() *float64 Path() *string SetPath(val *string) PathInput() *string PermanentlyRemoveOnDelete() interface{} SetPermanentlyRemoveOnDelete(val interface{}) PermanentlyRemoveOnDeleteInput() interface{} PreventForkingOutsideGroup() interface{} SetPreventForkingOutsideGroup(val interface{}) PreventForkingOutsideGroupInput() interface{} ProjectCreationLevel() *string SetProjectCreationLevel(val *string) ProjectCreationLevelInput() *string // Experimental. Provider() cdktf.TerraformProvider // Experimental. SetProvider(val cdktf.TerraformProvider) // Experimental. Provisioners() *[]interface{} // Experimental. SetProvisioners(val *[]interface{}) PushRules() GroupPushRulesOutputReference PushRulesInput() *GroupPushRules // Experimental. RawOverrides() interface{} RequestAccessEnabled() interface{} SetRequestAccessEnabled(val interface{}) RequestAccessEnabledInput() interface{} RequireTwoFactorAuthentication() interface{} SetRequireTwoFactorAuthentication(val interface{}) RequireTwoFactorAuthenticationInput() interface{} RunnersToken() *string SubgroupCreationLevel() *string SetSubgroupCreationLevel(val *string) SubgroupCreationLevelInput() *string // Experimental. TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata // Experimental. TerraformMetaArguments() *map[string]interface{} // Experimental. TerraformResourceType() *string TwoFactorGracePeriod() *float64 SetTwoFactorGracePeriod(val *float64) TwoFactorGracePeriodInput() *float64 VisibilityLevel() *string SetVisibilityLevel(val *string) VisibilityLevelInput() *string WebUrl() *string WikiAccessLevel() *string SetWikiAccessLevel(val *string) WikiAccessLevelInput() *string // Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move. // Experimental. AddMoveTarget(moveTarget *string) // Experimental. AddOverride(path *string, value interface{}) // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. HasResourceMove() interface{} // Experimental. ImportFrom(id *string, provider cdktf.TerraformProvider) // Experimental. InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable // Move the resource corresponding to "id" to this resource. // // Note that the resource being moved from must be marked as moved using it's instance function. // Experimental. MoveFromId(id *string) // Moves this resource to the target resource given by moveTarget. // Experimental. MoveTo(moveTarget *string, index interface{}) // Moves this resource to the resource corresponding to "id". // Experimental. MoveToId(id *string) // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) PutDefaultBranchProtectionDefaults(value *GroupDefaultBranchProtectionDefaults) PutPushRules(value *GroupPushRules) ResetAllowedEmailDomainsList() ResetAutoDevopsEnabled() ResetAvatar() ResetAvatarHash() ResetDefaultBranch() ResetDefaultBranchProtection() ResetDefaultBranchProtectionDefaults() ResetDescription() ResetEmailsEnabled() ResetId() ResetIpRestrictionRanges() ResetLfsEnabled() ResetMembershipLock() ResetMentionsDisabled() // Resets a previously passed logical Id to use the auto-generated logical id again. // Experimental. ResetOverrideLogicalId() ResetParentId() ResetPermanentlyRemoveOnDelete() ResetPreventForkingOutsideGroup() ResetProjectCreationLevel() ResetPushRules() ResetRequestAccessEnabled() ResetRequireTwoFactorAuthentication() ResetSubgroupCreationLevel() ResetTwoFactorGracePeriod() ResetVisibilityLevel() ResetWikiAccessLevel() SynthesizeAttributes() *map[string]interface{} SynthesizeHclAttributes() *map[string]interface{} // Experimental. ToHclTerraform() interface{} // Experimental. ToMetadata() interface{} // Returns a string representation of this construct. ToString() *string // Adds this resource to the terraform JSON output. // Experimental. ToTerraform() interface{} }
Represents a {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group gitlab_group}.
func NewGroup ¶
func NewGroup(scope constructs.Construct, id *string, config *GroupConfig) Group
Create a new {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group gitlab_group} Resource.
type GroupConfig ¶
type GroupConfig struct { // Experimental. Connection interface{} `field:"optional" json:"connection" yaml:"connection"` // Experimental. Count interface{} `field:"optional" json:"count" yaml:"count"` // Experimental. DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"` // Experimental. ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"` // Experimental. Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"` // Experimental. Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"` // Experimental. Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"` // The name of the group. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#name Group#name} Name *string `field:"required" json:"name" yaml:"name"` // The path of the group. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#path Group#path} Path *string `field:"required" json:"path" yaml:"path"` // A list of email address domains to allow group access. Will be concatenated together into a comma separated string. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#allowed_email_domains_list Group#allowed_email_domains_list} AllowedEmailDomainsList *[]*string `field:"optional" json:"allowedEmailDomainsList" yaml:"allowedEmailDomainsList"` // Default to Auto DevOps pipeline for all projects within this group. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#auto_devops_enabled Group#auto_devops_enabled} AutoDevopsEnabled interface{} `field:"optional" json:"autoDevopsEnabled" yaml:"autoDevopsEnabled"` // A local path to the avatar image to upload. **Note**: not available for imported resources. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#avatar Group#avatar} Avatar *string `field:"optional" json:"avatar" yaml:"avatar"` // The hash of the avatar image. // // Use `filesha256("path/to/avatar.png")` whenever possible. **Note**: this is used to trigger an update of the avatar. If it's not given, but an avatar is given, the avatar will be updated each time. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#avatar_hash Group#avatar_hash} AvatarHash *string `field:"optional" json:"avatarHash" yaml:"avatarHash"` // Initial default branch name. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#default_branch Group#default_branch} DefaultBranch *string `field:"optional" json:"defaultBranch" yaml:"defaultBranch"` // See https://docs.gitlab.com/ee/api/groups.html#options-for-default_branch_protection. Valid values are: `0`, `1`, `2`, `3`, `4`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#default_branch_protection Group#default_branch_protection} DefaultBranchProtection *float64 `field:"optional" json:"defaultBranchProtection" yaml:"defaultBranchProtection"` // default_branch_protection_defaults block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#default_branch_protection_defaults Group#default_branch_protection_defaults} DefaultBranchProtectionDefaults *GroupDefaultBranchProtectionDefaults `field:"optional" json:"defaultBranchProtectionDefaults" yaml:"defaultBranchProtectionDefaults"` // The group's description. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#description Group#description} Description *string `field:"optional" json:"description" yaml:"description"` // Enable email notifications. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#emails_enabled Group#emails_enabled} EmailsEnabled interface{} `field:"optional" json:"emailsEnabled" yaml:"emailsEnabled"` // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#extra_shared_runners_minutes_limit Group#extra_shared_runners_minutes_limit} ExtraSharedRunnersMinutesLimit *float64 `field:"optional" json:"extraSharedRunnersMinutesLimit" yaml:"extraSharedRunnersMinutesLimit"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#id Group#id}. // // Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. // If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. Id *string `field:"optional" json:"id" yaml:"id"` // A list of IP addresses or subnet masks to restrict group access. // // Will be concatenated together into a comma separated string. Only allowed on top level groups. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#ip_restriction_ranges Group#ip_restriction_ranges} IpRestrictionRanges *[]*string `field:"optional" json:"ipRestrictionRanges" yaml:"ipRestrictionRanges"` // Enable/disable Large File Storage (LFS) for the projects in this group. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#lfs_enabled Group#lfs_enabled} LfsEnabled interface{} `field:"optional" json:"lfsEnabled" yaml:"lfsEnabled"` // Users cannot be added to projects in this group. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#membership_lock Group#membership_lock} MembershipLock interface{} `field:"optional" json:"membershipLock" yaml:"membershipLock"` // Disable the capability of a group from getting mentioned. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#mentions_disabled Group#mentions_disabled} MentionsDisabled interface{} `field:"optional" json:"mentionsDisabled" yaml:"mentionsDisabled"` // Id of the parent group (creates a nested group). // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#parent_id Group#parent_id} ParentId *float64 `field:"optional" json:"parentId" yaml:"parentId"` // Whether the group should be permanently removed during a `delete` operation. // // This only works with subgroups. Must be configured via an `apply` before the `destroy` is run. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#permanently_remove_on_delete Group#permanently_remove_on_delete} PermanentlyRemoveOnDelete interface{} `field:"optional" json:"permanentlyRemoveOnDelete" yaml:"permanentlyRemoveOnDelete"` // Defaults to false. When enabled, users can not fork projects from this group to external namespaces. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#prevent_forking_outside_group Group#prevent_forking_outside_group} PreventForkingOutsideGroup interface{} `field:"optional" json:"preventForkingOutsideGroup" yaml:"preventForkingOutsideGroup"` // Determine if developers can create projects in the group. Valid values are: `noone`, `owner`, `maintainer`, `developer`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#project_creation_level Group#project_creation_level} ProjectCreationLevel *string `field:"optional" json:"projectCreationLevel" yaml:"projectCreationLevel"` // push_rules block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#push_rules Group#push_rules} PushRules *GroupPushRules `field:"optional" json:"pushRules" yaml:"pushRules"` // Allow users to request member access. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#request_access_enabled Group#request_access_enabled} RequestAccessEnabled interface{} `field:"optional" json:"requestAccessEnabled" yaml:"requestAccessEnabled"` // Require all users in this group to setup Two-factor authentication. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#require_two_factor_authentication Group#require_two_factor_authentication} RequireTwoFactorAuthentication interface{} `field:"optional" json:"requireTwoFactorAuthentication" yaml:"requireTwoFactorAuthentication"` // // Maximum number of monthly CI/CD minutes for this group. Can be nil (default; inherit system default), 0 (unlimited), or > 0. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#shared_runners_minutes_limit Group#shared_runners_minutes_limit} SharedRunnersMinutesLimit *float64 `field:"optional" json:"sharedRunnersMinutesLimit" yaml:"sharedRunnersMinutesLimit"` // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#shared_runners_setting Group#shared_runners_setting} SharedRunnersSetting *string `field:"optional" json:"sharedRunnersSetting" yaml:"sharedRunnersSetting"` // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#share_with_group_lock Group#share_with_group_lock} ShareWithGroupLock interface{} `field:"optional" json:"shareWithGroupLock" yaml:"shareWithGroupLock"` // Allowed to create subgroups. Valid values are: `owner`, `maintainer`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#subgroup_creation_level Group#subgroup_creation_level} SubgroupCreationLevel *string `field:"optional" json:"subgroupCreationLevel" yaml:"subgroupCreationLevel"` // Defaults to 48. Time before Two-factor authentication is enforced (in hours). // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#two_factor_grace_period Group#two_factor_grace_period} TwoFactorGracePeriod *float64 `field:"optional" json:"twoFactorGracePeriod" yaml:"twoFactorGracePeriod"` // The group's visibility. Can be `private`, `internal`, or `public`. Valid values are: `private`, `internal`, `public`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#visibility_level Group#visibility_level} VisibilityLevel *string `field:"optional" json:"visibilityLevel" yaml:"visibilityLevel"` // The group's wiki access level. Only available on Premium and Ultimate plans. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#wiki_access_level Group#wiki_access_level} WikiAccessLevel *string `field:"optional" json:"wikiAccessLevel" yaml:"wikiAccessLevel"` }
type GroupDefaultBranchProtectionDefaults ¶ added in v13.4.0
type GroupDefaultBranchProtectionDefaults struct { // An array of access levels allowed to merge. Valid values are: `developer`, `maintainer`, `no one`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#allowed_to_merge Group#allowed_to_merge} AllowedToMerge *[]*string `field:"optional" json:"allowedToMerge" yaml:"allowedToMerge"` // An array of access levels allowed to push. Valid values are: `developer`, `maintainer`, `no one`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#allowed_to_push Group#allowed_to_push} AllowedToPush *[]*string `field:"optional" json:"allowedToPush" yaml:"allowedToPush"` // Allow force push for all users with push access. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#allow_force_push Group#allow_force_push} AllowForcePush interface{} `field:"optional" json:"allowForcePush" yaml:"allowForcePush"` // Allow developers to initial push. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#developer_can_initial_push Group#developer_can_initial_push} DeveloperCanInitialPush interface{} `field:"optional" json:"developerCanInitialPush" yaml:"developerCanInitialPush"` }
type GroupDefaultBranchProtectionDefaultsOutputReference ¶ added in v13.4.0
type GroupDefaultBranchProtectionDefaultsOutputReference interface { cdktf.ComplexObject AllowedToMerge() *[]*string SetAllowedToMerge(val *[]*string) AllowedToMergeInput() *[]*string AllowedToPush() *[]*string SetAllowedToPush(val *[]*string) AllowedToPushInput() *[]*string AllowForcePush() interface{} SetAllowForcePush(val interface{}) AllowForcePushInput() interface{} // the index of the complex object in a list. // Experimental. ComplexObjectIndex() interface{} // Experimental. SetComplexObjectIndex(val interface{}) // set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items. // Experimental. ComplexObjectIsFromSet() *bool // Experimental. SetComplexObjectIsFromSet(val *bool) // The creation stack of this resolvable which will be appended to errors thrown during resolution. // // If this returns an empty array the stack will not be attached. // Experimental. CreationStack() *[]*string DeveloperCanInitialPush() interface{} SetDeveloperCanInitialPush(val interface{}) DeveloperCanInitialPushInput() interface{} // Experimental. Fqn() *string InternalValue() *GroupDefaultBranchProtectionDefaults SetInternalValue(val *GroupDefaultBranchProtectionDefaults) // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) // Experimental. ComputeFqn() *string // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. InterpolationAsList() cdktf.IResolvable // Experimental. InterpolationForAttribute(property *string) cdktf.IResolvable ResetAllowedToMerge() ResetAllowedToPush() ResetAllowForcePush() ResetDeveloperCanInitialPush() // Produce the Token's value at resolution time. // Experimental. Resolve(_context cdktf.IResolveContext) interface{} // Return a string representation of this resolvable object. // // Returns a reversible string representation. // Experimental. ToString() *string }
func NewGroupDefaultBranchProtectionDefaultsOutputReference ¶ added in v13.4.0
func NewGroupDefaultBranchProtectionDefaultsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GroupDefaultBranchProtectionDefaultsOutputReference
type GroupPushRules ¶
type GroupPushRules struct { // All commit author emails must match this regex, e.g. `@my-company.com$`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#author_email_regex Group#author_email_regex} AuthorEmailRegex *string `field:"optional" json:"authorEmailRegex" yaml:"authorEmailRegex"` // All branch names must match this regex, e.g. `(feature|hotfix)\/*`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#branch_name_regex Group#branch_name_regex} BranchNameRegex *string `field:"optional" json:"branchNameRegex" yaml:"branchNameRegex"` // Only commits pushed using verified emails are allowed. // // **Note** This attribute is only supported in GitLab versions >= 16.4. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#commit_committer_check Group#commit_committer_check} CommitCommitterCheck interface{} `field:"optional" json:"commitCommitterCheck" yaml:"commitCommitterCheck"` // Users can only push commits to this repository if the commit author name is consistent with their GitLab account name. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#commit_committer_name_check Group#commit_committer_name_check} CommitCommitterNameCheck interface{} `field:"optional" json:"commitCommitterNameCheck" yaml:"commitCommitterNameCheck"` // No commit message is allowed to match this regex, for example `ssh\:\/\/`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#commit_message_negative_regex Group#commit_message_negative_regex} CommitMessageNegativeRegex *string `field:"optional" json:"commitMessageNegativeRegex" yaml:"commitMessageNegativeRegex"` // All commit messages must match this regex, e.g. `Fixed \d+\..*`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#commit_message_regex Group#commit_message_regex} CommitMessageRegex *string `field:"optional" json:"commitMessageRegex" yaml:"commitMessageRegex"` // Deny deleting a tag. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#deny_delete_tag Group#deny_delete_tag} DenyDeleteTag interface{} `field:"optional" json:"denyDeleteTag" yaml:"denyDeleteTag"` // Filenames matching the regular expression provided in this attribute are not allowed, for example, `(jar|exe)$`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#file_name_regex Group#file_name_regex} FileNameRegex *string `field:"optional" json:"fileNameRegex" yaml:"fileNameRegex"` // Maximum file size (MB) allowed. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#max_file_size Group#max_file_size} MaxFileSize *float64 `field:"optional" json:"maxFileSize" yaml:"maxFileSize"` // Allows only GitLab users to author commits. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#member_check Group#member_check} MemberCheck interface{} `field:"optional" json:"memberCheck" yaml:"memberCheck"` // GitLab will reject any files that are likely to contain secrets. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#prevent_secrets Group#prevent_secrets} PreventSecrets interface{} `field:"optional" json:"preventSecrets" yaml:"preventSecrets"` // Reject commit when it’s not DCO certified. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#reject_non_dco_commits Group#reject_non_dco_commits} RejectNonDcoCommits interface{} `field:"optional" json:"rejectNonDcoCommits" yaml:"rejectNonDcoCommits"` // Only commits signed through GPG are allowed. **Note** This attribute is only supported in GitLab versions >= 16.4. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.8.0/docs/resources/group#reject_unsigned_commits Group#reject_unsigned_commits} RejectUnsignedCommits interface{} `field:"optional" json:"rejectUnsignedCommits" yaml:"rejectUnsignedCommits"` }
type GroupPushRulesOutputReference ¶
type GroupPushRulesOutputReference interface { cdktf.ComplexObject AuthorEmailRegex() *string SetAuthorEmailRegex(val *string) AuthorEmailRegexInput() *string BranchNameRegex() *string SetBranchNameRegex(val *string) BranchNameRegexInput() *string CommitCommitterCheck() interface{} SetCommitCommitterCheck(val interface{}) CommitCommitterCheckInput() interface{} CommitCommitterNameCheck() interface{} SetCommitCommitterNameCheck(val interface{}) CommitCommitterNameCheckInput() interface{} CommitMessageNegativeRegex() *string SetCommitMessageNegativeRegex(val *string) CommitMessageNegativeRegexInput() *string CommitMessageRegex() *string SetCommitMessageRegex(val *string) CommitMessageRegexInput() *string // the index of the complex object in a list. // Experimental. ComplexObjectIndex() interface{} // Experimental. SetComplexObjectIndex(val interface{}) // set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items. // Experimental. ComplexObjectIsFromSet() *bool // Experimental. SetComplexObjectIsFromSet(val *bool) // The creation stack of this resolvable which will be appended to errors thrown during resolution. // // If this returns an empty array the stack will not be attached. // Experimental. CreationStack() *[]*string DenyDeleteTag() interface{} SetDenyDeleteTag(val interface{}) DenyDeleteTagInput() interface{} FileNameRegex() *string SetFileNameRegex(val *string) FileNameRegexInput() *string // Experimental. Fqn() *string InternalValue() *GroupPushRules SetInternalValue(val *GroupPushRules) MaxFileSize() *float64 SetMaxFileSize(val *float64) MaxFileSizeInput() *float64 MemberCheck() interface{} SetMemberCheck(val interface{}) MemberCheckInput() interface{} PreventSecrets() interface{} SetPreventSecrets(val interface{}) PreventSecretsInput() interface{} RejectNonDcoCommits() interface{} SetRejectNonDcoCommits(val interface{}) RejectNonDcoCommitsInput() interface{} RejectUnsignedCommits() interface{} SetRejectUnsignedCommits(val interface{}) RejectUnsignedCommitsInput() interface{} // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) // Experimental. ComputeFqn() *string // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. InterpolationAsList() cdktf.IResolvable // Experimental. InterpolationForAttribute(property *string) cdktf.IResolvable ResetAuthorEmailRegex() ResetBranchNameRegex() ResetCommitCommitterCheck() ResetCommitCommitterNameCheck() ResetCommitMessageNegativeRegex() ResetCommitMessageRegex() ResetDenyDeleteTag() ResetFileNameRegex() ResetMaxFileSize() ResetMemberCheck() ResetPreventSecrets() ResetRejectNonDcoCommits() ResetRejectUnsignedCommits() // Produce the Token's value at resolution time. // Experimental. Resolve(_context cdktf.IResolveContext) interface{} // Return a string representation of this resolvable object. // // Returns a reversible string representation. // Experimental. ToString() *string }
func NewGroupPushRulesOutputReference ¶
func NewGroupPushRulesOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GroupPushRulesOutputReference