projectpushrules

package
v13.6.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 20, 2024 License: MPL-2.0 Imports: 7 Imported by: 0

README

gitlab_project_push_rules

Refer to the Terraform Registry for docs: gitlab_project_push_rules.

Documentation

Index

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"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL