Documentation ¶
Index ¶
- func NewProjectContainerExpirationPolicyOutputReference_Override(p ProjectContainerExpirationPolicyOutputReference, ...)
- func NewProjectPushRulesOutputReference_Override(p ProjectPushRulesOutputReference, ...)
- func NewProject_Override(p Project, scope constructs.Construct, id *string, config *ProjectConfig)
- func Project_IsConstruct(x interface{}) *bool
- func Project_TfResourceType() *string
- type Project
- type ProjectConfig
- type ProjectContainerExpirationPolicy
- type ProjectContainerExpirationPolicyOutputReference
- type ProjectPushRules
- type ProjectPushRulesOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewProjectContainerExpirationPolicyOutputReference_Override ¶
func NewProjectContainerExpirationPolicyOutputReference_Override(p ProjectContainerExpirationPolicyOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewProjectPushRulesOutputReference_Override ¶
func NewProjectPushRulesOutputReference_Override(p ProjectPushRulesOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewProject_Override ¶
func NewProject_Override(p Project, scope constructs.Construct, id *string, config *ProjectConfig)
Create a new {@link https://www.terraform.io/docs/providers/gitlab/r/project gitlab_project} Resource.
func Project_IsConstruct ¶
func Project_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 Project_TfResourceType ¶
func Project_TfResourceType() *string
Types ¶
type Project ¶
type Project interface { cdktf.TerraformResource AllowMergeOnSkippedPipeline() interface{} SetAllowMergeOnSkippedPipeline(val interface{}) AllowMergeOnSkippedPipelineInput() interface{} AnalyticsAccessLevel() *string SetAnalyticsAccessLevel(val *string) AnalyticsAccessLevelInput() *string ApprovalsBeforeMerge() *float64 SetApprovalsBeforeMerge(val *float64) ApprovalsBeforeMergeInput() *float64 Archived() interface{} SetArchived(val interface{}) ArchivedInput() interface{} ArchiveOnDestroy() interface{} SetArchiveOnDestroy(val interface{}) ArchiveOnDestroyInput() interface{} AutoCancelPendingPipelines() *string SetAutoCancelPendingPipelines(val *string) AutoCancelPendingPipelinesInput() *string AutocloseReferencedIssues() interface{} SetAutocloseReferencedIssues(val interface{}) AutocloseReferencedIssuesInput() interface{} AutoDevopsDeployStrategy() *string SetAutoDevopsDeployStrategy(val *string) AutoDevopsDeployStrategyInput() *string AutoDevopsEnabled() interface{} SetAutoDevopsEnabled(val interface{}) AutoDevopsEnabledInput() interface{} BuildCoverageRegex() *string SetBuildCoverageRegex(val *string) BuildCoverageRegexInput() *string BuildGitStrategy() *string SetBuildGitStrategy(val *string) BuildGitStrategyInput() *string BuildsAccessLevel() *string SetBuildsAccessLevel(val *string) BuildsAccessLevelInput() *string BuildTimeout() *float64 SetBuildTimeout(val *float64) BuildTimeoutInput() *float64 // Experimental. CdktfStack() cdktf.TerraformStack CiConfigPath() *string SetCiConfigPath(val *string) CiConfigPathInput() *string CiDefaultGitDepth() *float64 SetCiDefaultGitDepth(val *float64) CiDefaultGitDepthInput() *float64 CiForwardDeploymentEnabled() interface{} SetCiForwardDeploymentEnabled(val interface{}) CiForwardDeploymentEnabledInput() interface{} // Experimental. Connection() interface{} // Experimental. SetConnection(val interface{}) // Experimental. ConstructNodeMetadata() *map[string]interface{} ContainerExpirationPolicy() ProjectContainerExpirationPolicyOutputReference ContainerExpirationPolicyInput() *ProjectContainerExpirationPolicy ContainerRegistryAccessLevel() *string SetContainerRegistryAccessLevel(val *string) ContainerRegistryAccessLevelInput() *string ContainerRegistryEnabled() interface{} SetContainerRegistryEnabled(val interface{}) ContainerRegistryEnabledInput() interface{} // Experimental. Count() *float64 // Experimental. SetCount(val *float64) DefaultBranch() *string SetDefaultBranch(val *string) DefaultBranchInput() *string // Experimental. DependsOn() *[]*string // Experimental. SetDependsOn(val *[]*string) Description() *string SetDescription(val *string) DescriptionInput() *string EmailsDisabled() interface{} SetEmailsDisabled(val interface{}) EmailsDisabledInput() interface{} ExternalAuthorizationClassificationLabel() *string SetExternalAuthorizationClassificationLabel(val *string) ExternalAuthorizationClassificationLabelInput() *string // Experimental. ForEach() cdktf.ITerraformIterator // Experimental. SetForEach(val cdktf.ITerraformIterator) ForkingAccessLevel() *string SetForkingAccessLevel(val *string) ForkingAccessLevelInput() *string // Experimental. Fqn() *string // Experimental. FriendlyUniqueId() *string GroupWithProjectTemplatesId() *float64 SetGroupWithProjectTemplatesId(val *float64) GroupWithProjectTemplatesIdInput() *float64 HttpUrlToRepo() *string Id() *string SetId(val *string) IdInput() *string ImportUrl() *string SetImportUrl(val *string) ImportUrlInput() *string InitializeWithReadme() interface{} SetInitializeWithReadme(val interface{}) InitializeWithReadmeInput() interface{} IssuesAccessLevel() *string SetIssuesAccessLevel(val *string) IssuesAccessLevelInput() *string IssuesEnabled() interface{} SetIssuesEnabled(val interface{}) IssuesEnabledInput() interface{} IssuesTemplate() *string SetIssuesTemplate(val *string) IssuesTemplateInput() *string LfsEnabled() interface{} SetLfsEnabled(val interface{}) LfsEnabledInput() interface{} // Experimental. Lifecycle() *cdktf.TerraformResourceLifecycle // Experimental. SetLifecycle(val *cdktf.TerraformResourceLifecycle) MergeCommitTemplate() *string SetMergeCommitTemplate(val *string) MergeCommitTemplateInput() *string MergeMethod() *string SetMergeMethod(val *string) MergeMethodInput() *string MergePipelinesEnabled() interface{} SetMergePipelinesEnabled(val interface{}) MergePipelinesEnabledInput() interface{} MergeRequestsAccessLevel() *string SetMergeRequestsAccessLevel(val *string) MergeRequestsAccessLevelInput() *string MergeRequestsEnabled() interface{} SetMergeRequestsEnabled(val interface{}) MergeRequestsEnabledInput() interface{} MergeRequestsTemplate() *string SetMergeRequestsTemplate(val *string) MergeRequestsTemplateInput() *string MergeTrainsEnabled() interface{} SetMergeTrainsEnabled(val interface{}) MergeTrainsEnabledInput() interface{} Mirror() interface{} SetMirror(val interface{}) MirrorInput() interface{} MirrorOverwritesDivergedBranches() interface{} SetMirrorOverwritesDivergedBranches(val interface{}) MirrorOverwritesDivergedBranchesInput() interface{} MirrorTriggerBuilds() interface{} SetMirrorTriggerBuilds(val interface{}) MirrorTriggerBuildsInput() interface{} Name() *string SetName(val *string) NameInput() *string NamespaceId() *float64 SetNamespaceId(val *float64) NamespaceIdInput() *float64 // The tree node. Node() constructs.Node OnlyAllowMergeIfAllDiscussionsAreResolved() interface{} SetOnlyAllowMergeIfAllDiscussionsAreResolved(val interface{}) OnlyAllowMergeIfAllDiscussionsAreResolvedInput() interface{} OnlyAllowMergeIfPipelineSucceeds() interface{} SetOnlyAllowMergeIfPipelineSucceeds(val interface{}) OnlyAllowMergeIfPipelineSucceedsInput() interface{} OnlyMirrorProtectedBranches() interface{} SetOnlyMirrorProtectedBranches(val interface{}) OnlyMirrorProtectedBranchesInput() interface{} OperationsAccessLevel() *string SetOperationsAccessLevel(val *string) OperationsAccessLevelInput() *string PackagesEnabled() interface{} SetPackagesEnabled(val interface{}) PackagesEnabledInput() interface{} PagesAccessLevel() *string SetPagesAccessLevel(val *string) PagesAccessLevelInput() *string Path() *string SetPath(val *string) PathInput() *string PathWithNamespace() *string PipelinesEnabled() interface{} SetPipelinesEnabled(val interface{}) PipelinesEnabledInput() interface{} PrintingMergeRequestLinkEnabled() interface{} SetPrintingMergeRequestLinkEnabled(val interface{}) PrintingMergeRequestLinkEnabledInput() interface{} // Experimental. Provider() cdktf.TerraformProvider // Experimental. SetProvider(val cdktf.TerraformProvider) // Experimental. Provisioners() *[]interface{} // Experimental. SetProvisioners(val *[]interface{}) PublicBuilds() interface{} SetPublicBuilds(val interface{}) PublicBuildsInput() interface{} PushRules() ProjectPushRulesOutputReference PushRulesInput() *ProjectPushRules // Experimental. RawOverrides() interface{} RemoveSourceBranchAfterMerge() interface{} SetRemoveSourceBranchAfterMerge(val interface{}) RemoveSourceBranchAfterMergeInput() interface{} RepositoryAccessLevel() *string SetRepositoryAccessLevel(val *string) RepositoryAccessLevelInput() *string RepositoryStorage() *string SetRepositoryStorage(val *string) RepositoryStorageInput() *string RequestAccessEnabled() interface{} SetRequestAccessEnabled(val interface{}) RequestAccessEnabledInput() interface{} RequirementsAccessLevel() *string SetRequirementsAccessLevel(val *string) RequirementsAccessLevelInput() *string ResolveOutdatedDiffDiscussions() interface{} SetResolveOutdatedDiffDiscussions(val interface{}) ResolveOutdatedDiffDiscussionsInput() interface{} RunnersToken() *string SecurityAndComplianceAccessLevel() *string SetSecurityAndComplianceAccessLevel(val *string) SecurityAndComplianceAccessLevelInput() *string SkipWaitForDefaultBranchProtection() interface{} SetSkipWaitForDefaultBranchProtection(val interface{}) SkipWaitForDefaultBranchProtectionInput() interface{} SnippetsAccessLevel() *string SetSnippetsAccessLevel(val *string) SnippetsAccessLevelInput() *string SnippetsEnabled() interface{} SetSnippetsEnabled(val interface{}) SnippetsEnabledInput() interface{} SquashCommitTemplate() *string SetSquashCommitTemplate(val *string) SquashCommitTemplateInput() *string SquashOption() *string SetSquashOption(val *string) SquashOptionInput() *string SshUrlToRepo() *string Tags() *[]*string SetTags(val *[]*string) TagsInput() *[]*string TemplateName() *string SetTemplateName(val *string) TemplateNameInput() *string TemplateProjectId() *float64 SetTemplateProjectId(val *float64) TemplateProjectIdInput() *float64 // Experimental. TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata // Experimental. TerraformMetaArguments() *map[string]interface{} // Experimental. TerraformResourceType() *string Topics() *[]*string SetTopics(val *[]*string) TopicsInput() *[]*string UseCustomTemplate() interface{} SetUseCustomTemplate(val interface{}) UseCustomTemplateInput() interface{} VisibilityLevel() *string SetVisibilityLevel(val *string) VisibilityLevelInput() *string WebUrl() *string WikiAccessLevel() *string SetWikiAccessLevel(val *string) WikiAccessLevelInput() *string WikiEnabled() interface{} SetWikiEnabled(val interface{}) WikiEnabledInput() interface{} // 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. InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) PutContainerExpirationPolicy(value *ProjectContainerExpirationPolicy) PutPushRules(value *ProjectPushRules) ResetAllowMergeOnSkippedPipeline() ResetAnalyticsAccessLevel() ResetApprovalsBeforeMerge() ResetArchived() ResetArchiveOnDestroy() ResetAutoCancelPendingPipelines() ResetAutocloseReferencedIssues() ResetAutoDevopsDeployStrategy() ResetAutoDevopsEnabled() ResetBuildCoverageRegex() ResetBuildGitStrategy() ResetBuildsAccessLevel() ResetBuildTimeout() ResetCiConfigPath() ResetCiDefaultGitDepth() ResetCiForwardDeploymentEnabled() ResetContainerExpirationPolicy() ResetContainerRegistryAccessLevel() ResetContainerRegistryEnabled() ResetDefaultBranch() ResetDescription() ResetEmailsDisabled() ResetExternalAuthorizationClassificationLabel() ResetForkingAccessLevel() ResetGroupWithProjectTemplatesId() ResetId() ResetImportUrl() ResetInitializeWithReadme() ResetIssuesAccessLevel() ResetIssuesEnabled() ResetIssuesTemplate() ResetLfsEnabled() ResetMergeCommitTemplate() ResetMergeMethod() ResetMergePipelinesEnabled() ResetMergeRequestsAccessLevel() ResetMergeRequestsEnabled() ResetMergeRequestsTemplate() ResetMergeTrainsEnabled() ResetMirror() ResetMirrorOverwritesDivergedBranches() ResetMirrorTriggerBuilds() ResetNamespaceId() ResetOnlyAllowMergeIfAllDiscussionsAreResolved() ResetOnlyAllowMergeIfPipelineSucceeds() ResetOnlyMirrorProtectedBranches() ResetOperationsAccessLevel() // Resets a previously passed logical Id to use the auto-generated logical id again. // Experimental. ResetOverrideLogicalId() ResetPackagesEnabled() ResetPagesAccessLevel() ResetPath() ResetPipelinesEnabled() ResetPrintingMergeRequestLinkEnabled() ResetPublicBuilds() ResetPushRules() ResetRemoveSourceBranchAfterMerge() ResetRepositoryAccessLevel() ResetRepositoryStorage() ResetRequestAccessEnabled() ResetRequirementsAccessLevel() ResetResolveOutdatedDiffDiscussions() ResetSecurityAndComplianceAccessLevel() ResetSkipWaitForDefaultBranchProtection() ResetSnippetsAccessLevel() ResetSnippetsEnabled() ResetSquashCommitTemplate() ResetSquashOption() ResetTags() ResetTemplateName() ResetTemplateProjectId() ResetTopics() ResetUseCustomTemplate() ResetVisibilityLevel() ResetWikiAccessLevel() ResetWikiEnabled() SynthesizeAttributes() *map[string]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://www.terraform.io/docs/providers/gitlab/r/project gitlab_project}.
func NewProject ¶
func NewProject(scope constructs.Construct, id *string, config *ProjectConfig) Project
Create a new {@link https://www.terraform.io/docs/providers/gitlab/r/project gitlab_project} Resource.
type ProjectConfig ¶
type ProjectConfig struct { // Experimental. Connection interface{} `field:"optional" json:"connection" yaml:"connection"` // Experimental. Count *float64 `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 project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#name Project#name} Name *string `field:"required" json:"name" yaml:"name"` // Set to true if you want to treat skipped pipelines as if they finished with success. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#allow_merge_on_skipped_pipeline Project#allow_merge_on_skipped_pipeline} AllowMergeOnSkippedPipeline interface{} `field:"optional" json:"allowMergeOnSkippedPipeline" yaml:"allowMergeOnSkippedPipeline"` // Set the analytics access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#analytics_access_level Project#analytics_access_level} AnalyticsAccessLevel *string `field:"optional" json:"analyticsAccessLevel" yaml:"analyticsAccessLevel"` // Number of merge request approvals required for merging. // // Default is 0. // This field **does not** work well in combination with the `gitlab_project_approval_rule` resource // and is most likely gonna be deprecated in a future GitLab version (see [this upstream epic](https://gitlab.com/groups/gitlab-org/-/epics/7572)). // In the meantime we recommend against using this attribute and use `gitlab_project_approval_rule` instead. // // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#approvals_before_merge Project#approvals_before_merge} ApprovalsBeforeMerge *float64 `field:"optional" json:"approvalsBeforeMerge" yaml:"approvalsBeforeMerge"` // Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#archived Project#archived} Archived interface{} `field:"optional" json:"archived" yaml:"archived"` // Set to `true` to archive the project instead of deleting on destroy. // // If set to `true` it will entire omit the `DELETE` operation. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#archive_on_destroy Project#archive_on_destroy} ArchiveOnDestroy interface{} `field:"optional" json:"archiveOnDestroy" yaml:"archiveOnDestroy"` // Auto-cancel pending pipelines. This isn’t a boolean, but enabled/disabled. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#auto_cancel_pending_pipelines Project#auto_cancel_pending_pipelines} AutoCancelPendingPipelines *string `field:"optional" json:"autoCancelPendingPipelines" yaml:"autoCancelPendingPipelines"` // Set whether auto-closing referenced issues on default branch. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#autoclose_referenced_issues Project#autoclose_referenced_issues} AutocloseReferencedIssues interface{} `field:"optional" json:"autocloseReferencedIssues" yaml:"autocloseReferencedIssues"` // Auto Deploy strategy. Valid values are `continuous`, `manual`, `timed_incremental`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#auto_devops_deploy_strategy Project#auto_devops_deploy_strategy} AutoDevopsDeployStrategy *string `field:"optional" json:"autoDevopsDeployStrategy" yaml:"autoDevopsDeployStrategy"` // Enable Auto DevOps for this project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#auto_devops_enabled Project#auto_devops_enabled} AutoDevopsEnabled interface{} `field:"optional" json:"autoDevopsEnabled" yaml:"autoDevopsEnabled"` // Test coverage parsing for the project. This is deprecated feature in GitLab 15.0. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#build_coverage_regex Project#build_coverage_regex} BuildCoverageRegex *string `field:"optional" json:"buildCoverageRegex" yaml:"buildCoverageRegex"` // The Git strategy. Defaults to fetch. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#build_git_strategy Project#build_git_strategy} BuildGitStrategy *string `field:"optional" json:"buildGitStrategy" yaml:"buildGitStrategy"` // Set the builds access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#builds_access_level Project#builds_access_level} BuildsAccessLevel *string `field:"optional" json:"buildsAccessLevel" yaml:"buildsAccessLevel"` // The maximum amount of time, in seconds, that a job can run. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#build_timeout Project#build_timeout} BuildTimeout *float64 `field:"optional" json:"buildTimeout" yaml:"buildTimeout"` // Custom Path to CI config file. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#ci_config_path Project#ci_config_path} CiConfigPath *string `field:"optional" json:"ciConfigPath" yaml:"ciConfigPath"` // Default number of revisions for shallow cloning. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#ci_default_git_depth Project#ci_default_git_depth} CiDefaultGitDepth *float64 `field:"optional" json:"ciDefaultGitDepth" yaml:"ciDefaultGitDepth"` // When a new deployment job starts, skip older deployment jobs that are still pending. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#ci_forward_deployment_enabled Project#ci_forward_deployment_enabled} CiForwardDeploymentEnabled interface{} `field:"optional" json:"ciForwardDeploymentEnabled" yaml:"ciForwardDeploymentEnabled"` // container_expiration_policy block. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#container_expiration_policy Project#container_expiration_policy} ContainerExpirationPolicy *ProjectContainerExpirationPolicy `field:"optional" json:"containerExpirationPolicy" yaml:"containerExpirationPolicy"` // Set visibility of container registry, for this project. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#container_registry_access_level Project#container_registry_access_level} ContainerRegistryAccessLevel *string `field:"optional" json:"containerRegistryAccessLevel" yaml:"containerRegistryAccessLevel"` // Enable container registry for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#container_registry_enabled Project#container_registry_enabled} ContainerRegistryEnabled interface{} `field:"optional" json:"containerRegistryEnabled" yaml:"containerRegistryEnabled"` // The default branch for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#default_branch Project#default_branch} DefaultBranch *string `field:"optional" json:"defaultBranch" yaml:"defaultBranch"` // A description of the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#description Project#description} Description *string `field:"optional" json:"description" yaml:"description"` // Disable email notifications. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#emails_disabled Project#emails_disabled} EmailsDisabled interface{} `field:"optional" json:"emailsDisabled" yaml:"emailsDisabled"` // The classification label for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#external_authorization_classification_label Project#external_authorization_classification_label} ExternalAuthorizationClassificationLabel *string `field:"optional" json:"externalAuthorizationClassificationLabel" yaml:"externalAuthorizationClassificationLabel"` // Set the forking access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#forking_access_level Project#forking_access_level} ForkingAccessLevel *string `field:"optional" json:"forkingAccessLevel" yaml:"forkingAccessLevel"` // For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. // // Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition). // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#group_with_project_templates_id Project#group_with_project_templates_id} GroupWithProjectTemplatesId *float64 `field:"optional" json:"groupWithProjectTemplatesId" yaml:"groupWithProjectTemplatesId"` // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#id Project#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"` // Git URL to a repository to be imported. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#import_url Project#import_url} ImportUrl *string `field:"optional" json:"importUrl" yaml:"importUrl"` // Create main branch with first commit containing a README.md file. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#initialize_with_readme Project#initialize_with_readme} InitializeWithReadme interface{} `field:"optional" json:"initializeWithReadme" yaml:"initializeWithReadme"` // Set the issues access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#issues_access_level Project#issues_access_level} IssuesAccessLevel *string `field:"optional" json:"issuesAccessLevel" yaml:"issuesAccessLevel"` // Enable issue tracking for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#issues_enabled Project#issues_enabled} IssuesEnabled interface{} `field:"optional" json:"issuesEnabled" yaml:"issuesEnabled"` // Sets the template for new issues in the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#issues_template Project#issues_template} IssuesTemplate *string `field:"optional" json:"issuesTemplate" yaml:"issuesTemplate"` // Enable LFS for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#lfs_enabled Project#lfs_enabled} LfsEnabled interface{} `field:"optional" json:"lfsEnabled" yaml:"lfsEnabled"` // Template used to create merge commit message in merge requests. (Introduced in GitLab 14.5.). // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#merge_commit_template Project#merge_commit_template} MergeCommitTemplate *string `field:"optional" json:"mergeCommitTemplate" yaml:"mergeCommitTemplate"` // Set to `ff` to create fast-forward merges. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#merge_method Project#merge_method} MergeMethod *string `field:"optional" json:"mergeMethod" yaml:"mergeMethod"` // Enable or disable merge pipelines. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#merge_pipelines_enabled Project#merge_pipelines_enabled} MergePipelinesEnabled interface{} `field:"optional" json:"mergePipelinesEnabled" yaml:"mergePipelinesEnabled"` // Set the merge requests access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#merge_requests_access_level Project#merge_requests_access_level} MergeRequestsAccessLevel *string `field:"optional" json:"mergeRequestsAccessLevel" yaml:"mergeRequestsAccessLevel"` // Enable merge requests for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#merge_requests_enabled Project#merge_requests_enabled} MergeRequestsEnabled interface{} `field:"optional" json:"mergeRequestsEnabled" yaml:"mergeRequestsEnabled"` // Sets the template for new merge requests in the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#merge_requests_template Project#merge_requests_template} MergeRequestsTemplate *string `field:"optional" json:"mergeRequestsTemplate" yaml:"mergeRequestsTemplate"` // Enable or disable merge trains. Requires `merge_pipelines_enabled` to be set to `true` to take effect. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#merge_trains_enabled Project#merge_trains_enabled} MergeTrainsEnabled interface{} `field:"optional" json:"mergeTrainsEnabled" yaml:"mergeTrainsEnabled"` // Enable project pull mirror. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#mirror Project#mirror} Mirror interface{} `field:"optional" json:"mirror" yaml:"mirror"` // Enable overwrite diverged branches for a mirrored project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#mirror_overwrites_diverged_branches Project#mirror_overwrites_diverged_branches} MirrorOverwritesDivergedBranches interface{} `field:"optional" json:"mirrorOverwritesDivergedBranches" yaml:"mirrorOverwritesDivergedBranches"` // Enable trigger builds on pushes for a mirrored project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#mirror_trigger_builds Project#mirror_trigger_builds} MirrorTriggerBuilds interface{} `field:"optional" json:"mirrorTriggerBuilds" yaml:"mirrorTriggerBuilds"` // The namespace (group or user) of the project. Defaults to your user. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#namespace_id Project#namespace_id} NamespaceId *float64 `field:"optional" json:"namespaceId" yaml:"namespaceId"` // Set to true if you want allow merges only if all discussions are resolved. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#only_allow_merge_if_all_discussions_are_resolved Project#only_allow_merge_if_all_discussions_are_resolved} OnlyAllowMergeIfAllDiscussionsAreResolved interface{} `field:"optional" json:"onlyAllowMergeIfAllDiscussionsAreResolved" yaml:"onlyAllowMergeIfAllDiscussionsAreResolved"` // Set to true if you want allow merges only if a pipeline succeeds. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#only_allow_merge_if_pipeline_succeeds Project#only_allow_merge_if_pipeline_succeeds} OnlyAllowMergeIfPipelineSucceeds interface{} `field:"optional" json:"onlyAllowMergeIfPipelineSucceeds" yaml:"onlyAllowMergeIfPipelineSucceeds"` // Enable only mirror protected branches for a mirrored project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#only_mirror_protected_branches Project#only_mirror_protected_branches} OnlyMirrorProtectedBranches interface{} `field:"optional" json:"onlyMirrorProtectedBranches" yaml:"onlyMirrorProtectedBranches"` // Set the operations access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#operations_access_level Project#operations_access_level} OperationsAccessLevel *string `field:"optional" json:"operationsAccessLevel" yaml:"operationsAccessLevel"` // Enable packages repository for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#packages_enabled Project#packages_enabled} PackagesEnabled interface{} `field:"optional" json:"packagesEnabled" yaml:"packagesEnabled"` // Enable pages access control. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#pages_access_level Project#pages_access_level} PagesAccessLevel *string `field:"optional" json:"pagesAccessLevel" yaml:"pagesAccessLevel"` // The path of the repository. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#path Project#path} Path *string `field:"optional" json:"path" yaml:"path"` // Enable pipelines for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#pipelines_enabled Project#pipelines_enabled} PipelinesEnabled interface{} `field:"optional" json:"pipelinesEnabled" yaml:"pipelinesEnabled"` // Show link to create/view merge request when pushing from the command line. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#printing_merge_request_link_enabled Project#printing_merge_request_link_enabled} PrintingMergeRequestLinkEnabled interface{} `field:"optional" json:"printingMergeRequestLinkEnabled" yaml:"printingMergeRequestLinkEnabled"` // If true, jobs can be viewed by non-project members. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#public_builds Project#public_builds} PublicBuilds interface{} `field:"optional" json:"publicBuilds" yaml:"publicBuilds"` // push_rules block. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#push_rules Project#push_rules} PushRules *ProjectPushRules `field:"optional" json:"pushRules" yaml:"pushRules"` // Enable `Delete source branch` option by default for all new merge requests. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#remove_source_branch_after_merge Project#remove_source_branch_after_merge} RemoveSourceBranchAfterMerge interface{} `field:"optional" json:"removeSourceBranchAfterMerge" yaml:"removeSourceBranchAfterMerge"` // Set the repository access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#repository_access_level Project#repository_access_level} RepositoryAccessLevel *string `field:"optional" json:"repositoryAccessLevel" yaml:"repositoryAccessLevel"` // Which storage shard the repository is on. (administrator only). // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#repository_storage Project#repository_storage} RepositoryStorage *string `field:"optional" json:"repositoryStorage" yaml:"repositoryStorage"` // Allow users to request member access. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#request_access_enabled Project#request_access_enabled} RequestAccessEnabled interface{} `field:"optional" json:"requestAccessEnabled" yaml:"requestAccessEnabled"` // Set the requirements access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#requirements_access_level Project#requirements_access_level} RequirementsAccessLevel *string `field:"optional" json:"requirementsAccessLevel" yaml:"requirementsAccessLevel"` // Automatically resolve merge request diffs discussions on lines changed with a push. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#resolve_outdated_diff_discussions Project#resolve_outdated_diff_discussions} ResolveOutdatedDiffDiscussions interface{} `field:"optional" json:"resolveOutdatedDiffDiscussions" yaml:"resolveOutdatedDiffDiscussions"` // Set the security and compliance access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#security_and_compliance_access_level Project#security_and_compliance_access_level} SecurityAndComplianceAccessLevel *string `field:"optional" json:"securityAndComplianceAccessLevel" yaml:"securityAndComplianceAccessLevel"` // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#shared_runners_enabled Project#shared_runners_enabled} SharedRunnersEnabled interface{} `field:"optional" json:"sharedRunnersEnabled" yaml:"sharedRunnersEnabled"` // If `true`, the default behavior to wait for the default branch protection to be created is skipped. // // This is necessary if the current user is not an admin and the default branch protection is disabled on an instance-level. // There is currently no known way to determine if the default branch protection is disabled on an instance-level for non-admin users. // This attribute is only used during resource creation, thus changes are suppressed and the attribute cannot be imported. // // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#skip_wait_for_default_branch_protection Project#skip_wait_for_default_branch_protection} SkipWaitForDefaultBranchProtection interface{} `field:"optional" json:"skipWaitForDefaultBranchProtection" yaml:"skipWaitForDefaultBranchProtection"` // Set the snippets access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#snippets_access_level Project#snippets_access_level} SnippetsAccessLevel *string `field:"optional" json:"snippetsAccessLevel" yaml:"snippetsAccessLevel"` // Enable snippets for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#snippets_enabled Project#snippets_enabled} SnippetsEnabled interface{} `field:"optional" json:"snippetsEnabled" yaml:"snippetsEnabled"` // Template used to create squash commit message in merge requests. (Introduced in GitLab 14.6.). // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#squash_commit_template Project#squash_commit_template} SquashCommitTemplate *string `field:"optional" json:"squashCommitTemplate" yaml:"squashCommitTemplate"` // Squash commits when merge request. // // Valid values are `never`, `always`, `default_on`, or `default_off`. The default value is `default_off`. [GitLab >= 14.1] // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#squash_option Project#squash_option} SquashOption *string `field:"optional" json:"squashOption" yaml:"squashOption"` // The list of tags for a project; // // put array of tags, that should be finally assigned to a project. Use topics instead. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#tags Project#tags} Tags *[]*string `field:"optional" json:"tags" yaml:"tags"` // When used without use_custom_template, name of a built-in project template. // // When used with use_custom_template, name of a custom project template. This option is mutually exclusive with `template_project_id`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#template_name Project#template_name} TemplateName *string `field:"optional" json:"templateName" yaml:"templateName"` // When used with use_custom_template, project ID of a custom project template. // // This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with `template_name`. See `gitlab_group_project_file_template` to set a project as a template project. If a project has not been set as a template, using it here will result in an error. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#template_project_id Project#template_project_id} TemplateProjectId *float64 `field:"optional" json:"templateProjectId" yaml:"templateProjectId"` // The list of topics for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#topics Project#topics} Topics *[]*string `field:"optional" json:"topics" yaml:"topics"` // Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition). // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#use_custom_template Project#use_custom_template} UseCustomTemplate interface{} `field:"optional" json:"useCustomTemplate" yaml:"useCustomTemplate"` // Set to `public` to create a public project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#visibility_level Project#visibility_level} VisibilityLevel *string `field:"optional" json:"visibilityLevel" yaml:"visibilityLevel"` // Set the wiki access level. Valid values are `disabled`, `private`, `enabled`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#wiki_access_level Project#wiki_access_level} WikiAccessLevel *string `field:"optional" json:"wikiAccessLevel" yaml:"wikiAccessLevel"` // Enable wiki for the project. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#wiki_enabled Project#wiki_enabled} WikiEnabled interface{} `field:"optional" json:"wikiEnabled" yaml:"wikiEnabled"` }
type ProjectContainerExpirationPolicy ¶
type ProjectContainerExpirationPolicy struct { // The cadence of the policy. Valid values are: `1d`, `7d`, `14d`, `1month`, `3month`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#cadence Project#cadence} Cadence *string `field:"optional" json:"cadence" yaml:"cadence"` // If true, the policy is enabled. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#enabled Project#enabled} Enabled interface{} `field:"optional" json:"enabled" yaml:"enabled"` // The number of images to keep. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#keep_n Project#keep_n} KeepN *float64 `field:"optional" json:"keepN" yaml:"keepN"` // The regular expression to match image names to delete. // // **Note**: the upstream API has some inconsistencies with the `name_regex` field here. It's basically unusable at the moment. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#name_regex_delete Project#name_regex_delete} NameRegexDelete *string `field:"optional" json:"nameRegexDelete" yaml:"nameRegexDelete"` // The regular expression to match image names to keep. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#name_regex_keep Project#name_regex_keep} NameRegexKeep *string `field:"optional" json:"nameRegexKeep" yaml:"nameRegexKeep"` // The number of days to keep images. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#older_than Project#older_than} OlderThan *string `field:"optional" json:"olderThan" yaml:"olderThan"` }
type ProjectContainerExpirationPolicyOutputReference ¶
type ProjectContainerExpirationPolicyOutputReference interface { cdktf.ComplexObject Cadence() *string SetCadence(val *string) CadenceInput() *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 Enabled() interface{} SetEnabled(val interface{}) EnabledInput() interface{} // Experimental. Fqn() *string InternalValue() *ProjectContainerExpirationPolicy SetInternalValue(val *ProjectContainerExpirationPolicy) KeepN() *float64 SetKeepN(val *float64) KeepNInput() *float64 NameRegexDelete() *string SetNameRegexDelete(val *string) NameRegexDeleteInput() *string NameRegexKeep() *string SetNameRegexKeep(val *string) NameRegexKeepInput() *string NextRunAt() *string OlderThan() *string SetOlderThan(val *string) OlderThanInput() *string // 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 ResetCadence() ResetEnabled() ResetKeepN() ResetNameRegexDelete() ResetNameRegexKeep() ResetOlderThan() // 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 NewProjectContainerExpirationPolicyOutputReference ¶
func NewProjectContainerExpirationPolicyOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) ProjectContainerExpirationPolicyOutputReference
type ProjectPushRules ¶
type ProjectPushRules struct { // All commit author emails must match this regex, e.g. `@my-company.com$`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#author_email_regex Project#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://www.terraform.io/docs/providers/gitlab/r/project#branch_name_regex Project#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://www.terraform.io/docs/providers/gitlab/r/project#commit_committer_check Project#commit_committer_check} CommitCommitterCheck interface{} `field:"optional" json:"commitCommitterCheck" yaml:"commitCommitterCheck"` // No commit message is allowed to match this regex, for example `ssh\:\/\/`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#commit_message_negative_regex Project#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://www.terraform.io/docs/providers/gitlab/r/project#commit_message_regex Project#commit_message_regex} CommitMessageRegex *string `field:"optional" json:"commitMessageRegex" yaml:"commitMessageRegex"` // Deny deleting a tag. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#deny_delete_tag Project#deny_delete_tag} DenyDeleteTag interface{} `field:"optional" json:"denyDeleteTag" yaml:"denyDeleteTag"` // All commited filenames must not match this regex, e.g. `(jar|exe)$`. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#file_name_regex Project#file_name_regex} FileNameRegex *string `field:"optional" json:"fileNameRegex" yaml:"fileNameRegex"` // Maximum file size (MB). // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#max_file_size Project#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://www.terraform.io/docs/providers/gitlab/r/project#member_check Project#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://www.terraform.io/docs/providers/gitlab/r/project#prevent_secrets Project#prevent_secrets} PreventSecrets interface{} `field:"optional" json:"preventSecrets" yaml:"preventSecrets"` // Reject commit when it’s not signed through GPG. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/gitlab/r/project#reject_unsigned_commits Project#reject_unsigned_commits} RejectUnsignedCommits interface{} `field:"optional" json:"rejectUnsignedCommits" yaml:"rejectUnsignedCommits"` }
type ProjectPushRulesOutputReference ¶
type ProjectPushRulesOutputReference interface { cdktf.ComplexObject AuthorEmailRegex() *string SetAuthorEmailRegex(val *string) AuthorEmailRegexInput() *string BranchNameRegex() *string SetBranchNameRegex(val *string) BranchNameRegexInput() *string CommitCommitterCheck() interface{} SetCommitCommitterCheck(val interface{}) CommitCommitterCheckInput() 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() *ProjectPushRules SetInternalValue(val *ProjectPushRules) MaxFileSize() *float64 SetMaxFileSize(val *float64) MaxFileSizeInput() *float64 MemberCheck() interface{} SetMemberCheck(val interface{}) MemberCheckInput() interface{} PreventSecrets() interface{} SetPreventSecrets(val interface{}) PreventSecretsInput() 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() ResetCommitMessageNegativeRegex() ResetCommitMessageRegex() ResetDenyDeleteTag() ResetFileNameRegex() ResetMaxFileSize() ResetMemberCheck() ResetPreventSecrets() 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 NewProjectPushRulesOutputReference ¶
func NewProjectPushRulesOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) ProjectPushRulesOutputReference
Source Files ¶
- project.go
- project_Project.go
- project_ProjectConfig.go
- project_ProjectContainerExpirationPolicy.go
- project_ProjectContainerExpirationPolicyOutputReference.go
- project_ProjectContainerExpirationPolicyOutputReference__runtime_type_checks.go
- project_ProjectPushRules.go
- project_ProjectPushRulesOutputReference.go
- project_ProjectPushRulesOutputReference__runtime_type_checks.go
- project_Project__runtime_type_checks.go