Documentation ¶
Index ¶
- func NewProjectPushRulesA_Override(p ProjectPushRulesA, scope constructs.Construct, id *string, ...)
- func ProjectPushRulesA_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func ProjectPushRulesA_IsConstruct(x interface{}) *bool
- func ProjectPushRulesA_IsTerraformElement(x interface{}) *bool
- func ProjectPushRulesA_IsTerraformResource(x interface{}) *bool
- func ProjectPushRulesA_TfResourceType() *string
- type ProjectPushRulesA
- type ProjectPushRulesAConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewProjectPushRulesA_Override ¶
func NewProjectPushRulesA_Override(p ProjectPushRulesA, scope constructs.Construct, id *string, config *ProjectPushRulesAConfig)
Create a new {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules gitlab_project_push_rules} Resource.
func ProjectPushRulesA_GenerateConfigForImport ¶
func ProjectPushRulesA_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a ProjectPushRulesA resource upon running "cdktf plan <stack-name>".
func ProjectPushRulesA_IsConstruct ¶
func ProjectPushRulesA_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 ProjectPushRulesA_IsTerraformElement ¶
func ProjectPushRulesA_IsTerraformElement(x interface{}) *bool
Experimental.
func ProjectPushRulesA_IsTerraformResource ¶
func ProjectPushRulesA_IsTerraformResource(x interface{}) *bool
Experimental.
func ProjectPushRulesA_TfResourceType ¶
func ProjectPushRulesA_TfResourceType() *string
Types ¶
type ProjectPushRulesA ¶
type ProjectPushRulesA interface { cdktf.TerraformResource AuthorEmailRegex() *string SetAuthorEmailRegex(val *string) AuthorEmailRegexInput() *string BranchNameRegex() *string SetBranchNameRegex(val *string) BranchNameRegexInput() *string // Experimental. CdktfStack() cdktf.TerraformStack 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 // Experimental. Connection() interface{} // Experimental. SetConnection(val interface{}) // Experimental. ConstructNodeMetadata() *map[string]interface{} // Experimental. Count() interface{} // Experimental. SetCount(val interface{}) DenyDeleteTag() interface{} SetDenyDeleteTag(val interface{}) DenyDeleteTagInput() interface{} // Experimental. DependsOn() *[]*string // Experimental. SetDependsOn(val *[]*string) FileNameRegex() *string SetFileNameRegex(val *string) FileNameRegexInput() *string // Experimental. ForEach() cdktf.ITerraformIterator // Experimental. SetForEach(val cdktf.ITerraformIterator) // Experimental. Fqn() *string // Experimental. FriendlyUniqueId() *string Id() *string // Experimental. Lifecycle() *cdktf.TerraformResourceLifecycle // Experimental. SetLifecycle(val *cdktf.TerraformResourceLifecycle) MaxFileSize() *float64 SetMaxFileSize(val *float64) MaxFileSizeInput() *float64 MemberCheck() interface{} SetMemberCheck(val interface{}) MemberCheckInput() interface{} // The tree node. Node() constructs.Node PreventSecrets() interface{} SetPreventSecrets(val interface{}) PreventSecretsInput() interface{} Project() *string SetProject(val *string) ProjectInput() *string // Experimental. Provider() cdktf.TerraformProvider // Experimental. SetProvider(val cdktf.TerraformProvider) // Experimental. Provisioners() *[]interface{} // Experimental. SetProvisioners(val *[]interface{}) // Experimental. RawOverrides() interface{} RejectNonDcoCommits() interface{} SetRejectNonDcoCommits(val interface{}) RejectNonDcoCommitsInput() interface{} RejectUnsignedCommits() interface{} SetRejectUnsignedCommits(val interface{}) RejectUnsignedCommitsInput() interface{} // Experimental. TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata // Experimental. TerraformMetaArguments() *map[string]interface{} // Experimental. TerraformResourceType() *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) ResetAuthorEmailRegex() ResetBranchNameRegex() ResetCommitCommitterCheck() ResetCommitCommitterNameCheck() ResetCommitMessageNegativeRegex() ResetCommitMessageRegex() ResetDenyDeleteTag() ResetFileNameRegex() ResetMaxFileSize() ResetMemberCheck() // Resets a previously passed logical Id to use the auto-generated logical id again. // Experimental. ResetOverrideLogicalId() ResetPreventSecrets() ResetRejectNonDcoCommits() ResetRejectUnsignedCommits() 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.7.0/docs/resources/project_push_rules gitlab_project_push_rules}.
func NewProjectPushRulesA ¶
func NewProjectPushRulesA(scope constructs.Construct, id *string, config *ProjectPushRulesAConfig) ProjectPushRulesA
Create a new {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules gitlab_project_push_rules} Resource.
type ProjectPushRulesAConfig ¶
type ProjectPushRulesAConfig 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 ID or URL-encoded path of the project. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules#project ProjectPushRulesA#project} Project *string `field:"required" json:"project" yaml:"project"` // 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.7.0/docs/resources/project_push_rules#author_email_regex ProjectPushRulesA#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.7.0/docs/resources/project_push_rules#branch_name_regex ProjectPushRulesA#branch_name_regex} BranchNameRegex *string `field:"optional" json:"branchNameRegex" yaml:"branchNameRegex"` // Users can only push commits to this repository that were committed with one of their own verified emails. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules#commit_committer_check ProjectPushRulesA#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.7.0/docs/resources/project_push_rules#commit_committer_name_check ProjectPushRulesA#commit_committer_name_check} CommitCommitterNameCheck interface{} `field:"optional" json:"commitCommitterNameCheck" yaml:"commitCommitterNameCheck"` // No commit message is allowed to match this regex, e.g. `ssh\:\/\/`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules#commit_message_negative_regex ProjectPushRulesA#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.7.0/docs/resources/project_push_rules#commit_message_regex ProjectPushRulesA#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.7.0/docs/resources/project_push_rules#deny_delete_tag ProjectPushRulesA#deny_delete_tag} DenyDeleteTag interface{} `field:"optional" json:"denyDeleteTag" yaml:"denyDeleteTag"` // All committed filenames must not match this regex, e.g. `(jar|exe)$`. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules#file_name_regex ProjectPushRulesA#file_name_regex} FileNameRegex *string `field:"optional" json:"fileNameRegex" yaml:"fileNameRegex"` // Maximum file size (MB). // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules#max_file_size ProjectPushRulesA#max_file_size} MaxFileSize *float64 `field:"optional" json:"maxFileSize" yaml:"maxFileSize"` // Restrict commits by author (email) to existing GitLab users. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules#member_check ProjectPushRulesA#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.7.0/docs/resources/project_push_rules#prevent_secrets ProjectPushRulesA#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.7.0/docs/resources/project_push_rules#reject_non_dco_commits ProjectPushRulesA#reject_non_dco_commits} RejectNonDcoCommits interface{} `field:"optional" json:"rejectNonDcoCommits" yaml:"rejectNonDcoCommits"` // Reject commit when it’s not signed. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/gitlabhq/gitlab/17.7.0/docs/resources/project_push_rules#reject_unsigned_commits ProjectPushRulesA#reject_unsigned_commits} RejectUnsignedCommits interface{} `field:"optional" json:"rejectUnsignedCommits" yaml:"rejectUnsignedCommits"` }