Documentation ¶
Index ¶
- func BitBucketSourceCredentials_IsConstruct(x interface{}) *bool
- func BitBucketSourceCredentials_IsResource(construct constructs.IConstruct) *bool
- func CfnProject_CFN_RESOURCE_TYPE_NAME() *string
- func CfnProject_IsCfnElement(x interface{}) *bool
- func CfnProject_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnProject_IsConstruct(x interface{}) *bool
- func CfnReportGroup_CFN_RESOURCE_TYPE_NAME() *string
- func CfnReportGroup_IsCfnElement(x interface{}) *bool
- func CfnReportGroup_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnReportGroup_IsConstruct(x interface{}) *bool
- func CfnSourceCredential_CFN_RESOURCE_TYPE_NAME() *string
- func CfnSourceCredential_IsCfnElement(x interface{}) *bool
- func CfnSourceCredential_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnSourceCredential_IsConstruct(x interface{}) *bool
- func GitHubEnterpriseSourceCredentials_IsConstruct(x interface{}) *bool
- func GitHubEnterpriseSourceCredentials_IsResource(construct constructs.IConstruct) *bool
- func GitHubSourceCredentials_IsConstruct(x interface{}) *bool
- func GitHubSourceCredentials_IsResource(construct constructs.IConstruct) *bool
- func NewArtifacts_Override(a Artifacts, props *ArtifactsProps)
- func NewBitBucketSourceCredentials_Override(b BitBucketSourceCredentials, scope constructs.Construct, id *string, ...)
- func NewBuildSpec_Override(b BuildSpec)
- func NewCache_Override(c Cache)
- func NewCfnProject_Override(c CfnProject, scope constructs.Construct, id *string, props *CfnProjectProps)
- func NewCfnReportGroup_Override(c CfnReportGroup, scope constructs.Construct, id *string, ...)
- func NewCfnSourceCredential_Override(c CfnSourceCredential, scope constructs.Construct, id *string, ...)
- func NewFileSystemLocation_Override(f FileSystemLocation)
- func NewGitHubEnterpriseSourceCredentials_Override(g GitHubEnterpriseSourceCredentials, scope constructs.Construct, id *string, ...)
- func NewGitHubSourceCredentials_Override(g GitHubSourceCredentials, scope constructs.Construct, id *string, ...)
- func NewPipelineProject_Override(p PipelineProject, scope constructs.Construct, id *string, ...)
- func NewProject_Override(p Project, scope constructs.Construct, id *string, props *ProjectProps)
- func NewReportGroup_Override(r ReportGroup, scope constructs.Construct, id *string, props *ReportGroupProps)
- func NewSource_Override(s Source, props *SourceProps)
- func NewUntrustedCodeBoundaryPolicy_Override(u UntrustedCodeBoundaryPolicy, scope constructs.Construct, id *string, ...)
- func PhaseChangeEvent_BuildComplete() *string
- func PhaseChangeEvent_BuildId() *string
- func PhaseChangeEvent_CompletedPhase() *string
- func PhaseChangeEvent_CompletedPhaseDurationSeconds() *string
- func PhaseChangeEvent_CompletedPhaseStatus() *string
- func PhaseChangeEvent_ProjectName() *string
- func PipelineProject_IsConstruct(x interface{}) *bool
- func PipelineProject_IsResource(construct constructs.IConstruct) *bool
- func PipelineProject_SerializeEnvVariables(environmentVariables *map[string]*BuildEnvironmentVariable, ...) *[]*CfnProject_EnvironmentVariableProperty
- func Project_IsConstruct(x interface{}) *bool
- func Project_IsResource(construct constructs.IConstruct) *bool
- func Project_SerializeEnvVariables(environmentVariables *map[string]*BuildEnvironmentVariable, ...) *[]*CfnProject_EnvironmentVariableProperty
- func ReportGroup_IsConstruct(x interface{}) *bool
- func ReportGroup_IsResource(construct constructs.IConstruct) *bool
- func StateChangeEvent_BuildId() *string
- func StateChangeEvent_BuildStatus() *string
- func StateChangeEvent_CurrentPhase() *string
- func StateChangeEvent_ProjectName() *string
- func UntrustedCodeBoundaryPolicy_FromAwsManagedPolicyName(managedPolicyName *string) awsiam.IManagedPolicy
- func UntrustedCodeBoundaryPolicy_FromManagedPolicyArn(scope constructs.Construct, id *string, managedPolicyArn *string) awsiam.IManagedPolicy
- func UntrustedCodeBoundaryPolicy_FromManagedPolicyName(scope constructs.Construct, id *string, managedPolicyName *string) awsiam.IManagedPolicy
- func UntrustedCodeBoundaryPolicy_IsConstruct(x interface{}) *bool
- func UntrustedCodeBoundaryPolicy_IsResource(construct constructs.IConstruct) *bool
- type Artifacts
- type ArtifactsConfig
- type ArtifactsProps
- type BatchBuildConfig
- type BindToCodePipelineOptions
- type BitBucketSourceCredentials
- type BitBucketSourceCredentialsProps
- type BitBucketSourceProps
- type BucketCacheOptions
- type BuildEnvironment
- type BuildEnvironmentCertificate
- type BuildEnvironmentVariable
- type BuildEnvironmentVariableType
- type BuildImageBindOptions
- type BuildImageConfig
- type BuildSpec
- type Cache
- type CfnProject
- type CfnProjectProps
- type CfnProject_ArtifactsProperty
- type CfnProject_BatchRestrictionsProperty
- type CfnProject_BuildStatusConfigProperty
- type CfnProject_CloudWatchLogsConfigProperty
- type CfnProject_EnvironmentProperty
- type CfnProject_EnvironmentVariableProperty
- type CfnProject_GitSubmodulesConfigProperty
- type CfnProject_LogsConfigProperty
- type CfnProject_ProjectBuildBatchConfigProperty
- type CfnProject_ProjectCacheProperty
- type CfnProject_ProjectFileSystemLocationProperty
- type CfnProject_ProjectSourceVersionProperty
- type CfnProject_ProjectTriggersProperty
- type CfnProject_RegistryCredentialProperty
- type CfnProject_S3LogsConfigProperty
- type CfnProject_SourceAuthProperty
- type CfnProject_SourceProperty
- type CfnProject_VpcConfigProperty
- type CfnProject_WebhookFilterProperty
- type CfnReportGroup
- type CfnReportGroupProps
- type CfnReportGroup_ReportExportConfigProperty
- type CfnReportGroup_S3ReportExportConfigProperty
- type CfnSourceCredential
- type CfnSourceCredentialProps
- type CloudWatchLoggingOptions
- type CodeCommitSourceProps
- type CommonProjectProps
- type ComputeType
- type DockerImageOptions
- type EfsFileSystemLocationProps
- type EventAction
- type FileSystemConfig
- type FileSystemLocation
- type FilterGroup
- type GitHubEnterpriseSourceCredentials
- type GitHubEnterpriseSourceCredentialsProps
- type GitHubEnterpriseSourceProps
- type GitHubSourceCredentials
- type GitHubSourceCredentialsProps
- type GitHubSourceProps
- type IArtifacts
- type IBindableBuildImage
- type IBuildImage
- func LinuxBuildImage_AMAZON_LINUX_2() IBuildImage
- func LinuxBuildImage_AMAZON_LINUX_2_2() IBuildImage
- func LinuxBuildImage_AMAZON_LINUX_2_3() IBuildImage
- func LinuxBuildImage_AMAZON_LINUX_2_ARM() IBuildImage
- func LinuxBuildImage_AMAZON_LINUX_2_ARM_2() IBuildImage
- func LinuxBuildImage_FromAsset(scope constructs.Construct, id *string, ...) IBuildImage
- func LinuxBuildImage_FromCodeBuildImageId(id *string) IBuildImage
- func LinuxBuildImage_FromDockerRegistry(name *string, options *DockerImageOptions) IBuildImage
- func LinuxBuildImage_FromEcrRepository(repository awsecr.IRepository, tag *string) IBuildImage
- func LinuxBuildImage_STANDARD_1_0() IBuildImage
- func LinuxBuildImage_STANDARD_2_0() IBuildImage
- func LinuxBuildImage_STANDARD_3_0() IBuildImage
- func LinuxBuildImage_STANDARD_4_0() IBuildImage
- func LinuxBuildImage_STANDARD_5_0() IBuildImage
- func LinuxGpuBuildImage_AwsDeepLearningContainersImage(repositoryName *string, tag *string, account *string) IBuildImage
- func LinuxGpuBuildImage_DLC_MXNET_1_4_1() IBuildImage
- func LinuxGpuBuildImage_DLC_MXNET_1_6_0() IBuildImage
- func LinuxGpuBuildImage_DLC_PYTORCH_1_2_0() IBuildImage
- func LinuxGpuBuildImage_DLC_PYTORCH_1_3_1() IBuildImage
- func LinuxGpuBuildImage_DLC_PYTORCH_1_4_0_INFERENCE() IBuildImage
- func LinuxGpuBuildImage_DLC_PYTORCH_1_4_0_TRAINING() IBuildImage
- func LinuxGpuBuildImage_DLC_PYTORCH_1_5_0_INFERENCE() IBuildImage
- func LinuxGpuBuildImage_DLC_PYTORCH_1_5_0_TRAINING() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_1_14_0() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_0() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_2_INFERENCE() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_2_TRAINING() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_2_0_0() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_2_0_1() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_2_1_0_INFERENCE() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_2_1_0_TRAINING() IBuildImage
- func LinuxGpuBuildImage_DLC_TENSORFLOW_2_2_0_TRAINING() IBuildImage
- func LinuxGpuBuildImage_FromEcrRepository(repository awsecr.IRepository, tag *string) IBuildImage
- func WindowsBuildImage_FromAsset(scope constructs.Construct, id *string, ...) IBuildImage
- func WindowsBuildImage_FromDockerRegistry(name *string, options *DockerImageOptions, imageType WindowsImageType) IBuildImage
- func WindowsBuildImage_FromEcrRepository(repository awsecr.IRepository, tag *string, imageType WindowsImageType) IBuildImage
- func WindowsBuildImage_WINDOWS_BASE_2_0() IBuildImage
- func WindowsBuildImage_WIN_SERVER_CORE_2019_BASE() IBuildImage
- type IFileSystemLocation
- type IProject
- func PipelineProject_FromProjectArn(scope constructs.Construct, id *string, projectArn *string) IProject
- func PipelineProject_FromProjectName(scope constructs.Construct, id *string, projectName *string) IProject
- func Project_FromProjectArn(scope constructs.Construct, id *string, projectArn *string) IProject
- func Project_FromProjectName(scope constructs.Construct, id *string, projectName *string) IProject
- type IReportGroup
- type ISource
- type ImagePullPrincipalType
- type LinuxBuildImage
- type LinuxGpuBuildImage
- type LocalCacheMode
- type LoggingOptions
- type PhaseChangeEvent
- type PipelineProject
- type PipelineProjectProps
- type Project
- type ProjectNotificationEvents
- type ProjectNotifyOnOptions
- type ProjectProps
- type ReportGroup
- type ReportGroupProps
- type S3ArtifactsProps
- type S3LoggingOptions
- type S3SourceProps
- type Source
- type SourceConfig
- type SourceProps
- type StateChangeEvent
- type UntrustedCodeBoundaryPolicy
- type UntrustedCodeBoundaryPolicyProps
- type WindowsBuildImage
- type WindowsImageType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BitBucketSourceCredentials_IsConstruct ¶
func BitBucketSourceCredentials_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func BitBucketSourceCredentials_IsResource ¶
func BitBucketSourceCredentials_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func CfnProject_CFN_RESOURCE_TYPE_NAME ¶
func CfnProject_CFN_RESOURCE_TYPE_NAME() *string
func CfnProject_IsCfnElement ¶
func CfnProject_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnProject_IsCfnResource ¶
func CfnProject_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnProject_IsConstruct ¶
func CfnProject_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func CfnReportGroup_CFN_RESOURCE_TYPE_NAME ¶
func CfnReportGroup_CFN_RESOURCE_TYPE_NAME() *string
func CfnReportGroup_IsCfnElement ¶
func CfnReportGroup_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnReportGroup_IsCfnResource ¶
func CfnReportGroup_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnReportGroup_IsConstruct ¶
func CfnReportGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func CfnSourceCredential_CFN_RESOURCE_TYPE_NAME ¶
func CfnSourceCredential_CFN_RESOURCE_TYPE_NAME() *string
func CfnSourceCredential_IsCfnElement ¶
func CfnSourceCredential_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnSourceCredential_IsCfnResource ¶
func CfnSourceCredential_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnSourceCredential_IsConstruct ¶
func CfnSourceCredential_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func GitHubEnterpriseSourceCredentials_IsConstruct ¶
func GitHubEnterpriseSourceCredentials_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func GitHubEnterpriseSourceCredentials_IsResource ¶
func GitHubEnterpriseSourceCredentials_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func GitHubSourceCredentials_IsConstruct ¶
func GitHubSourceCredentials_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func GitHubSourceCredentials_IsResource ¶
func GitHubSourceCredentials_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func NewArtifacts_Override ¶
func NewArtifacts_Override(a Artifacts, props *ArtifactsProps)
func NewBitBucketSourceCredentials_Override ¶
func NewBitBucketSourceCredentials_Override(b BitBucketSourceCredentials, scope constructs.Construct, id *string, props *BitBucketSourceCredentialsProps)
func NewBuildSpec_Override ¶
func NewBuildSpec_Override(b BuildSpec)
func NewCache_Override ¶
func NewCache_Override(c Cache)
func NewCfnProject_Override ¶
func NewCfnProject_Override(c CfnProject, scope constructs.Construct, id *string, props *CfnProjectProps)
Create a new `AWS::CodeBuild::Project`.
func NewCfnReportGroup_Override ¶
func NewCfnReportGroup_Override(c CfnReportGroup, scope constructs.Construct, id *string, props *CfnReportGroupProps)
Create a new `AWS::CodeBuild::ReportGroup`.
func NewCfnSourceCredential_Override ¶
func NewCfnSourceCredential_Override(c CfnSourceCredential, scope constructs.Construct, id *string, props *CfnSourceCredentialProps)
Create a new `AWS::CodeBuild::SourceCredential`.
func NewFileSystemLocation_Override ¶
func NewFileSystemLocation_Override(f FileSystemLocation)
func NewGitHubEnterpriseSourceCredentials_Override ¶
func NewGitHubEnterpriseSourceCredentials_Override(g GitHubEnterpriseSourceCredentials, scope constructs.Construct, id *string, props *GitHubEnterpriseSourceCredentialsProps)
func NewGitHubSourceCredentials_Override ¶
func NewGitHubSourceCredentials_Override(g GitHubSourceCredentials, scope constructs.Construct, id *string, props *GitHubSourceCredentialsProps)
func NewPipelineProject_Override ¶
func NewPipelineProject_Override(p PipelineProject, scope constructs.Construct, id *string, props *PipelineProjectProps)
func NewProject_Override ¶
func NewProject_Override(p Project, scope constructs.Construct, id *string, props *ProjectProps)
func NewReportGroup_Override ¶
func NewReportGroup_Override(r ReportGroup, scope constructs.Construct, id *string, props *ReportGroupProps)
func NewSource_Override ¶
func NewSource_Override(s Source, props *SourceProps)
func NewUntrustedCodeBoundaryPolicy_Override ¶
func NewUntrustedCodeBoundaryPolicy_Override(u UntrustedCodeBoundaryPolicy, scope constructs.Construct, id *string, props *UntrustedCodeBoundaryPolicyProps)
func PhaseChangeEvent_BuildComplete ¶
func PhaseChangeEvent_BuildComplete() *string
func PhaseChangeEvent_BuildId ¶
func PhaseChangeEvent_BuildId() *string
func PhaseChangeEvent_CompletedPhase ¶
func PhaseChangeEvent_CompletedPhase() *string
func PhaseChangeEvent_CompletedPhaseDurationSeconds ¶
func PhaseChangeEvent_CompletedPhaseDurationSeconds() *string
func PhaseChangeEvent_CompletedPhaseStatus ¶
func PhaseChangeEvent_CompletedPhaseStatus() *string
func PhaseChangeEvent_ProjectName ¶
func PhaseChangeEvent_ProjectName() *string
func PipelineProject_IsConstruct ¶
func PipelineProject_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func PipelineProject_IsResource ¶
func PipelineProject_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func PipelineProject_SerializeEnvVariables ¶
func PipelineProject_SerializeEnvVariables(environmentVariables *map[string]*BuildEnvironmentVariable, validateNoPlainTextSecrets *bool, principal awsiam.IGrantable) *[]*CfnProject_EnvironmentVariableProperty
Convert the environment variables map of string to {@link BuildEnvironmentVariable}, which is the customer-facing type, to a list of {@link CfnProject.EnvironmentVariableProperty}, which is the representation of environment variables in CloudFormation.
Returns: an array of {@link CfnProject.EnvironmentVariableProperty} instances
func Project_IsConstruct ¶
func Project_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func Project_IsResource ¶
func Project_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func Project_SerializeEnvVariables ¶
func Project_SerializeEnvVariables(environmentVariables *map[string]*BuildEnvironmentVariable, validateNoPlainTextSecrets *bool, principal awsiam.IGrantable) *[]*CfnProject_EnvironmentVariableProperty
Convert the environment variables map of string to {@link BuildEnvironmentVariable}, which is the customer-facing type, to a list of {@link CfnProject.EnvironmentVariableProperty}, which is the representation of environment variables in CloudFormation.
Returns: an array of {@link CfnProject.EnvironmentVariableProperty} instances
func ReportGroup_IsConstruct ¶
func ReportGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func ReportGroup_IsResource ¶
func ReportGroup_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func StateChangeEvent_BuildId ¶
func StateChangeEvent_BuildId() *string
func StateChangeEvent_BuildStatus ¶
func StateChangeEvent_BuildStatus() *string
func StateChangeEvent_CurrentPhase ¶
func StateChangeEvent_CurrentPhase() *string
func StateChangeEvent_ProjectName ¶
func StateChangeEvent_ProjectName() *string
func UntrustedCodeBoundaryPolicy_FromAwsManagedPolicyName ¶
func UntrustedCodeBoundaryPolicy_FromAwsManagedPolicyName(managedPolicyName *string) awsiam.IManagedPolicy
Import a managed policy from one of the policies that AWS manages.
For this managed policy, you only need to know the name to be able to use it.
Some managed policy names start with "service-role/", some start with "job-function/", and some don't start with anything. Include the prefix when constructing this object.
func UntrustedCodeBoundaryPolicy_FromManagedPolicyArn ¶
func UntrustedCodeBoundaryPolicy_FromManagedPolicyArn(scope constructs.Construct, id *string, managedPolicyArn *string) awsiam.IManagedPolicy
Import an external managed policy by ARN.
For this managed policy, you only need to know the ARN to be able to use it. This can be useful if you got the ARN from a CloudFormation Export.
If the imported Managed Policy ARN is a Token (such as a `CfnParameter.valueAsString` or a `Fn.importValue()`) *and* the referenced managed policy has a `path` (like `arn:...:policy/AdminPolicy/AdminAllow`), the `managedPolicyName` property will not resolve to the correct value. Instead it will resolve to the first path component. We unfortunately cannot express the correct calculation of the full path name as a CloudFormation expression. In this scenario the Managed Policy ARN should be supplied without the `path` in order to resolve the correct managed policy resource.
func UntrustedCodeBoundaryPolicy_FromManagedPolicyName ¶
func UntrustedCodeBoundaryPolicy_FromManagedPolicyName(scope constructs.Construct, id *string, managedPolicyName *string) awsiam.IManagedPolicy
Import a customer managed policy from the managedPolicyName.
For this managed policy, you only need to know the name to be able to use it.
func UntrustedCodeBoundaryPolicy_IsConstruct ¶
func UntrustedCodeBoundaryPolicy_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead
func UntrustedCodeBoundaryPolicy_IsResource ¶
func UntrustedCodeBoundaryPolicy_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
Types ¶
type Artifacts ¶
type Artifacts interface { IArtifacts Identifier() *string Type() *string Bind(_scope constructs.Construct, _project IProject) *ArtifactsConfig }
Artifacts definition for a CodeBuild Project.
TODO: EXAMPLE
type ArtifactsConfig ¶
type ArtifactsConfig struct { // The low-level CloudFormation artifacts property. ArtifactsProperty *CfnProject_ArtifactsProperty `json:"artifactsProperty" yaml:"artifactsProperty"` }
The type returned from {@link IArtifacts#bind}.
TODO: EXAMPLE
type ArtifactsProps ¶
type ArtifactsProps struct { // The artifact identifier. // // This property is required on secondary artifacts. Identifier *string `json:"identifier" yaml:"identifier"` }
Properties common to all Artifacts classes.
TODO: EXAMPLE
type BatchBuildConfig ¶
type BatchBuildConfig struct { // The IAM batch service Role of this Project. Role awsiam.IRole `json:"role" yaml:"role"` }
The type returned from {@link IProject#enableBatchBuilds}.
TODO: EXAMPLE
type BindToCodePipelineOptions ¶
type BindToCodePipelineOptions struct { // The artifact bucket that will be used by the action that invokes this project. ArtifactBucket awss3.IBucket `json:"artifactBucket" yaml:"artifactBucket"` }
The extra options passed to the {@link IProject.bindToCodePipeline} method.
TODO: EXAMPLE
type BitBucketSourceCredentials ¶
type BitBucketSourceCredentials interface { awscdk.Resource Env() *awscdk.ResourceEnvironment Node() constructs.Node PhysicalName() *string Stack() awscdk.Stack ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string ToString() *string }
The source credentials used when contacting the BitBucket API.
**Note**: CodeBuild only allows a single credential for BitBucket to be saved in a given AWS account in a given region - any attempt to add more than one will result in an error.
TODO: EXAMPLE
func NewBitBucketSourceCredentials ¶
func NewBitBucketSourceCredentials(scope constructs.Construct, id *string, props *BitBucketSourceCredentialsProps) BitBucketSourceCredentials
type BitBucketSourceCredentialsProps ¶
type BitBucketSourceCredentialsProps struct { // Your BitBucket application password. Password awscdk.SecretValue `json:"password" yaml:"password"` // Your BitBucket username. Username awscdk.SecretValue `json:"username" yaml:"username"` }
Construction properties of {@link BitBucketSourceCredentials}.
TODO: EXAMPLE
type BitBucketSourceProps ¶
type BitBucketSourceProps struct { // The source identifier. // // This property is required on secondary sources. Identifier *string `json:"identifier" yaml:"identifier"` // The BitBucket account/user that owns the repo. // // TODO: EXAMPLE // Owner *string `json:"owner" yaml:"owner"` // The name of the repo (without the username). // // TODO: EXAMPLE // Repo *string `json:"repo" yaml:"repo"` // The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. // // TODO: EXAMPLE // BranchOrRef *string `json:"branchOrRef" yaml:"branchOrRef"` // The depth of history to download. // // Minimum value is 0. // If this value is 0, greater than 25, or not provided, // then the full history is downloaded with each build of the project. CloneDepth *float64 `json:"cloneDepth" yaml:"cloneDepth"` // Whether to fetch submodules while cloning git repo. FetchSubmodules *bool `json:"fetchSubmodules" yaml:"fetchSubmodules"` // Whether to send notifications on your build's start and end. ReportBuildStatus *bool `json:"reportBuildStatus" yaml:"reportBuildStatus"` // Whether to create a webhook that will trigger a build every time an event happens in the repository. Webhook *bool `json:"webhook" yaml:"webhook"` // A list of webhook filters that can constraint what events in the repository will trigger a build. // // A build is triggered if any of the provided filter groups match. // Only valid if `webhook` was not provided as false. WebhookFilters *[]FilterGroup `json:"webhookFilters" yaml:"webhookFilters"` // Trigger a batch build from a webhook instead of a standard one. // // Enabling this will enable batch builds on the CodeBuild project. WebhookTriggersBatchBuild *bool `json:"webhookTriggersBatchBuild" yaml:"webhookTriggersBatchBuild"` }
Construction properties for {@link BitBucketSource}.
TODO: EXAMPLE
type BucketCacheOptions ¶
type BucketCacheOptions struct { // The prefix to use to store the cache in the bucket. Prefix *string `json:"prefix" yaml:"prefix"` }
TODO: EXAMPLE
type BuildEnvironment ¶
type BuildEnvironment struct { // The image used for the builds. BuildImage IBuildImage `json:"buildImage" yaml:"buildImage"` // The location of the PEM-encoded certificate for the build project. Certificate *BuildEnvironmentCertificate `json:"certificate" yaml:"certificate"` // The type of compute to use for this build. // // See the {@link ComputeType} enum for the possible values. ComputeType ComputeType `json:"computeType" yaml:"computeType"` // The environment variables that your builds can use. EnvironmentVariables *map[string]*BuildEnvironmentVariable `json:"environmentVariables" yaml:"environmentVariables"` // Indicates how the project builds Docker images. // // Specify true to enable // running the Docker daemon inside a Docker container. This value must be // set to true only if this build project will be used to build Docker // images, and the specified build environment image is not one provided by // AWS CodeBuild with Docker support. Otherwise, all associated builds that // attempt to interact with the Docker daemon will fail. Privileged *bool `json:"privileged" yaml:"privileged"` }
TODO: EXAMPLE
type BuildEnvironmentCertificate ¶
type BuildEnvironmentCertificate struct { // The bucket where the certificate is. Bucket awss3.IBucket `json:"bucket" yaml:"bucket"` // The full path and name of the key file. ObjectKey *string `json:"objectKey" yaml:"objectKey"` }
Location of a PEM certificate on S3.
TODO: EXAMPLE
type BuildEnvironmentVariable ¶
type BuildEnvironmentVariable struct { // The value of the environment variable. // // For plain-text variables (the default), this is the literal value of variable. // For SSM parameter variables, pass the name of the parameter here (`parameterName` property of `IParameter`). // For SecretsManager variables secrets, pass either the secret name (`secretName` property of `ISecret`) // or the secret ARN (`secretArn` property of `ISecret`) here, // along with optional SecretsManager qualifiers separated by ':', like the JSON key, or the version or stage // (see https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.env.secrets-manager for details). Value interface{} `json:"value" yaml:"value"` // The type of environment variable. Type BuildEnvironmentVariableType `json:"type" yaml:"type"` }
TODO: EXAMPLE
type BuildEnvironmentVariableType ¶
type BuildEnvironmentVariableType string
TODO: EXAMPLE
const ( BuildEnvironmentVariableType_PLAINTEXT BuildEnvironmentVariableType = "PLAINTEXT" BuildEnvironmentVariableType_PARAMETER_STORE BuildEnvironmentVariableType = "PARAMETER_STORE" BuildEnvironmentVariableType_SECRETS_MANAGER BuildEnvironmentVariableType = "SECRETS_MANAGER" )
type BuildImageBindOptions ¶
type BuildImageBindOptions struct { }
Optional arguments to {@link IBuildImage.binder} - currently empty.
TODO: EXAMPLE
type BuildImageConfig ¶
type BuildImageConfig struct { }
The return type from {@link IBuildImage.binder} - currently empty.
TODO: EXAMPLE
type BuildSpec ¶
BuildSpec for CodeBuild projects.
TODO: EXAMPLE
func BuildSpec_FromObject ¶
func BuildSpec_FromObjectToYaml ¶
Create a buildspec from an object that will be rendered as YAML in the resulting CloudFormation template.
func BuildSpec_FromSourceFilename ¶
Use a file from the source as buildspec.
Use this if you want to use a file different from 'buildspec.yml'`
type Cache ¶
type Cache interface { }
Cache options for CodeBuild Project.
A cache can store reusable pieces of your build environment and use them across multiple builds.
TODO: EXAMPLE
See: https://docs.aws.amazon.com/codebuild/latest/userguide/build-caching.html
func Cache_Bucket ¶
func Cache_Bucket(bucket awss3.IBucket, options *BucketCacheOptions) Cache
Create an S3 caching strategy.
func Cache_None ¶
func Cache_None() Cache
type CfnProject ¶
type CfnProject interface { awscdk.CfnResource awscdk.IInspectable Artifacts() interface{} SetArtifacts(val interface{}) AttrArn() *string BadgeEnabled() interface{} SetBadgeEnabled(val interface{}) BuildBatchConfig() interface{} SetBuildBatchConfig(val interface{}) Cache() interface{} SetCache(val interface{}) CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string ConcurrentBuildLimit() *float64 SetConcurrentBuildLimit(val *float64) CreationStack() *[]*string Description() *string SetDescription(val *string) EncryptionKey() *string SetEncryptionKey(val *string) Environment() interface{} SetEnvironment(val interface{}) FileSystemLocations() interface{} SetFileSystemLocations(val interface{}) LogicalId() *string LogsConfig() interface{} SetLogsConfig(val interface{}) Name() *string SetName(val *string) Node() constructs.Node QueuedTimeoutInMinutes() *float64 SetQueuedTimeoutInMinutes(val *float64) Ref() *string ResourceAccessRole() *string SetResourceAccessRole(val *string) SecondaryArtifacts() interface{} SetSecondaryArtifacts(val interface{}) SecondarySources() interface{} SetSecondarySources(val interface{}) SecondarySourceVersions() interface{} SetSecondarySourceVersions(val interface{}) ServiceRole() *string SetServiceRole(val *string) Source() interface{} SetSource(val interface{}) SourceVersion() *string SetSourceVersion(val *string) Stack() awscdk.Stack Tags() awscdk.TagManager TimeoutInMinutes() *float64 SetTimeoutInMinutes(val *float64) Triggers() interface{} SetTriggers(val interface{}) UpdatedProperites() *map[string]interface{} Visibility() *string SetVisibility(val *string) VpcConfig() interface{} SetVpcConfig(val interface{}) AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CodeBuild::Project`.
The `AWS::CodeBuild::Project` resource configures how AWS CodeBuild builds your source code. For example, it tells CodeBuild where to get the source code and which build environment to use.
TODO: EXAMPLE
func NewCfnProject ¶
func NewCfnProject(scope constructs.Construct, id *string, props *CfnProjectProps) CfnProject
Create a new `AWS::CodeBuild::Project`.
type CfnProjectProps ¶
type CfnProjectProps struct { // `Artifacts` is a property of the [AWS::CodeBuild::Project](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html) resource that specifies output settings for artifacts generated by an AWS CodeBuild build. Artifacts interface{} `json:"artifacts" yaml:"artifacts"` // The build environment settings for the project, such as the environment type or the environment variables to use for the build environment. Environment interface{} `json:"environment" yaml:"environment"` // The ARN of the IAM role that enables AWS CodeBuild to interact with dependent AWS services on behalf of the AWS account. ServiceRole *string `json:"serviceRole" yaml:"serviceRole"` // The source code settings for the project, such as the source code's repository type and location. Source interface{} `json:"source" yaml:"source"` // Indicates whether AWS CodeBuild generates a publicly accessible URL for your project's build badge. // // For more information, see [Build Badges Sample](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-build-badges.html) in the *AWS CodeBuild User Guide* . // // > Including build badges with your project is currently not supported if the source type is CodePipeline. If you specify `CODEPIPELINE` for the `Source` property, do not specify the `BadgeEnabled` property. BadgeEnabled interface{} `json:"badgeEnabled" yaml:"badgeEnabled"` // A `ProjectBuildBatchConfig` object that defines the batch build options for the project. BuildBatchConfig interface{} `json:"buildBatchConfig" yaml:"buildBatchConfig"` // Settings that AWS CodeBuild uses to store and reuse build dependencies. Cache interface{} `json:"cache" yaml:"cache"` // The maximum number of concurrent builds that are allowed for this project. // // New builds are only started if the current number of builds is less than or equal to this limit. If the current build count meets this limit, new builds are throttled and are not run. ConcurrentBuildLimit *float64 `json:"concurrentBuildLimit" yaml:"concurrentBuildLimit"` // A description that makes the build project easy to identify. Description *string `json:"description" yaml:"description"` // The AWS Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts. // // > You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key. // // You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format `alias/<alias-name>` ). If you don't specify a value, CodeBuild uses the managed CMK for Amazon Simple Storage Service (Amazon S3). EncryptionKey *string `json:"encryptionKey" yaml:"encryptionKey"` // An array of `ProjectFileSystemLocation` objects for a CodeBuild build project. // // A `ProjectFileSystemLocation` object specifies the `identifier` , `location` , `mountOptions` , `mountPoint` , and `type` of a file system created using Amazon Elastic File System. FileSystemLocations interface{} `json:"fileSystemLocations" yaml:"fileSystemLocations"` // Information about logs for the build project. // // A project can create logs in CloudWatch Logs, an S3 bucket, or both. LogsConfig interface{} `json:"logsConfig" yaml:"logsConfig"` // The name of the build project. // // The name must be unique across all of the projects in your AWS account . Name *string `json:"name" yaml:"name"` // The number of minutes a build is allowed to be queued before it times out. QueuedTimeoutInMinutes *float64 `json:"queuedTimeoutInMinutes" yaml:"queuedTimeoutInMinutes"` // The ARN of the IAM role that enables CodeBuild to access the CloudWatch Logs and Amazon S3 artifacts for the project's builds. ResourceAccessRole *string `json:"resourceAccessRole" yaml:"resourceAccessRole"` // A list of `Artifacts` objects. // // Each artifacts object specifies output settings that the project generates during a build. SecondaryArtifacts interface{} `json:"secondaryArtifacts" yaml:"secondaryArtifacts"` // An array of `ProjectSource` objects. SecondarySources interface{} `json:"secondarySources" yaml:"secondarySources"` // An array of `ProjectSourceVersion` objects. // // If `secondarySourceVersions` is specified at the build level, then they take over these `secondarySourceVersions` (at the project level). SecondarySourceVersions interface{} `json:"secondarySourceVersions" yaml:"secondarySourceVersions"` // A version of the build input to be built for this project. // // If not specified, the latest version is used. If specified, it must be one of: // // - For CodeCommit: the commit ID, branch, or Git tag to use. // - For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format `pr/pull-request-ID` (for example `pr/25` ). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used. // - For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used. // - For Amazon S3: the version ID of the object that represents the build input ZIP file to use. // // If `sourceVersion` is specified at the build level, then that version takes precedence over this `sourceVersion` (at the project level). // // For more information, see [Source Version Sample with CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html) in the *AWS CodeBuild User Guide* . SourceVersion *string `json:"sourceVersion" yaml:"sourceVersion"` // An arbitrary set of tags (key-value pairs) for the AWS CodeBuild project. // // These tags are available for use by AWS services that support AWS CodeBuild build project tags. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` // How long, in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to wait before timing out any related build that did not get marked as completed. // // The default is 60 minutes. TimeoutInMinutes *float64 `json:"timeoutInMinutes" yaml:"timeoutInMinutes"` // For an existing AWS CodeBuild build project that has its source code stored in a GitHub repository, enables AWS CodeBuild to begin automatically rebuilding the source code every time a code change is pushed to the repository. Triggers interface{} `json:"triggers" yaml:"triggers"` // Specifies the visibility of the project's builds. Possible values are:. // // - **PUBLIC_READ** - The project builds are visible to the public. // - **PRIVATE** - The project builds are not visible to the public. Visibility *string `json:"visibility" yaml:"visibility"` // `VpcConfig` specifies settings that enable AWS CodeBuild to access resources in an Amazon VPC. // // For more information, see [Use AWS CodeBuild with Amazon Virtual Private Cloud](https://docs.aws.amazon.com/codebuild/latest/userguide/vpc-support.html) in the *AWS CodeBuild User Guide* . VpcConfig interface{} `json:"vpcConfig" yaml:"vpcConfig"` }
Properties for defining a `CfnProject`.
TODO: EXAMPLE
type CfnProject_ArtifactsProperty ¶
type CfnProject_ArtifactsProperty struct { // The type of build output artifact. Valid values include:. // // - `CODEPIPELINE` : The build project has build output generated through CodePipeline. // // > The `CODEPIPELINE` type is not supported for `secondaryArtifacts` . // - `NO_ARTIFACTS` : The build project does not produce any build output. // - `S3` : The build project stores build output in Amazon S3. Type *string `json:"type" yaml:"type"` // An identifier for this artifact definition. ArtifactIdentifier *string `json:"artifactIdentifier" yaml:"artifactIdentifier"` // Set to true if you do not want your output artifacts encrypted. // // This option is valid only if your artifacts type is Amazon Simple Storage Service (Amazon S3). If this is set with another artifacts type, an `invalidInputException` is thrown. EncryptionDisabled interface{} `json:"encryptionDisabled" yaml:"encryptionDisabled"` // Information about the build output artifact location:. // // - If `type` is set to `CODEPIPELINE` , AWS CodePipeline ignores this value if specified. This is because CodePipeline manages its build output locations instead of CodeBuild . // - If `type` is set to `NO_ARTIFACTS` , this value is ignored if specified, because no build output is produced. // - If `type` is set to `S3` , this is the name of the output bucket. // // If you specify `CODEPIPELINE` or `NO_ARTIFACTS` for the `Type` property, don't specify this property. For all of the other types, you must specify this property. Location *string `json:"location" yaml:"location"` // Along with `path` and `namespaceType` , the pattern that AWS CodeBuild uses to name and store the output artifact:. // // - If `type` is set to `CODEPIPELINE` , AWS CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of AWS CodeBuild . // - If `type` is set to `NO_ARTIFACTS` , this value is ignored if specified, because no build output is produced. // - If `type` is set to `S3` , this is the name of the output artifact object. If you set the name to be a forward slash ("/"), the artifact is stored in the root of the output bucket. // // For example: // // - If `path` is set to `MyArtifacts` , `namespaceType` is set to `BUILD_ID` , and `name` is set to `MyArtifact.zip` , then the output artifact is stored in `MyArtifacts/ *build-ID* /MyArtifact.zip` . // - If `path` is empty, `namespaceType` is set to `NONE` , and `name` is set to " `/` ", the output artifact is stored in the root of the output bucket. // - If `path` is set to `MyArtifacts` , `namespaceType` is set to `BUILD_ID` , and `name` is set to " `/` ", the output artifact is stored in `MyArtifacts/ *build-ID*` . // // If you specify `CODEPIPELINE` or `NO_ARTIFACTS` for the `Type` property, don't specify this property. For all of the other types, you must specify this property. Name *string `json:"name" yaml:"name"` // Along with `path` and `name` , the pattern that AWS CodeBuild uses to determine the name and location to store the output artifact: - If `type` is set to `CODEPIPELINE` , CodePipeline ignores this value if specified. // // This is because CodePipeline manages its build output names instead of AWS CodeBuild . // - If `type` is set to `NO_ARTIFACTS` , this value is ignored if specified, because no build output is produced. // - If `type` is set to `S3` , valid values include: // // - `BUILD_ID` : Include the build ID in the location of the build output artifact. // - `NONE` : Do not include the build ID. This is the default if `namespaceType` is not specified. // // For example, if `path` is set to `MyArtifacts` , `namespaceType` is set to `BUILD_ID` , and `name` is set to `MyArtifact.zip` , the output artifact is stored in `MyArtifacts/<build-ID>/MyArtifact.zip` . NamespaceType *string `json:"namespaceType" yaml:"namespaceType"` // If set to true a name specified in the buildspec file overrides the artifact name. // // The name specified in a buildspec file is calculated at build time and uses the Shell command language. For example, you can append a date and time to your artifact name so that it is always unique. OverrideArtifactName interface{} `json:"overrideArtifactName" yaml:"overrideArtifactName"` // The type of build output artifact to create:. // // - If `type` is set to `CODEPIPELINE` , CodePipeline ignores this value if specified. This is because CodePipeline manages its build output artifacts instead of AWS CodeBuild . // - If `type` is set to `NO_ARTIFACTS` , this value is ignored if specified, because no build output is produced. // - If `type` is set to `S3` , valid values include: // // - `NONE` : AWS CodeBuild creates in the output bucket a folder that contains the build output. This is the default if `packaging` is not specified. // - `ZIP` : AWS CodeBuild creates in the output bucket a ZIP file that contains the build output. Packaging *string `json:"packaging" yaml:"packaging"` // Along with `namespaceType` and `name` , the pattern that AWS CodeBuild uses to name and store the output artifact:. // // - If `type` is set to `CODEPIPELINE` , CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of AWS CodeBuild . // - If `type` is set to `NO_ARTIFACTS` , this value is ignored if specified, because no build output is produced. // - If `type` is set to `S3` , this is the path to the output artifact. If `path` is not specified, `path` is not used. // // For example, if `path` is set to `MyArtifacts` , `namespaceType` is set to `NONE` , and `name` is set to `MyArtifact.zip` , the output artifact is stored in the output bucket at `MyArtifacts/MyArtifact.zip` . Path *string `json:"path" yaml:"path"` }
`Artifacts` is a property of the [AWS::CodeBuild::Project](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html) resource that specifies output settings for artifacts generated by an AWS CodeBuild build.
TODO: EXAMPLE
type CfnProject_BatchRestrictionsProperty ¶
type CfnProject_BatchRestrictionsProperty struct { // An array of strings that specify the compute types that are allowed for the batch build. // // See [Build environment compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild User Guide* for these values. ComputeTypesAllowed *[]*string `json:"computeTypesAllowed" yaml:"computeTypesAllowed"` // Specifies the maximum number of builds allowed. MaximumBuildsAllowed *float64 `json:"maximumBuildsAllowed" yaml:"maximumBuildsAllowed"` }
Specifies restrictions for the batch build.
TODO: EXAMPLE
type CfnProject_BuildStatusConfigProperty ¶
type CfnProject_BuildStatusConfigProperty struct { // Specifies the context of the build status CodeBuild sends to the source provider. // // The usage of this parameter depends on the source provider. // // - **Bitbucket** - This parameter is used for the `name` parameter in the Bitbucket commit status. For more information, see [build](https://docs.aws.amazon.com/https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Bworkspace%7D/%7Brepo_slug%7D/commit/%7Bnode%7D/statuses/build) in the Bitbucket API documentation. // - **GitHub/GitHub Enterprise Server** - This parameter is used for the `context` parameter in the GitHub commit status. For more information, see [Create a commit status](https://docs.aws.amazon.com/https://developer.github.com/v3/repos/statuses/#create-a-commit-status) in the GitHub developer guide. Context *string `json:"context" yaml:"context"` // Specifies the target url of the build status CodeBuild sends to the source provider. // // The usage of this parameter depends on the source provider. // // - **Bitbucket** - This parameter is used for the `url` parameter in the Bitbucket commit status. For more information, see [build](https://docs.aws.amazon.com/https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Bworkspace%7D/%7Brepo_slug%7D/commit/%7Bnode%7D/statuses/build) in the Bitbucket API documentation. // - **GitHub/GitHub Enterprise Server** - This parameter is used for the `target_url` parameter in the GitHub commit status. For more information, see [Create a commit status](https://docs.aws.amazon.com/https://developer.github.com/v3/repos/statuses/#create-a-commit-status) in the GitHub developer guide. TargetUrl *string `json:"targetUrl" yaml:"targetUrl"` }
Contains information that defines how the AWS CodeBuild build project reports the build status to the source provider.
TODO: EXAMPLE
type CfnProject_CloudWatchLogsConfigProperty ¶
type CfnProject_CloudWatchLogsConfigProperty struct { // The current status of the logs in CloudWatch Logs for a build project. Valid values are:. // // - `ENABLED` : CloudWatch Logs are enabled for this build project. // - `DISABLED` : CloudWatch Logs are not enabled for this build project. Status *string `json:"status" yaml:"status"` // The group name of the logs in CloudWatch Logs. // // For more information, see [Working with Log Groups and Log Streams](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) . GroupName *string `json:"groupName" yaml:"groupName"` // The prefix of the stream name of the CloudWatch Logs. // // For more information, see [Working with Log Groups and Log Streams](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) . StreamName *string `json:"streamName" yaml:"streamName"` }
`CloudWatchLogs` is a property of the [AWS CodeBuild Project LogsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html) property type that specifies settings for CloudWatch logs generated by an AWS CodeBuild build.
TODO: EXAMPLE
type CfnProject_EnvironmentProperty ¶
type CfnProject_EnvironmentProperty struct { // The type of compute environment. // // This determines the number of CPU cores and memory the build environment uses. Available values include: // // - `BUILD_GENERAL1_SMALL` : Use up to 3 GB memory and 2 vCPUs for builds. // - `BUILD_GENERAL1_MEDIUM` : Use up to 7 GB memory and 4 vCPUs for builds. // - `BUILD_GENERAL1_LARGE` : Use up to 15 GB memory and 8 vCPUs for builds. // // For more information, see [Build Environment Compute Types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild User Guide.* ComputeType *string `json:"computeType" yaml:"computeType"` // The image tag or image digest that identifies the Docker image to use for this build project. // // Use the following formats: // // - For an image tag: `<registry>/<repository>:<tag>` . For example, in the Docker repository that CodeBuild uses to manage its Docker images, this would be `aws/codebuild/standard:4.0` . // - For an image digest: `<registry>/<repository>@<digest>` . For example, to specify an image with the digest "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use `<registry>/<repository>@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf` . // // For more information, see [Docker images provided by CodeBuild](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-available.html) in the *AWS CodeBuild user guide* . Image *string `json:"image" yaml:"image"` // The type of build environment to use for related builds. // // - The environment type `ARM_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt). // - The environment type `LINUX_CONTAINER` with compute type `build.general1.2xlarge` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China (Ningxia). // - The environment type `LINUX_GPU_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China (Ningxia). // // - The environment types `WINDOWS_CONTAINER` and `WINDOWS_SERVER_2019_CONTAINER` are available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), and EU (Ireland). // // For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . Type *string `json:"type" yaml:"type"` // The ARN of the Amazon S3 bucket, path prefix, and object key that contains the PEM-encoded certificate for the build project. // // For more information, see [certificate](https://docs.aws.amazon.com/codebuild/latest/userguide/create-project-cli.html#cli.environment.certificate) in the *AWS CodeBuild User Guide* . Certificate *string `json:"certificate" yaml:"certificate"` // A set of environment variables to make available to builds for this build project. EnvironmentVariables interface{} `json:"environmentVariables" yaml:"environmentVariables"` // The type of credentials AWS CodeBuild uses to pull images in your build. There are two valid values:. // // - `CODEBUILD` specifies that AWS CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust AWS CodeBuild service principal. // - `SERVICE_ROLE` specifies that AWS CodeBuild uses your build project's service role. // // When you use a cross-account or private registry image, you must use SERVICE_ROLE credentials. When you use an AWS CodeBuild curated image, you must use CODEBUILD credentials. ImagePullCredentialsType *string `json:"imagePullCredentialsType" yaml:"imagePullCredentialsType"` // Enables running the Docker daemon inside a Docker container. // // Set to true only if the build project is used to build Docker images. Otherwise, a build that attempts to interact with the Docker daemon fails. The default setting is `false` . // // You can initialize the Docker daemon during the install phase of your build by adding one of the following sets of commands to the install phase of your buildspec file: // // If the operating system's base image is Ubuntu Linux: // // `- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375 --storage-driver=overlay&` // // `- timeout 15 sh -c "until docker info; do echo .; sleep 1; done"` // // If the operating system's base image is Alpine Linux and the previous command does not work, add the `-t` argument to `timeout` : // // `- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375 --storage-driver=overlay&` // // `- timeout -t 15 sh -c "until docker info; do echo .; sleep 1; done"` PrivilegedMode interface{} `json:"privilegedMode" yaml:"privilegedMode"` // `RegistryCredential` is a property of the [AWS::CodeBuild::Project Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-environment) property that specifies information about credentials that provide access to a private Docker registry. When this is set:. // // - `imagePullCredentialsType` must be set to `SERVICE_ROLE` . // - images cannot be curated or an Amazon ECR image. RegistryCredential interface{} `json:"registryCredential" yaml:"registryCredential"` }
`Environment` is a property of the [AWS::CodeBuild::Project](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html) resource that specifies the environment for an AWS CodeBuild project.
TODO: EXAMPLE
type CfnProject_EnvironmentVariableProperty ¶
type CfnProject_EnvironmentVariableProperty struct { // The name or key of the environment variable. Name *string `json:"name" yaml:"name"` // The value of the environment variable. // // > We strongly discourage the use of `PLAINTEXT` environment variables to store sensitive values, especially AWS secret key IDs and secret access keys. `PLAINTEXT` environment variables can be displayed in plain text using the AWS CodeBuild console and the AWS CLI . For sensitive values, we recommend you use an environment variable of type `PARAMETER_STORE` or `SECRETS_MANAGER` . Value *string `json:"value" yaml:"value"` // The type of environment variable. Valid values include:. // // - `PARAMETER_STORE` : An environment variable stored in Systems Manager Parameter Store. To learn how to specify a parameter store environment variable, see [env/parameter-store](https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.env.parameter-store) in the *AWS CodeBuild User Guide* . // - `PLAINTEXT` : An environment variable in plain text format. This is the default value. // - `SECRETS_MANAGER` : An environment variable stored in AWS Secrets Manager . To learn how to specify a secrets manager environment variable, see [env/secrets-manager](https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.env.secrets-manager) in the *AWS CodeBuild User Guide* . Type *string `json:"type" yaml:"type"` }
`EnvironmentVariable` is a property of the [AWS CodeBuild Project Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html) property type that specifies the name and value of an environment variable for an AWS CodeBuild project environment. When you use the environment to run a build, these variables are available for your builds to use. `EnvironmentVariable` contains a list of `EnvironmentVariable` property types.
TODO: EXAMPLE
type CfnProject_GitSubmodulesConfigProperty ¶
type CfnProject_GitSubmodulesConfigProperty struct {
// Set to true to fetch Git submodules for your AWS CodeBuild build project.
FetchSubmodules interface{} `json:"fetchSubmodules" yaml:"fetchSubmodules"`
}
`GitSubmodulesConfig` is a property of the [AWS CodeBuild Project Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html) property type that specifies information about the Git submodules configuration for the build project.
TODO: EXAMPLE
type CfnProject_LogsConfigProperty ¶
type CfnProject_LogsConfigProperty struct { // Information about CloudWatch Logs for a build project. // // CloudWatch Logs are enabled by default. CloudWatchLogs interface{} `json:"cloudWatchLogs" yaml:"cloudWatchLogs"` // Information about logs built to an S3 bucket for a build project. // // S3 logs are not enabled by default. S3Logs interface{} `json:"s3Logs" yaml:"s3Logs"` }
`LogsConfig` is a property of the [AWS CodeBuild Project](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html) resource that specifies information about logs for a build project. These can be logs in Amazon CloudWatch Logs, built in a specified S3 bucket, or both.
TODO: EXAMPLE
type CfnProject_ProjectBuildBatchConfigProperty ¶
type CfnProject_ProjectBuildBatchConfigProperty struct { // Specifies how build status reports are sent to the source provider for the batch build. // // This property is only used when the source provider for your project is Bitbucket, GitHub, or GitHub Enterprise, and your project is configured to report build statuses to the source provider. // // - **REPORT_AGGREGATED_BATCH** - (Default) Aggregate all of the build statuses into a single status report. // - **REPORT_INDIVIDUAL_BUILDS** - Send a separate status report for each individual build. BatchReportMode *string `json:"batchReportMode" yaml:"batchReportMode"` // Specifies if the build artifacts for the batch build should be combined into a single artifact location. CombineArtifacts interface{} `json:"combineArtifacts" yaml:"combineArtifacts"` // A `BatchRestrictions` object that specifies the restrictions for the batch build. Restrictions interface{} `json:"restrictions" yaml:"restrictions"` // Specifies the service role ARN for the batch build project. ServiceRole *string `json:"serviceRole" yaml:"serviceRole"` // Specifies the maximum amount of time, in minutes, that the batch build must be completed in. TimeoutInMins *float64 `json:"timeoutInMins" yaml:"timeoutInMins"` }
Contains configuration information about a batch build project.
TODO: EXAMPLE
type CfnProject_ProjectCacheProperty ¶
type CfnProject_ProjectCacheProperty struct { // The type of cache used by the build project. Valid values include:. // // - `NO_CACHE` : The build project does not use any cache. // - `S3` : The build project reads and writes from and to S3. // - `LOCAL` : The build project stores a cache locally on a build host that is only available to that build host. Type *string `json:"type" yaml:"type"` // Information about the cache location:. // // - `NO_CACHE` or `LOCAL` : This value is ignored. // - `S3` : This is the S3 bucket name/prefix. Location *string `json:"location" yaml:"location"` // An array of strings that specify the local cache modes. // // You can use one or more local cache modes at the same time. This is only used for `LOCAL` cache types. // // Possible values are: // // - **LOCAL_SOURCE_CACHE** - Caches Git metadata for primary and secondary sources. After the cache is created, subsequent builds pull only the change between commits. This mode is a good choice for projects with a clean working directory and a source that is a large Git repository. If you choose this option and your project does not use a Git repository (GitHub, GitHub Enterprise, or Bitbucket), the option is ignored. // - **LOCAL_DOCKER_LAYER_CACHE** - Caches existing Docker layers. This mode is a good choice for projects that build or pull large Docker images. It can prevent the performance issues caused by pulling large Docker images down from the network. // // > - You can use a Docker layer cache in the Linux environment only. // > - The `privileged` flag must be set so that your project has the required Docker permissions. // > - You should consider the security implications before you use a Docker layer cache. // - **LOCAL_CUSTOM_CACHE** - Caches directories you specify in the buildspec file. This mode is a good choice if your build scenario is not suited to one of the other three local cache modes. If you use a custom cache: // // - Only directories can be specified for caching. You cannot specify individual files. // - Symlinks are used to reference cached directories. // - Cached directories are linked to your build before it downloads its project sources. Cached items are overridden if a source item has the same name. Directories are specified using cache paths in the buildspec file. Modes *[]*string `json:"modes" yaml:"modes"` }
`ProjectCache` is a property of the [AWS CodeBuild Project](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html) resource that specifies information about the cache for the build project. If `ProjectCache` is not specified, then both of its properties default to `NO_CACHE` .
TODO: EXAMPLE
type CfnProject_ProjectFileSystemLocationProperty ¶
type CfnProject_ProjectFileSystemLocationProperty struct { // The name used to access a file system created by Amazon EFS. // // CodeBuild creates an environment variable by appending the `identifier` in all capital letters to `CODEBUILD_` . For example, if you specify `my_efs` for `identifier` , a new environment variable is create named `CODEBUILD_MY_EFS` . // // The `identifier` is used to mount your file system. Identifier *string `json:"identifier" yaml:"identifier"` // A string that specifies the location of the file system created by Amazon EFS. // // Its format is `efs-dns-name:/directory-path` . You can find the DNS name of file system when you view it in the Amazon EFS console. The directory path is a path to a directory in the file system that CodeBuild mounts. For example, if the DNS name of a file system is `fs-abcd1234.efs.us-west-2.amazonaws.com` , and its mount directory is `my-efs-mount-directory` , then the `location` is `fs-abcd1234.efs.us-west-2.amazonaws.com:/my-efs-mount-directory` . // // The directory path in the format `efs-dns-name:/directory-path` is optional. If you do not specify a directory path, the location is only the DNS name and CodeBuild mounts the entire file system. Location *string `json:"location" yaml:"location"` // The location in the container where you mount the file system. MountPoint *string `json:"mountPoint" yaml:"mountPoint"` // The type of the file system. // // The one supported type is `EFS` . Type *string `json:"type" yaml:"type"` // The mount options for a file system created by Amazon EFS. // // The default mount options used by CodeBuild are `nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2` . For more information, see [Recommended NFS Mount Options](https://docs.aws.amazon.com/efs/latest/ug/mounting-fs-nfs-mount-settings.html) . MountOptions *string `json:"mountOptions" yaml:"mountOptions"` }
Information about a file system created by Amazon Elastic File System (EFS).
For more information, see [What Is Amazon Elastic File System?](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html)
TODO: EXAMPLE
type CfnProject_ProjectSourceVersionProperty ¶
type CfnProject_ProjectSourceVersionProperty struct { // An identifier for a source in the build project. // // The identifier can only contain alphanumeric characters and underscores, and must be less than 128 characters in length. SourceIdentifier *string `json:"sourceIdentifier" yaml:"sourceIdentifier"` // The source version for the corresponding source identifier. If specified, must be one of:. // // - For CodeCommit: the commit ID, branch, or Git tag to use. // - For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format `pr/pull-request-ID` (for example, `pr/25` ). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used. // - For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used. // - For Amazon S3: the version ID of the object that represents the build input ZIP file to use. // // For more information, see [Source Version Sample with CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html) in the *AWS CodeBuild User Guide* . SourceVersion *string `json:"sourceVersion" yaml:"sourceVersion"` }
A source identifier and its corresponding version.
TODO: EXAMPLE
type CfnProject_ProjectTriggersProperty ¶
type CfnProject_ProjectTriggersProperty struct { // Specifies the type of build this webhook will trigger. Allowed values are:. // // - **BUILD** - A single build // - **BUILD_BATCH** - A batch build BuildType *string `json:"buildType" yaml:"buildType"` // A list of lists of `WebhookFilter` objects used to determine which webhook events are triggered. // // At least one `WebhookFilter` in the array must specify `EVENT` as its type. FilterGroups interface{} `json:"filterGroups" yaml:"filterGroups"` // Specifies whether or not to begin automatically rebuilding the source code every time a code change is pushed to the repository. Webhook interface{} `json:"webhook" yaml:"webhook"` }
`ProjectTriggers` is a property of the [AWS CodeBuild Project](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html) resource that specifies webhooks that trigger an AWS CodeBuild build.
TODO: EXAMPLE
type CfnProject_RegistryCredentialProperty ¶
type CfnProject_RegistryCredentialProperty struct { // The Amazon Resource Name (ARN) or name of credentials created using AWS Secrets Manager . // // > The `credential` can use the name of the credentials only if they exist in your current AWS Region . Credential *string `json:"credential" yaml:"credential"` // The service that created the credentials to access a private Docker registry. // // The valid value, SECRETS_MANAGER, is for AWS Secrets Manager . CredentialProvider *string `json:"credentialProvider" yaml:"credentialProvider"` }
`RegistryCredential` is a property of the [AWS CodeBuild Project Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html) property type that specifies information about credentials that provide access to a private Docker registry. When this is set:.
- `imagePullCredentialsType` must be set to `SERVICE_ROLE` . - images cannot be curated or an Amazon ECR image.
For more information, see [Private Registry with AWS Secrets Manager Sample for AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-private-registry.html) .
TODO: EXAMPLE
type CfnProject_S3LogsConfigProperty ¶
type CfnProject_S3LogsConfigProperty struct { // The current status of the S3 build logs. Valid values are:. // // - `ENABLED` : S3 build logs are enabled for this build project. // - `DISABLED` : S3 build logs are not enabled for this build project. Status *string `json:"status" yaml:"status"` // Set to true if you do not want your S3 build log output encrypted. // // By default S3 build logs are encrypted. EncryptionDisabled interface{} `json:"encryptionDisabled" yaml:"encryptionDisabled"` // The ARN of an S3 bucket and the path prefix for S3 logs. // // If your Amazon S3 bucket name is `my-bucket` , and your path prefix is `build-log` , then acceptable formats are `my-bucket/build-log` or `arn:aws:s3:::my-bucket/build-log` . Location *string `json:"location" yaml:"location"` }
`S3Logs` is a property of the [AWS CodeBuild Project LogsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-logsconfig.html) property type that specifies settings for logs generated by an AWS CodeBuild build in an S3 bucket.
TODO: EXAMPLE
type CfnProject_SourceAuthProperty ¶
type CfnProject_SourceAuthProperty struct { // The authorization type to use. The only valid value is `OAUTH` , which represents the OAuth authorization type. // // > This data type is used by the AWS CodeBuild console only. Type *string `json:"type" yaml:"type"` // The resource value that applies to the specified authorization type. // // > This data type is used by the AWS CodeBuild console only. Resource *string `json:"resource" yaml:"resource"` }
`SourceAuth` is a property of the [AWS CodeBuild Project Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html) property type that specifies authorization settings for AWS CodeBuild to access the source code to be built.
`SourceAuth` is for use by the CodeBuild console only. Do not get or set it directly.
TODO: EXAMPLE
type CfnProject_SourceProperty ¶
type CfnProject_SourceProperty struct { // The type of repository that contains the source code to be built. Valid values include:. // // - `BITBUCKET` : The source code is in a Bitbucket repository. // - `CODECOMMIT` : The source code is in an CodeCommit repository. // - `CODEPIPELINE` : The source code settings are specified in the source action of a pipeline in CodePipeline. // - `GITHUB` : The source code is in a GitHub or GitHub Enterprise Cloud repository. // - `GITHUB_ENTERPRISE` : The source code is in a GitHub Enterprise Server repository. // - `NO_SOURCE` : The project does not have input source code. // - `S3` : The source code is in an Amazon S3 bucket. Type *string `json:"type" yaml:"type"` // Information about the authorization settings for AWS CodeBuild to access the source code to be built. // // This information is for the AWS CodeBuild console's use only. Your code should not get or set `Auth` directly. Auth interface{} `json:"auth" yaml:"auth"` // The build specification for the project. // // If this value is not provided, then the source code must contain a buildspec file named `buildspec.yml` at the root level. If this value is provided, it can be either a single string containing the entire build specification, or the path to an alternate buildspec file relative to the value of the built-in environment variable `CODEBUILD_SRC_DIR` . The alternate buildspec file can have a name other than `buildspec.yml` , for example `myspec.yml` or `build_spec_qa.yml` or similar. For more information, see the [Build Spec Reference](https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-example) in the *AWS CodeBuild User Guide* . BuildSpec *string `json:"buildSpec" yaml:"buildSpec"` // Contains information that defines how the build project reports the build status to the source provider. // // This option is only used when the source provider is `GITHUB` , `GITHUB_ENTERPRISE` , or `BITBUCKET` . BuildStatusConfig interface{} `json:"buildStatusConfig" yaml:"buildStatusConfig"` // The depth of history to download. // // Minimum value is 0. If this value is 0, greater than 25, or not provided, then the full history is downloaded with each build project. If your source type is Amazon S3, this value is not supported. GitCloneDepth *float64 `json:"gitCloneDepth" yaml:"gitCloneDepth"` // Information about the Git submodules configuration for the build project. GitSubmodulesConfig interface{} `json:"gitSubmodulesConfig" yaml:"gitSubmodulesConfig"` // This is used with GitHub Enterprise only. // // Set to true to ignore SSL warnings while connecting to your GitHub Enterprise project repository. The default value is `false` . `InsecureSsl` should be used for testing purposes only. It should not be used in a production environment. InsecureSsl interface{} `json:"insecureSsl" yaml:"insecureSsl"` // Information about the location of the source code to be built. Valid values include:. // // - For source code settings that are specified in the source action of a pipeline in CodePipeline, `location` should not be specified. If it is specified, CodePipeline ignores it. This is because CodePipeline uses the settings in a pipeline's source action instead of this value. // - For source code in an CodeCommit repository, the HTTPS clone URL to the repository that contains the source code and the buildspec file (for example, `https://git-codecommit.<region-ID>.amazonaws.com/v1/repos/<repo-name>` ). // - For source code in an Amazon S3 input bucket, one of the following. // // - The path to the ZIP file that contains the source code (for example, `<bucket-name>/<path>/<object-name>.zip` ). // - The path to the folder that contains the source code (for example, `<bucket-name>/<path-to-source-code>/<folder>/` ). // - For source code in a GitHub repository, the HTTPS clone URL to the repository that contains the source and the buildspec file. You must connect your AWS account to your GitHub account. Use the AWS CodeBuild console to start creating a build project. When you use the console to connect (or reconnect) with GitHub, on the GitHub *Authorize application* page, for *Organization access* , choose *Request access* next to each repository you want to allow AWS CodeBuild to have access to, and then choose *Authorize application* . (After you have connected to your GitHub account, you do not need to finish creating the build project. You can leave the AWS CodeBuild console.) To instruct AWS CodeBuild to use this connection, in the `source` object, set the `auth` object's `type` value to `OAUTH` . // - For source code in a Bitbucket repository, the HTTPS clone URL to the repository that contains the source and the buildspec file. You must connect your AWS account to your Bitbucket account. Use the AWS CodeBuild console to start creating a build project. When you use the console to connect (or reconnect) with Bitbucket, on the Bitbucket *Confirm access to your account* page, choose *Grant access* . (After you have connected to your Bitbucket account, you do not need to finish creating the build project. You can leave the AWS CodeBuild console.) To instruct AWS CodeBuild to use this connection, in the `source` object, set the `auth` object's `type` value to `OAUTH` . // // If you specify `CODEPIPELINE` for the `Type` property, don't specify this property. For all of the other types, you must specify `Location` . Location *string `json:"location" yaml:"location"` // Set to true to report the status of a build's start and finish to your source provider. // // This option is valid only when your source provider is GitHub, GitHub Enterprise, or Bitbucket. If this is set and you use a different source provider, an `invalidInputException` is thrown. ReportBuildStatus interface{} `json:"reportBuildStatus" yaml:"reportBuildStatus"` // An identifier for this project source. // // The identifier can only contain alphanumeric characters and underscores, and must be less than 128 characters in length. SourceIdentifier *string `json:"sourceIdentifier" yaml:"sourceIdentifier"` }
`Source` is a property of the [AWS::CodeBuild::Project](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html) resource that specifies the source code settings for the project, such as the source code's repository type and location.
TODO: EXAMPLE
type CfnProject_VpcConfigProperty ¶
type CfnProject_VpcConfigProperty struct { // A list of one or more security groups IDs in your Amazon VPC. // // The maximum count is 5. SecurityGroupIds *[]*string `json:"securityGroupIds" yaml:"securityGroupIds"` // A list of one or more subnet IDs in your Amazon VPC. // // The maximum count is 16. Subnets *[]*string `json:"subnets" yaml:"subnets"` // The ID of the Amazon VPC. VpcId *string `json:"vpcId" yaml:"vpcId"` }
`VpcConfig` is a property of the [AWS::CodeBuild::Project](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html) resource that enable AWS CodeBuild to access resources in an Amazon VPC. For more information, see [Use AWS CodeBuild with Amazon Virtual Private Cloud](https://docs.aws.amazon.com/codebuild/latest/userguide/vpc-support.html) in the *AWS CodeBuild User Guide* .
TODO: EXAMPLE
type CfnProject_WebhookFilterProperty ¶
type CfnProject_WebhookFilterProperty struct { // For a `WebHookFilter` that uses `EVENT` type, a comma-separated string that specifies one or more events. // // For example, the webhook filter `PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED` allows all push, pull request created, and pull request updated events to trigger a build. // // For a `WebHookFilter` that uses any of the other filter types, a regular expression pattern. For example, a `WebHookFilter` that uses `HEAD_REF` for its `type` and the pattern `^refs/heads/` triggers a build when the head reference is a branch with a reference name `refs/heads/branch-name` . Pattern *string `json:"pattern" yaml:"pattern"` // The type of webhook filter. // // There are six webhook filter types: `EVENT` , `ACTOR_ACCOUNT_ID` , `HEAD_REF` , `BASE_REF` , `FILE_PATH` , and `COMMIT_MESSAGE` . // // - **EVENT** - A webhook event triggers a build when the provided `pattern` matches one of five event types: `PUSH` , `PULL_REQUEST_CREATED` , `PULL_REQUEST_UPDATED` , `PULL_REQUEST_REOPENED` , and `PULL_REQUEST_MERGED` . The `EVENT` patterns are specified as a comma-separated string. For example, `PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED` filters all push, pull request created, and pull request updated events. // // > The `PULL_REQUEST_REOPENED` works with GitHub and GitHub Enterprise only. // - **ACTOR_ACCOUNT_ID** - A webhook event triggers a build when a GitHub, GitHub Enterprise, or Bitbucket account ID matches the regular expression `pattern` . // - **HEAD_REF** - A webhook event triggers a build when the head reference matches the regular expression `pattern` . For example, `refs/heads/branch-name` and `refs/tags/tag-name` . // // Works with GitHub and GitHub Enterprise push, GitHub and GitHub Enterprise pull request, Bitbucket push, and Bitbucket pull request events. // - **BASE_REF** - A webhook event triggers a build when the base reference matches the regular expression `pattern` . For example, `refs/heads/branch-name` . // // > Works with pull request events only. // - **FILE_PATH** - A webhook triggers a build when the path of a changed file matches the regular expression `pattern` . // // > Works with GitHub and Bitbucket events push and pull requests events. Also works with GitHub Enterprise push events, but does not work with GitHub Enterprise pull request events. // - **COMMIT_MESSAGE** - A webhook triggers a build when the head commit message matches the regular expression `pattern` . // // > Works with GitHub and Bitbucket events push and pull requests events. Also works with GitHub Enterprise push events, but does not work with GitHub Enterprise pull request events. Type *string `json:"type" yaml:"type"` // Used to indicate that the `pattern` determines which webhook events do not trigger a build. // // If true, then a webhook event that does not match the `pattern` triggers a build. If false, then a webhook event that matches the `pattern` triggers a build. ExcludeMatchedPattern interface{} `json:"excludeMatchedPattern" yaml:"excludeMatchedPattern"` }
`WebhookFilter` is a structure of the `FilterGroups` property on the [AWS CodeBuild Project ProjectTriggers](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projecttriggers.html) property type that specifies which webhooks trigger an AWS CodeBuild build.
TODO: EXAMPLE
type CfnReportGroup ¶
type CfnReportGroup interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string DeleteReports() interface{} SetDeleteReports(val interface{}) ExportConfig() interface{} SetExportConfig(val interface{}) LogicalId() *string Name() *string SetName(val *string) Node() constructs.Node Ref() *string Stack() awscdk.Stack Tags() awscdk.TagManager Type() *string SetType(val *string) UpdatedProperites() *map[string]interface{} AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CodeBuild::ReportGroup`.
Represents a report group. A report group contains a collection of reports.
TODO: EXAMPLE
func NewCfnReportGroup ¶
func NewCfnReportGroup(scope constructs.Construct, id *string, props *CfnReportGroupProps) CfnReportGroup
Create a new `AWS::CodeBuild::ReportGroup`.
type CfnReportGroupProps ¶
type CfnReportGroupProps struct { // Information about the destination where the raw data of this `ReportGroup` is exported. ExportConfig interface{} `json:"exportConfig" yaml:"exportConfig"` // The type of the `ReportGroup` . This can be one of the following values:. // // - **CODE_COVERAGE** - The report group contains code coverage reports. // - **TEST** - The report group contains test reports. Type *string `json:"type" yaml:"type"` // When deleting a report group, specifies if reports within the report group should be deleted. // // - **true** - Deletes any reports that belong to the report group before deleting the report group. // - **false** - You must delete any reports in the report group. This is the default value. If you delete a report group that contains one or more reports, an exception is thrown. DeleteReports interface{} `json:"deleteReports" yaml:"deleteReports"` // The name of the `ReportGroup` . Name *string `json:"name" yaml:"name"` // A list of tag key and value pairs associated with this report group. // // These tags are available for use by AWS services that support AWS CodeBuild report group tags. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` }
Properties for defining a `CfnReportGroup`.
TODO: EXAMPLE
type CfnReportGroup_ReportExportConfigProperty ¶
type CfnReportGroup_ReportExportConfigProperty struct { // The export configuration type. Valid values are:. // // - `S3` : The report results are exported to an S3 bucket. // - `NO_EXPORT` : The report results are not exported. ExportConfigType *string `json:"exportConfigType" yaml:"exportConfigType"` // A `S3ReportExportConfig` object that contains information about the S3 bucket where the run of a report is exported. S3Destination interface{} `json:"s3Destination" yaml:"s3Destination"` }
Information about the location where the run of a report is exported.
TODO: EXAMPLE
type CfnReportGroup_S3ReportExportConfigProperty ¶
type CfnReportGroup_S3ReportExportConfigProperty struct { // The name of the S3 bucket where the raw data of a report are exported. Bucket *string `json:"bucket" yaml:"bucket"` // The AWS account identifier of the owner of the Amazon S3 bucket. // // This allows report data to be exported to an Amazon S3 bucket that is owned by an account other than the account running the build. BucketOwner *string `json:"bucketOwner" yaml:"bucketOwner"` // A boolean value that specifies if the results of a report are encrypted. EncryptionDisabled interface{} `json:"encryptionDisabled" yaml:"encryptionDisabled"` // The encryption key for the report's encrypted raw data. EncryptionKey *string `json:"encryptionKey" yaml:"encryptionKey"` // The type of build output artifact to create. Valid values include:. // // - `NONE` : CodeBuild creates the raw data in the output bucket. This is the default if packaging is not specified. // - `ZIP` : CodeBuild creates a ZIP file with the raw data in the output bucket. Packaging *string `json:"packaging" yaml:"packaging"` // The path to the exported report's raw data results. Path *string `json:"path" yaml:"path"` }
Information about the S3 bucket where the raw data of a report are exported.
TODO: EXAMPLE
type CfnSourceCredential ¶
type CfnSourceCredential interface { awscdk.CfnResource awscdk.IInspectable AuthType() *string SetAuthType(val *string) CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string LogicalId() *string Node() constructs.Node Ref() *string ServerType() *string SetServerType(val *string) Stack() awscdk.Stack Token() *string SetToken(val *string) UpdatedProperites() *map[string]interface{} Username() *string SetUsername(val *string) AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CodeBuild::SourceCredential`.
Information about the credentials for a GitHub, GitHub Enterprise, or Bitbucket repository. We strongly recommend that you use AWS Secrets Manager to store your credentials. If you use Secrets Manager , you must have secrets in your secrets manager. For more information, see [Using Dynamic References to Specify Template Values](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#dynamic-references-secretsmanager) .
> For security purposes, do not use plain text in your AWS CloudFormation template to store your credentials.
TODO: EXAMPLE
func NewCfnSourceCredential ¶
func NewCfnSourceCredential(scope constructs.Construct, id *string, props *CfnSourceCredentialProps) CfnSourceCredential
Create a new `AWS::CodeBuild::SourceCredential`.
type CfnSourceCredentialProps ¶
type CfnSourceCredentialProps struct { // The type of authentication used by the credentials. // // Valid options are OAUTH, BASIC_AUTH, or PERSONAL_ACCESS_TOKEN. AuthType *string `json:"authType" yaml:"authType"` // The type of source provider. // // The valid options are GITHUB, GITHUB_ENTERPRISE, or BITBUCKET. ServerType *string `json:"serverType" yaml:"serverType"` // For GitHub or GitHub Enterprise, this is the personal access token. // // For Bitbucket, this is the app password. Token *string `json:"token" yaml:"token"` // The Bitbucket username when the `authType` is BASIC_AUTH. // // This parameter is not valid for other types of source providers or connections. Username *string `json:"username" yaml:"username"` }
Properties for defining a `CfnSourceCredential`.
TODO: EXAMPLE
type CloudWatchLoggingOptions ¶
type CloudWatchLoggingOptions struct { // The current status of the logs in Amazon CloudWatch Logs for a build project. Enabled *bool `json:"enabled" yaml:"enabled"` // The Log Group to send logs to. LogGroup awslogs.ILogGroup `json:"logGroup" yaml:"logGroup"` // The prefix of the stream name of the Amazon CloudWatch Logs. Prefix *string `json:"prefix" yaml:"prefix"` }
Information about logs built to a CloudWatch Log Group for a build project.
TODO: EXAMPLE
type CodeCommitSourceProps ¶
type CodeCommitSourceProps struct { // The source identifier. // // This property is required on secondary sources. Identifier *string `json:"identifier" yaml:"identifier"` Repository awscodecommit.IRepository `json:"repository" yaml:"repository"` // The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. // // TODO: EXAMPLE // BranchOrRef *string `json:"branchOrRef" yaml:"branchOrRef"` // The depth of history to download. // // Minimum value is 0. // If this value is 0, greater than 25, or not provided, // then the full history is downloaded with each build of the project. CloneDepth *float64 `json:"cloneDepth" yaml:"cloneDepth"` // Whether to fetch submodules while cloning git repo. FetchSubmodules *bool `json:"fetchSubmodules" yaml:"fetchSubmodules"` }
Construction properties for {@link CodeCommitSource}.
TODO: EXAMPLE
type CommonProjectProps ¶
type CommonProjectProps struct { // Whether to allow the CodeBuild to send all network traffic. // // If set to false, you must individually add traffic rules to allow the // CodeBuild project to connect to network targets. // // Only used if 'vpc' is supplied. AllowAllOutbound *bool `json:"allowAllOutbound" yaml:"allowAllOutbound"` // Indicates whether AWS CodeBuild generates a publicly accessible URL for your project's build badge. // // For more information, see Build Badges Sample // in the AWS CodeBuild User Guide. Badge *bool `json:"badge" yaml:"badge"` // Filename or contents of buildspec in JSON format. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-example // BuildSpec BuildSpec `json:"buildSpec" yaml:"buildSpec"` // Caching strategy to use. Cache Cache `json:"cache" yaml:"cache"` // Whether to check for the presence of any secrets in the environment variables of the default type, BuildEnvironmentVariableType.PLAINTEXT. Since using a secret for the value of that kind of variable would result in it being displayed in plain text in the AWS Console, the construct will throw an exception if it detects a secret was passed there. Pass this property as false if you want to skip this validation, and keep using a secret in a plain text environment variable. CheckSecretsInPlainTextEnvVariables *bool `json:"checkSecretsInPlainTextEnvVariables" yaml:"checkSecretsInPlainTextEnvVariables"` // Maximum number of concurrent builds. // // Minimum value is 1 and maximum is account build limit. ConcurrentBuildLimit *float64 `json:"concurrentBuildLimit" yaml:"concurrentBuildLimit"` // A description of the project. // // Use the description to identify the purpose // of the project. Description *string `json:"description" yaml:"description"` // Encryption key to use to read and write artifacts. EncryptionKey awskms.IKey `json:"encryptionKey" yaml:"encryptionKey"` // Build environment to use for the build. Environment *BuildEnvironment `json:"environment" yaml:"environment"` // Additional environment variables to add to the build environment. EnvironmentVariables *map[string]*BuildEnvironmentVariable `json:"environmentVariables" yaml:"environmentVariables"` // An ProjectFileSystemLocation objects for a CodeBuild build project. // // A ProjectFileSystemLocation object specifies the identifier, location, mountOptions, mountPoint, // and type of a file system created using Amazon Elastic File System. FileSystemLocations *[]IFileSystemLocation `json:"fileSystemLocations" yaml:"fileSystemLocations"` // Add permissions to this project's role to create and use test report groups with name starting with the name of this project. // // That is the standard report group that gets created when a simple name // (in contrast to an ARN) // is used in the 'reports' section of the buildspec of this project. // This is usually harmless, but you can turn these off if you don't plan on using test // reports in this project. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/test-report-group-naming.html // GrantReportGroupPermissions *bool `json:"grantReportGroupPermissions" yaml:"grantReportGroupPermissions"` // Information about logs for the build project. // // A project can create logs in Amazon CloudWatch Logs, an S3 bucket, or both. Logging *LoggingOptions `json:"logging" yaml:"logging"` // The physical, human-readable name of the CodeBuild Project. ProjectName *string `json:"projectName" yaml:"projectName"` // The number of minutes after which AWS CodeBuild stops the build if it's still in queue. // // For valid values, see the timeoutInMinutes field in the AWS // CodeBuild User Guide. QueuedTimeout awscdk.Duration `json:"queuedTimeout" yaml:"queuedTimeout"` // Service Role to assume while running the build. Role awsiam.IRole `json:"role" yaml:"role"` // What security group to associate with the codebuild project's network interfaces. // // If no security group is identified, one will be created automatically. // // Only used if 'vpc' is supplied. SecurityGroups *[]awsec2.ISecurityGroup `json:"securityGroups" yaml:"securityGroups"` // Where to place the network interfaces within the VPC. // // Only used if 'vpc' is supplied. SubnetSelection *awsec2.SubnetSelection `json:"subnetSelection" yaml:"subnetSelection"` // The number of minutes after which AWS CodeBuild stops the build if it's not complete. // // For valid values, see the timeoutInMinutes field in the AWS // CodeBuild User Guide. Timeout awscdk.Duration `json:"timeout" yaml:"timeout"` // VPC network to place codebuild network interfaces. // // Specify this if the codebuild project needs to access resources in a VPC. Vpc awsec2.IVpc `json:"vpc" yaml:"vpc"` }
TODO: EXAMPLE
type ComputeType ¶
type ComputeType string
Build machine compute type.
TODO: EXAMPLE
const ( ComputeType_SMALL ComputeType = "SMALL" ComputeType_MEDIUM ComputeType = "MEDIUM" ComputeType_LARGE ComputeType = "LARGE" ComputeType_X2_LARGE ComputeType = "X2_LARGE" )
type DockerImageOptions ¶
type DockerImageOptions struct { // The credentials, stored in Secrets Manager, used for accessing the repository holding the image, if the repository is private. SecretsManagerCredentials awssecretsmanager.ISecret `json:"secretsManagerCredentials" yaml:"secretsManagerCredentials"` }
The options when creating a CodeBuild Docker build image using {@link LinuxBuildImage.fromDockerRegistry} or {@link WindowsBuildImage.fromDockerRegistry}.
TODO: EXAMPLE
type EfsFileSystemLocationProps ¶
type EfsFileSystemLocationProps struct { // The name used to access a file system created by Amazon EFS. Identifier *string `json:"identifier" yaml:"identifier"` // A string that specifies the location of the file system, like Amazon EFS. // // This value looks like `fs-abcd1234.efs.us-west-2.amazonaws.com:/my-efs-mount-directory`. Location *string `json:"location" yaml:"location"` // The location in the container where you mount the file system. MountPoint *string `json:"mountPoint" yaml:"mountPoint"` // The mount options for a file system such as Amazon EFS. MountOptions *string `json:"mountOptions" yaml:"mountOptions"` }
Construction properties for {@link EfsFileSystemLocation}.
TODO: EXAMPLE
type EventAction ¶
type EventAction string
The types of webhook event actions.
TODO: EXAMPLE
const ( EventAction_PUSH EventAction = "PUSH" EventAction_PULL_REQUEST_CREATED EventAction = "PULL_REQUEST_CREATED" EventAction_PULL_REQUEST_UPDATED EventAction = "PULL_REQUEST_UPDATED" EventAction_PULL_REQUEST_MERGED EventAction = "PULL_REQUEST_MERGED" EventAction_PULL_REQUEST_REOPENED EventAction = "PULL_REQUEST_REOPENED" )
type FileSystemConfig ¶
type FileSystemConfig struct { // File system location wrapper property. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-projectfilesystemlocation.html // Location *CfnProject_ProjectFileSystemLocationProperty `json:"location" yaml:"location"` }
The type returned from {@link IFileSystemLocation#bind}.
TODO: EXAMPLE
type FileSystemLocation ¶
type FileSystemLocation interface { }
FileSystemLocation provider definition for a CodeBuild Project.
TODO: EXAMPLE
func NewFileSystemLocation ¶
func NewFileSystemLocation() FileSystemLocation
type FilterGroup ¶
type FilterGroup interface { AndActorAccountIs(pattern *string) FilterGroup AndActorAccountIsNot(pattern *string) FilterGroup AndBaseBranchIs(branchName *string) FilterGroup AndBaseBranchIsNot(branchName *string) FilterGroup AndBaseRefIs(pattern *string) FilterGroup AndBaseRefIsNot(pattern *string) FilterGroup AndBranchIs(branchName *string) FilterGroup AndBranchIsNot(branchName *string) FilterGroup AndCommitMessageIs(commitMessage *string) FilterGroup AndCommitMessageIsNot(commitMessage *string) FilterGroup AndFilePathIs(pattern *string) FilterGroup AndFilePathIsNot(pattern *string) FilterGroup AndHeadRefIs(pattern *string) FilterGroup AndHeadRefIsNot(pattern *string) FilterGroup AndTagIs(tagName *string) FilterGroup AndTagIsNot(tagName *string) FilterGroup }
An object that represents a group of filter conditions for a webhook.
Every condition in a given FilterGroup must be true in order for the whole group to be true. You construct instances of it by calling the {@link #inEventOf} static factory method, and then calling various `andXyz` instance methods to create modified instances of it (this class is immutable).
You pass instances of this class to the `webhookFilters` property when constructing a source.
TODO: EXAMPLE
func FilterGroup_InEventOf ¶
func FilterGroup_InEventOf(actions ...EventAction) FilterGroup
Creates a new event FilterGroup that triggers on any of the provided actions.
type GitHubEnterpriseSourceCredentials ¶
type GitHubEnterpriseSourceCredentials interface { awscdk.Resource Env() *awscdk.ResourceEnvironment Node() constructs.Node PhysicalName() *string Stack() awscdk.Stack ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string ToString() *string }
The source credentials used when contacting the GitHub Enterprise API.
**Note**: CodeBuild only allows a single credential for GitHub Enterprise to be saved in a given AWS account in a given region - any attempt to add more than one will result in an error.
TODO: EXAMPLE
func NewGitHubEnterpriseSourceCredentials ¶
func NewGitHubEnterpriseSourceCredentials(scope constructs.Construct, id *string, props *GitHubEnterpriseSourceCredentialsProps) GitHubEnterpriseSourceCredentials
type GitHubEnterpriseSourceCredentialsProps ¶
type GitHubEnterpriseSourceCredentialsProps struct {
// The personal access token to use when contacting the instance of the GitHub Enterprise API.
AccessToken awscdk.SecretValue `json:"accessToken" yaml:"accessToken"`
}
Creation properties for {@link GitHubEnterpriseSourceCredentials}.
TODO: EXAMPLE
type GitHubEnterpriseSourceProps ¶
type GitHubEnterpriseSourceProps struct { // The source identifier. // // This property is required on secondary sources. Identifier *string `json:"identifier" yaml:"identifier"` // The HTTPS URL of the repository in your GitHub Enterprise installation. HttpsCloneUrl *string `json:"httpsCloneUrl" yaml:"httpsCloneUrl"` // The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. // // TODO: EXAMPLE // BranchOrRef *string `json:"branchOrRef" yaml:"branchOrRef"` // The depth of history to download. // // Minimum value is 0. // If this value is 0, greater than 25, or not provided, // then the full history is downloaded with each build of the project. CloneDepth *float64 `json:"cloneDepth" yaml:"cloneDepth"` // Whether to fetch submodules while cloning git repo. FetchSubmodules *bool `json:"fetchSubmodules" yaml:"fetchSubmodules"` // Whether to ignore SSL errors when connecting to the repository. IgnoreSslErrors *bool `json:"ignoreSslErrors" yaml:"ignoreSslErrors"` // Whether to send notifications on your build's start and end. ReportBuildStatus *bool `json:"reportBuildStatus" yaml:"reportBuildStatus"` // Whether to create a webhook that will trigger a build every time an event happens in the repository. Webhook *bool `json:"webhook" yaml:"webhook"` // A list of webhook filters that can constraint what events in the repository will trigger a build. // // A build is triggered if any of the provided filter groups match. // Only valid if `webhook` was not provided as false. WebhookFilters *[]FilterGroup `json:"webhookFilters" yaml:"webhookFilters"` // Trigger a batch build from a webhook instead of a standard one. // // Enabling this will enable batch builds on the CodeBuild project. WebhookTriggersBatchBuild *bool `json:"webhookTriggersBatchBuild" yaml:"webhookTriggersBatchBuild"` }
Construction properties for {@link GitHubEnterpriseSource}.
TODO: EXAMPLE
type GitHubSourceCredentials ¶
type GitHubSourceCredentials interface { awscdk.Resource Env() *awscdk.ResourceEnvironment Node() constructs.Node PhysicalName() *string Stack() awscdk.Stack ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string ToString() *string }
The source credentials used when contacting the GitHub API.
**Note**: CodeBuild only allows a single credential for GitHub to be saved in a given AWS account in a given region - any attempt to add more than one will result in an error.
TODO: EXAMPLE
func NewGitHubSourceCredentials ¶
func NewGitHubSourceCredentials(scope constructs.Construct, id *string, props *GitHubSourceCredentialsProps) GitHubSourceCredentials
type GitHubSourceCredentialsProps ¶
type GitHubSourceCredentialsProps struct {
// The personal access token to use when contacting the GitHub API.
AccessToken awscdk.SecretValue `json:"accessToken" yaml:"accessToken"`
}
Creation properties for {@link GitHubSourceCredentials}.
TODO: EXAMPLE
type GitHubSourceProps ¶
type GitHubSourceProps struct { // The source identifier. // // This property is required on secondary sources. Identifier *string `json:"identifier" yaml:"identifier"` // The GitHub account/user that owns the repo. // // TODO: EXAMPLE // Owner *string `json:"owner" yaml:"owner"` // The name of the repo (without the username). // // TODO: EXAMPLE // Repo *string `json:"repo" yaml:"repo"` // The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. // // TODO: EXAMPLE // BranchOrRef *string `json:"branchOrRef" yaml:"branchOrRef"` // The depth of history to download. // // Minimum value is 0. // If this value is 0, greater than 25, or not provided, // then the full history is downloaded with each build of the project. CloneDepth *float64 `json:"cloneDepth" yaml:"cloneDepth"` // Whether to fetch submodules while cloning git repo. FetchSubmodules *bool `json:"fetchSubmodules" yaml:"fetchSubmodules"` // Whether to send notifications on your build's start and end. ReportBuildStatus *bool `json:"reportBuildStatus" yaml:"reportBuildStatus"` // Whether to create a webhook that will trigger a build every time an event happens in the repository. Webhook *bool `json:"webhook" yaml:"webhook"` // A list of webhook filters that can constraint what events in the repository will trigger a build. // // A build is triggered if any of the provided filter groups match. // Only valid if `webhook` was not provided as false. WebhookFilters *[]FilterGroup `json:"webhookFilters" yaml:"webhookFilters"` // Trigger a batch build from a webhook instead of a standard one. // // Enabling this will enable batch builds on the CodeBuild project. WebhookTriggersBatchBuild *bool `json:"webhookTriggersBatchBuild" yaml:"webhookTriggersBatchBuild"` }
Construction properties for {@link GitHubSource} and {@link GitHubEnterpriseSource}.
TODO: EXAMPLE
type IArtifacts ¶
type IArtifacts interface { // Callback when an Artifacts class is used in a CodeBuild Project. Bind(scope constructs.Construct, project IProject) *ArtifactsConfig // The artifact identifier. // // This property is required on secondary artifacts. Identifier() *string // The CodeBuild type of this artifact. Type() *string }
The abstract interface of a CodeBuild build output.
Implemented by {@link Artifacts}.
func Artifacts_S3 ¶
func Artifacts_S3(props *S3ArtifactsProps) IArtifacts
type IBindableBuildImage ¶
type IBindableBuildImage interface { IBuildImage // Function that allows the build image access to the construct tree. Bind(scope constructs.Construct, project IProject, options *BuildImageBindOptions) *BuildImageConfig }
A variant of {@link IBuildImage} that allows binding to the project.
type IBuildImage ¶
type IBuildImage interface { // Make a buildspec to run the indicated script. RunScriptBuildspec(entrypoint *string) BuildSpec // Allows the image a chance to validate whether the passed configuration is correct. Validate(buildEnvironment *BuildEnvironment) *[]*string // The default {@link ComputeType} to use with this image, if one was not specified in {@link BuildEnvironment#computeType} explicitly. DefaultComputeType() ComputeType // The Docker image identifier that the build environment uses. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html // ImageId() *string // The type of principal that CodeBuild will use to pull this build Docker image. ImagePullPrincipalType() ImagePullPrincipalType // An optional ECR repository that the image is hosted in. Repository() awsecr.IRepository // The secretsManagerCredentials for access to a private registry. SecretsManagerCredentials() awssecretsmanager.ISecret // The type of build environment. Type() *string }
Represents a Docker image used for the CodeBuild Project builds.
Use the concrete subclasses, either: {@link LinuxBuildImage} or {@link WindowsBuildImage}.
func LinuxBuildImage_AMAZON_LINUX_2 ¶
func LinuxBuildImage_AMAZON_LINUX_2() IBuildImage
func LinuxBuildImage_AMAZON_LINUX_2_2 ¶
func LinuxBuildImage_AMAZON_LINUX_2_2() IBuildImage
func LinuxBuildImage_AMAZON_LINUX_2_3 ¶
func LinuxBuildImage_AMAZON_LINUX_2_3() IBuildImage
func LinuxBuildImage_AMAZON_LINUX_2_ARM ¶
func LinuxBuildImage_AMAZON_LINUX_2_ARM() IBuildImage
func LinuxBuildImage_AMAZON_LINUX_2_ARM_2 ¶
func LinuxBuildImage_AMAZON_LINUX_2_ARM_2() IBuildImage
func LinuxBuildImage_FromAsset ¶
func LinuxBuildImage_FromAsset(scope constructs.Construct, id *string, props *awsecrassets.DockerImageAssetProps) IBuildImage
Uses an Docker image asset as a Linux build image.
func LinuxBuildImage_FromCodeBuildImageId ¶
func LinuxBuildImage_FromCodeBuildImageId(id *string) IBuildImage
Uses a Docker image provided by CodeBuild.
Returns: A Docker image provided by CodeBuild.
TODO: EXAMPLE
See: https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html
func LinuxBuildImage_FromDockerRegistry ¶
func LinuxBuildImage_FromDockerRegistry(name *string, options *DockerImageOptions) IBuildImage
Returns: a Linux build image from a Docker Hub image.
func LinuxBuildImage_FromEcrRepository ¶
func LinuxBuildImage_FromEcrRepository(repository awsecr.IRepository, tag *string) IBuildImage
Returns: A Linux build image from an ECR repository.
NOTE: if the repository is external (i.e. imported), then we won't be able to add a resource policy statement for it so CodeBuild can pull the image. See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-ecr.html
func LinuxBuildImage_STANDARD_1_0 ¶
func LinuxBuildImage_STANDARD_1_0() IBuildImage
func LinuxBuildImage_STANDARD_2_0 ¶
func LinuxBuildImage_STANDARD_2_0() IBuildImage
func LinuxBuildImage_STANDARD_3_0 ¶
func LinuxBuildImage_STANDARD_3_0() IBuildImage
func LinuxBuildImage_STANDARD_4_0 ¶
func LinuxBuildImage_STANDARD_4_0() IBuildImage
func LinuxBuildImage_STANDARD_5_0 ¶
func LinuxBuildImage_STANDARD_5_0() IBuildImage
func LinuxGpuBuildImage_AwsDeepLearningContainersImage ¶
func LinuxGpuBuildImage_AwsDeepLearningContainersImage(repositoryName *string, tag *string, account *string) IBuildImage
Returns a Linux GPU build image from AWS Deep Learning Containers. See: https://aws.amazon.com/releasenotes/available-deep-learning-containers-images
func LinuxGpuBuildImage_DLC_MXNET_1_4_1 ¶
func LinuxGpuBuildImage_DLC_MXNET_1_4_1() IBuildImage
func LinuxGpuBuildImage_DLC_MXNET_1_6_0 ¶
func LinuxGpuBuildImage_DLC_MXNET_1_6_0() IBuildImage
func LinuxGpuBuildImage_DLC_PYTORCH_1_2_0 ¶
func LinuxGpuBuildImage_DLC_PYTORCH_1_2_0() IBuildImage
func LinuxGpuBuildImage_DLC_PYTORCH_1_3_1 ¶
func LinuxGpuBuildImage_DLC_PYTORCH_1_3_1() IBuildImage
func LinuxGpuBuildImage_DLC_PYTORCH_1_4_0_INFERENCE ¶
func LinuxGpuBuildImage_DLC_PYTORCH_1_4_0_INFERENCE() IBuildImage
func LinuxGpuBuildImage_DLC_PYTORCH_1_4_0_TRAINING ¶
func LinuxGpuBuildImage_DLC_PYTORCH_1_4_0_TRAINING() IBuildImage
func LinuxGpuBuildImage_DLC_PYTORCH_1_5_0_INFERENCE ¶
func LinuxGpuBuildImage_DLC_PYTORCH_1_5_0_INFERENCE() IBuildImage
func LinuxGpuBuildImage_DLC_PYTORCH_1_5_0_TRAINING ¶
func LinuxGpuBuildImage_DLC_PYTORCH_1_5_0_TRAINING() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_1_14_0 ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_1_14_0() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_0 ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_0() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_2_INFERENCE ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_2_INFERENCE() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_2_TRAINING ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_1_15_2_TRAINING() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_0_0 ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_0_0() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_0_1 ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_0_1() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_1_0_INFERENCE ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_1_0_INFERENCE() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_1_0_TRAINING ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_1_0_TRAINING() IBuildImage
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_2_0_TRAINING ¶
func LinuxGpuBuildImage_DLC_TENSORFLOW_2_2_0_TRAINING() IBuildImage
func LinuxGpuBuildImage_FromEcrRepository ¶
func LinuxGpuBuildImage_FromEcrRepository(repository awsecr.IRepository, tag *string) IBuildImage
Returns a GPU image running Linux from an ECR repository.
NOTE: if the repository is external (i.e. imported), then we won't be able to add a resource policy statement for it so CodeBuild can pull the image. See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-ecr.html
func WindowsBuildImage_FromAsset ¶
func WindowsBuildImage_FromAsset(scope constructs.Construct, id *string, props *awsecrassets.DockerImageAssetProps, imageType WindowsImageType) IBuildImage
Uses an Docker image asset as a Windows build image.
func WindowsBuildImage_FromDockerRegistry ¶
func WindowsBuildImage_FromDockerRegistry(name *string, options *DockerImageOptions, imageType WindowsImageType) IBuildImage
Returns: a Windows build image from a Docker Hub image.
func WindowsBuildImage_FromEcrRepository ¶
func WindowsBuildImage_FromEcrRepository(repository awsecr.IRepository, tag *string, imageType WindowsImageType) IBuildImage
Returns: A Linux build image from an ECR repository.
NOTE: if the repository is external (i.e. imported), then we won't be able to add a resource policy statement for it so CodeBuild can pull the image. See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-ecr.html
func WindowsBuildImage_WINDOWS_BASE_2_0 ¶
func WindowsBuildImage_WINDOWS_BASE_2_0() IBuildImage
func WindowsBuildImage_WIN_SERVER_CORE_2019_BASE ¶
func WindowsBuildImage_WIN_SERVER_CORE_2019_BASE() IBuildImage
type IFileSystemLocation ¶
type IFileSystemLocation interface { // Called by the project when a file system is added so it can perform binding operations on this file system location. Bind(scope constructs.Construct, project IProject) *FileSystemConfig }
The interface of a CodeBuild FileSystemLocation.
Implemented by {@link EfsFileSystemLocation}.
func FileSystemLocation_Efs ¶
func FileSystemLocation_Efs(props *EfsFileSystemLocationProps) IFileSystemLocation
EFS file system provider.
type IProject ¶
type IProject interface { awsec2.IConnectable awsiam.IGrantable awscodestarnotifications.INotificationRuleSource awscdk.IResource AddToRolePolicy(policyStatement awsiam.PolicyStatement) // Enable batch builds. // // Returns an object contining the batch service role if batch builds // could be enabled. EnableBatchBuilds() *BatchBuildConfig // Returns: a CloudWatch metric associated with this build project. Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Measures the number of builds triggered. // // Units: Count // // Valid CloudWatch statistics: Sum MetricBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Measures the duration of all builds over time. // // Units: Seconds // // Valid CloudWatch statistics: Average (recommended), Maximum, Minimum MetricDuration(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Measures the number of builds that failed because of client error or because of a timeout. // // Units: Count // // Valid CloudWatch statistics: Sum MetricFailedBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Measures the number of successful builds. // // Units: Count // // Valid CloudWatch statistics: Sum MetricSucceededBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Defines a CodeStar Notification rule triggered when the project events emitted by you specified, it very similar to `onEvent` API. // // You can also use the methods `notifyOnBuildSucceeded` and // `notifyOnBuildFailed` to define rules for these specific event emitted. // // Returns: CodeStar Notifications rule associated with this build project. NotifyOn(id *string, target awscodestarnotifications.INotificationRuleTarget, options *ProjectNotifyOnOptions) awscodestarnotifications.INotificationRule // Defines a CodeStar notification rule which triggers when a build fails. NotifyOnBuildFailed(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule // Defines a CodeStar notification rule which triggers when a build completes successfully. NotifyOnBuildSucceeded(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule // Defines an event rule which triggers when a build fails. OnBuildFailed(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Defines an event rule which triggers when a build starts. OnBuildStarted(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Defines an event rule which triggers when a build completes successfully. OnBuildSucceeded(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Defines a CloudWatch event rule triggered when something happens with this project. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-build-notifications.html // OnEvent(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Defines a CloudWatch event rule that triggers upon phase change of this build project. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-build-notifications.html // OnPhaseChange(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Defines a CloudWatch event rule triggered when the build project state changes. // // You can filter specific build status events using an event // pattern filter on the `build-status` detail field: // // const rule = project.onStateChange('OnBuildStarted', { target }); // rule.addEventPattern({ // detail: { // 'build-status': [ // "IN_PROGRESS", // "SUCCEEDED", // "FAILED", // "STOPPED" // ] // } // }); // // You can also use the methods `onBuildFailed` and `onBuildSucceeded` to define rules for // these specific state changes. // // To access fields from the event in the event target input, // use the static fields on the `StateChangeEvent` class. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-build-notifications.html // OnStateChange(id *string, options *awsevents.OnEventOptions) awsevents.Rule // The ARN of this Project. ProjectArn() *string // The human-visible name of this Project. ProjectName() *string // The IAM service Role of this Project. // // Undefined for imported Projects. Role() awsiam.IRole }
func PipelineProject_FromProjectName ¶
func PipelineProject_FromProjectName(scope constructs.Construct, id *string, projectName *string) IProject
Import a Project defined either outside the CDK, or in a different CDK Stack (and exported using the {@link export} method).
Returns: a reference to the existing Project
func Project_FromProjectArn ¶
func Project_FromProjectName ¶
Import a Project defined either outside the CDK, or in a different CDK Stack (and exported using the {@link export} method).
Returns: a reference to the existing Project
type IReportGroup ¶
type IReportGroup interface { awscdk.IResource // Grants the given entity permissions to write (that is, upload reports to) this report group. GrantWrite(identity awsiam.IGrantable) awsiam.Grant // The ARN of the ReportGroup. ReportGroupArn() *string // The name of the ReportGroup. ReportGroupName() *string }
The interface representing the ReportGroup resource - either an existing one, imported using the {@link ReportGroup.fromReportGroupName} method, or a new one, created with the {@link ReportGroup} class.
func ReportGroup_FromReportGroupName ¶
func ReportGroup_FromReportGroupName(scope constructs.Construct, id *string, reportGroupName *string) IReportGroup
Reference an existing ReportGroup, defined outside of the CDK code, by name.
type ISource ¶
type ISource interface { Bind(scope constructs.Construct, project IProject) *SourceConfig BadgeSupported() *bool Identifier() *string Type() *string }
The abstract interface of a CodeBuild source.
Implemented by {@link Source}.
func Source_BitBucket ¶
func Source_BitBucket(props *BitBucketSourceProps) ISource
func Source_CodeCommit ¶
func Source_CodeCommit(props *CodeCommitSourceProps) ISource
func Source_GitHub ¶
func Source_GitHub(props *GitHubSourceProps) ISource
func Source_GitHubEnterprise ¶
func Source_GitHubEnterprise(props *GitHubEnterpriseSourceProps) ISource
func Source_S3 ¶
func Source_S3(props *S3SourceProps) ISource
type ImagePullPrincipalType ¶
type ImagePullPrincipalType string
The type of principal CodeBuild will use to pull your build Docker image.
const ( ImagePullPrincipalType_CODEBUILD ImagePullPrincipalType = "CODEBUILD" ImagePullPrincipalType_SERVICE_ROLE ImagePullPrincipalType = "SERVICE_ROLE" )
type LinuxBuildImage ¶
type LinuxBuildImage interface { IBuildImage DefaultComputeType() ComputeType ImageId() *string ImagePullPrincipalType() ImagePullPrincipalType Repository() awsecr.IRepository SecretsManagerCredentials() awssecretsmanager.ISecret Type() *string RunScriptBuildspec(entrypoint *string) BuildSpec Validate(_arg *BuildEnvironment) *[]*string }
A CodeBuild image running Linux.
This class has a bunch of public constants that represent the most popular images.
You can also specify a custom image using one of the static methods:
- LinuxBuildImage.fromDockerRegistry(image[, { secretsManagerCredentials }]) - LinuxBuildImage.fromEcrRepository(repo[, tag]) - LinuxBuildImage.fromAsset(parent, id, props)
TODO: EXAMPLE
See: https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html
type LinuxGpuBuildImage ¶
type LinuxGpuBuildImage interface { IBindableBuildImage DefaultComputeType() ComputeType ImageId() *string ImagePullPrincipalType() ImagePullPrincipalType Type() *string Bind(scope constructs.Construct, project IProject, _options *BuildImageBindOptions) *BuildImageConfig RunScriptBuildspec(entrypoint *string) BuildSpec Validate(buildEnvironment *BuildEnvironment) *[]*string }
A CodeBuild GPU image running Linux.
This class has public constants that represent the most popular GPU images from AWS Deep Learning Containers.
TODO: EXAMPLE
See: https://aws.amazon.com/releasenotes/available-deep-learning-containers-images
type LocalCacheMode ¶
type LocalCacheMode string
Local cache modes to enable for the CodeBuild Project.
TODO: EXAMPLE
const ( LocalCacheMode_SOURCE LocalCacheMode = "SOURCE" LocalCacheMode_DOCKER_LAYER LocalCacheMode = "DOCKER_LAYER" LocalCacheMode_CUSTOM LocalCacheMode = "CUSTOM" )
type LoggingOptions ¶
type LoggingOptions struct { // Information about Amazon CloudWatch Logs for a build project. CloudWatch *CloudWatchLoggingOptions `json:"cloudWatch" yaml:"cloudWatch"` // Information about logs built to an S3 bucket for a build project. S3 *S3LoggingOptions `json:"s3" yaml:"s3"` }
Information about logs for the build project.
A project can create logs in Amazon CloudWatch Logs, an S3 bucket, or both.
TODO: EXAMPLE
type PhaseChangeEvent ¶
type PhaseChangeEvent interface { }
Event fields for the CodeBuild "phase change" event. See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-build-notifications.html#sample-build-notifications-ref
type PipelineProject ¶
type PipelineProject interface { Project Connections() awsec2.Connections Env() *awscdk.ResourceEnvironment GrantPrincipal() awsiam.IPrincipal Node() constructs.Node PhysicalName() *string ProjectArn() *string ProjectName() *string Role() awsiam.IRole Stack() awscdk.Stack AddFileSystemLocation(fileSystemLocation IFileSystemLocation) AddSecondaryArtifact(secondaryArtifact IArtifacts) AddSecondarySource(secondarySource ISource) AddToRolePolicy(statement awsiam.PolicyStatement) ApplyRemovalPolicy(policy awscdk.RemovalPolicy) BindAsNotificationRuleSource(_scope constructs.Construct) *awscodestarnotifications.NotificationRuleSourceConfig BindToCodePipeline(_scope constructs.Construct, options *BindToCodePipelineOptions) EnableBatchBuilds() *BatchBuildConfig GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric MetricBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric MetricDuration(props *awscloudwatch.MetricOptions) awscloudwatch.Metric MetricFailedBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric MetricSucceededBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric NotifyOn(id *string, target awscodestarnotifications.INotificationRuleTarget, options *ProjectNotifyOnOptions) awscodestarnotifications.INotificationRule NotifyOnBuildFailed(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule NotifyOnBuildSucceeded(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule OnBuildFailed(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnBuildStarted(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnBuildSucceeded(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnEvent(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnPhaseChange(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnStateChange(id *string, options *awsevents.OnEventOptions) awsevents.Rule ToString() *string }
A convenience class for CodeBuild Projects that are used in CodePipeline.
TODO: EXAMPLE
func NewPipelineProject ¶
func NewPipelineProject(scope constructs.Construct, id *string, props *PipelineProjectProps) PipelineProject
type PipelineProjectProps ¶
type PipelineProjectProps struct { // Whether to allow the CodeBuild to send all network traffic. // // If set to false, you must individually add traffic rules to allow the // CodeBuild project to connect to network targets. // // Only used if 'vpc' is supplied. AllowAllOutbound *bool `json:"allowAllOutbound" yaml:"allowAllOutbound"` // Indicates whether AWS CodeBuild generates a publicly accessible URL for your project's build badge. // // For more information, see Build Badges Sample // in the AWS CodeBuild User Guide. Badge *bool `json:"badge" yaml:"badge"` // Filename or contents of buildspec in JSON format. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-example // BuildSpec BuildSpec `json:"buildSpec" yaml:"buildSpec"` // Caching strategy to use. Cache Cache `json:"cache" yaml:"cache"` // Whether to check for the presence of any secrets in the environment variables of the default type, BuildEnvironmentVariableType.PLAINTEXT. Since using a secret for the value of that kind of variable would result in it being displayed in plain text in the AWS Console, the construct will throw an exception if it detects a secret was passed there. Pass this property as false if you want to skip this validation, and keep using a secret in a plain text environment variable. CheckSecretsInPlainTextEnvVariables *bool `json:"checkSecretsInPlainTextEnvVariables" yaml:"checkSecretsInPlainTextEnvVariables"` // Maximum number of concurrent builds. // // Minimum value is 1 and maximum is account build limit. ConcurrentBuildLimit *float64 `json:"concurrentBuildLimit" yaml:"concurrentBuildLimit"` // A description of the project. // // Use the description to identify the purpose // of the project. Description *string `json:"description" yaml:"description"` // Encryption key to use to read and write artifacts. EncryptionKey awskms.IKey `json:"encryptionKey" yaml:"encryptionKey"` // Build environment to use for the build. Environment *BuildEnvironment `json:"environment" yaml:"environment"` // Additional environment variables to add to the build environment. EnvironmentVariables *map[string]*BuildEnvironmentVariable `json:"environmentVariables" yaml:"environmentVariables"` // An ProjectFileSystemLocation objects for a CodeBuild build project. // // A ProjectFileSystemLocation object specifies the identifier, location, mountOptions, mountPoint, // and type of a file system created using Amazon Elastic File System. FileSystemLocations *[]IFileSystemLocation `json:"fileSystemLocations" yaml:"fileSystemLocations"` // Add permissions to this project's role to create and use test report groups with name starting with the name of this project. // // That is the standard report group that gets created when a simple name // (in contrast to an ARN) // is used in the 'reports' section of the buildspec of this project. // This is usually harmless, but you can turn these off if you don't plan on using test // reports in this project. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/test-report-group-naming.html // GrantReportGroupPermissions *bool `json:"grantReportGroupPermissions" yaml:"grantReportGroupPermissions"` // Information about logs for the build project. // // A project can create logs in Amazon CloudWatch Logs, an S3 bucket, or both. Logging *LoggingOptions `json:"logging" yaml:"logging"` // The physical, human-readable name of the CodeBuild Project. ProjectName *string `json:"projectName" yaml:"projectName"` // The number of minutes after which AWS CodeBuild stops the build if it's still in queue. // // For valid values, see the timeoutInMinutes field in the AWS // CodeBuild User Guide. QueuedTimeout awscdk.Duration `json:"queuedTimeout" yaml:"queuedTimeout"` // Service Role to assume while running the build. Role awsiam.IRole `json:"role" yaml:"role"` // What security group to associate with the codebuild project's network interfaces. // // If no security group is identified, one will be created automatically. // // Only used if 'vpc' is supplied. SecurityGroups *[]awsec2.ISecurityGroup `json:"securityGroups" yaml:"securityGroups"` // Where to place the network interfaces within the VPC. // // Only used if 'vpc' is supplied. SubnetSelection *awsec2.SubnetSelection `json:"subnetSelection" yaml:"subnetSelection"` // The number of minutes after which AWS CodeBuild stops the build if it's not complete. // // For valid values, see the timeoutInMinutes field in the AWS // CodeBuild User Guide. Timeout awscdk.Duration `json:"timeout" yaml:"timeout"` // VPC network to place codebuild network interfaces. // // Specify this if the codebuild project needs to access resources in a VPC. Vpc awsec2.IVpc `json:"vpc" yaml:"vpc"` }
TODO: EXAMPLE
type Project ¶
type Project interface { awscdk.Resource IProject Connections() awsec2.Connections Env() *awscdk.ResourceEnvironment GrantPrincipal() awsiam.IPrincipal Node() constructs.Node PhysicalName() *string ProjectArn() *string ProjectName() *string Role() awsiam.IRole Stack() awscdk.Stack AddFileSystemLocation(fileSystemLocation IFileSystemLocation) AddSecondaryArtifact(secondaryArtifact IArtifacts) AddSecondarySource(secondarySource ISource) AddToRolePolicy(statement awsiam.PolicyStatement) ApplyRemovalPolicy(policy awscdk.RemovalPolicy) BindAsNotificationRuleSource(_scope constructs.Construct) *awscodestarnotifications.NotificationRuleSourceConfig BindToCodePipeline(_scope constructs.Construct, options *BindToCodePipelineOptions) EnableBatchBuilds() *BatchBuildConfig GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric MetricBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric MetricDuration(props *awscloudwatch.MetricOptions) awscloudwatch.Metric MetricFailedBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric MetricSucceededBuilds(props *awscloudwatch.MetricOptions) awscloudwatch.Metric NotifyOn(id *string, target awscodestarnotifications.INotificationRuleTarget, options *ProjectNotifyOnOptions) awscodestarnotifications.INotificationRule NotifyOnBuildFailed(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule NotifyOnBuildSucceeded(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule OnBuildFailed(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnBuildStarted(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnBuildSucceeded(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnEvent(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnPhaseChange(id *string, options *awsevents.OnEventOptions) awsevents.Rule OnStateChange(id *string, options *awsevents.OnEventOptions) awsevents.Rule ToString() *string }
A representation of a CodeBuild Project.
TODO: EXAMPLE
func NewProject ¶
func NewProject(scope constructs.Construct, id *string, props *ProjectProps) Project
type ProjectNotificationEvents ¶
type ProjectNotificationEvents string
The list of event types for AWS Codebuild. See: https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#events-ref-buildproject
const ( ProjectNotificationEvents_BUILD_FAILED ProjectNotificationEvents = "BUILD_FAILED" ProjectNotificationEvents_BUILD_SUCCEEDED ProjectNotificationEvents = "BUILD_SUCCEEDED" ProjectNotificationEvents_BUILD_IN_PROGRESS ProjectNotificationEvents = "BUILD_IN_PROGRESS" ProjectNotificationEvents_BUILD_STOPPED ProjectNotificationEvents = "BUILD_STOPPED" ProjectNotificationEvents_BUILD_PHASE_FAILED ProjectNotificationEvents = "BUILD_PHASE_FAILED" ProjectNotificationEvents_BUILD_PHASE_SUCCEEDED ProjectNotificationEvents = "BUILD_PHASE_SUCCEEDED" )
type ProjectNotifyOnOptions ¶
type ProjectNotifyOnOptions struct { // The level of detail to include in the notifications for this resource. // // BASIC will include only the contents of the event as it would appear in AWS CloudWatch. // FULL will include any supplemental information provided by AWS CodeStar Notifications and/or the service for the resource for which the notification is created. DetailType awscodestarnotifications.DetailType `json:"detailType" yaml:"detailType"` // The status of the notification rule. // // If the enabled is set to DISABLED, notifications aren't sent for the notification rule. Enabled *bool `json:"enabled" yaml:"enabled"` // The name for the notification rule. // // Notification rule names must be unique in your AWS account. NotificationRuleName *string `json:"notificationRuleName" yaml:"notificationRuleName"` // A list of event types associated with this notification rule for CodeBuild Project. // // For a complete list of event types and IDs, see Notification concepts in the Developer Tools Console User Guide. // See: https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#concepts-api // Events *[]ProjectNotificationEvents `json:"events" yaml:"events"` }
Additional options to pass to the notification rule.
TODO: EXAMPLE
type ProjectProps ¶
type ProjectProps struct { // Whether to allow the CodeBuild to send all network traffic. // // If set to false, you must individually add traffic rules to allow the // CodeBuild project to connect to network targets. // // Only used if 'vpc' is supplied. AllowAllOutbound *bool `json:"allowAllOutbound" yaml:"allowAllOutbound"` // Indicates whether AWS CodeBuild generates a publicly accessible URL for your project's build badge. // // For more information, see Build Badges Sample // in the AWS CodeBuild User Guide. Badge *bool `json:"badge" yaml:"badge"` // Filename or contents of buildspec in JSON format. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-example // BuildSpec BuildSpec `json:"buildSpec" yaml:"buildSpec"` // Caching strategy to use. Cache Cache `json:"cache" yaml:"cache"` // Whether to check for the presence of any secrets in the environment variables of the default type, BuildEnvironmentVariableType.PLAINTEXT. Since using a secret for the value of that kind of variable would result in it being displayed in plain text in the AWS Console, the construct will throw an exception if it detects a secret was passed there. Pass this property as false if you want to skip this validation, and keep using a secret in a plain text environment variable. CheckSecretsInPlainTextEnvVariables *bool `json:"checkSecretsInPlainTextEnvVariables" yaml:"checkSecretsInPlainTextEnvVariables"` // Maximum number of concurrent builds. // // Minimum value is 1 and maximum is account build limit. ConcurrentBuildLimit *float64 `json:"concurrentBuildLimit" yaml:"concurrentBuildLimit"` // A description of the project. // // Use the description to identify the purpose // of the project. Description *string `json:"description" yaml:"description"` // Encryption key to use to read and write artifacts. EncryptionKey awskms.IKey `json:"encryptionKey" yaml:"encryptionKey"` // Build environment to use for the build. Environment *BuildEnvironment `json:"environment" yaml:"environment"` // Additional environment variables to add to the build environment. EnvironmentVariables *map[string]*BuildEnvironmentVariable `json:"environmentVariables" yaml:"environmentVariables"` // An ProjectFileSystemLocation objects for a CodeBuild build project. // // A ProjectFileSystemLocation object specifies the identifier, location, mountOptions, mountPoint, // and type of a file system created using Amazon Elastic File System. FileSystemLocations *[]IFileSystemLocation `json:"fileSystemLocations" yaml:"fileSystemLocations"` // Add permissions to this project's role to create and use test report groups with name starting with the name of this project. // // That is the standard report group that gets created when a simple name // (in contrast to an ARN) // is used in the 'reports' section of the buildspec of this project. // This is usually harmless, but you can turn these off if you don't plan on using test // reports in this project. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/test-report-group-naming.html // GrantReportGroupPermissions *bool `json:"grantReportGroupPermissions" yaml:"grantReportGroupPermissions"` // Information about logs for the build project. // // A project can create logs in Amazon CloudWatch Logs, an S3 bucket, or both. Logging *LoggingOptions `json:"logging" yaml:"logging"` // The physical, human-readable name of the CodeBuild Project. ProjectName *string `json:"projectName" yaml:"projectName"` // The number of minutes after which AWS CodeBuild stops the build if it's still in queue. // // For valid values, see the timeoutInMinutes field in the AWS // CodeBuild User Guide. QueuedTimeout awscdk.Duration `json:"queuedTimeout" yaml:"queuedTimeout"` // Service Role to assume while running the build. Role awsiam.IRole `json:"role" yaml:"role"` // What security group to associate with the codebuild project's network interfaces. // // If no security group is identified, one will be created automatically. // // Only used if 'vpc' is supplied. SecurityGroups *[]awsec2.ISecurityGroup `json:"securityGroups" yaml:"securityGroups"` // Where to place the network interfaces within the VPC. // // Only used if 'vpc' is supplied. SubnetSelection *awsec2.SubnetSelection `json:"subnetSelection" yaml:"subnetSelection"` // The number of minutes after which AWS CodeBuild stops the build if it's not complete. // // For valid values, see the timeoutInMinutes field in the AWS // CodeBuild User Guide. Timeout awscdk.Duration `json:"timeout" yaml:"timeout"` // VPC network to place codebuild network interfaces. // // Specify this if the codebuild project needs to access resources in a VPC. Vpc awsec2.IVpc `json:"vpc" yaml:"vpc"` // Defines where build artifacts will be stored. // // Could be: PipelineBuildArtifacts, NoArtifacts and S3Artifacts. Artifacts IArtifacts `json:"artifacts" yaml:"artifacts"` // The secondary artifacts for the Project. // // Can also be added after the Project has been created by using the {@link Project#addSecondaryArtifact} method. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-multi-in-out.html // SecondaryArtifacts *[]IArtifacts `json:"secondaryArtifacts" yaml:"secondaryArtifacts"` // The secondary sources for the Project. // // Can be also added after the Project has been created by using the {@link Project#addSecondarySource} method. // See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-multi-in-out.html // SecondarySources *[]ISource `json:"secondarySources" yaml:"secondarySources"` // The source of the build. // // *Note*: if {@link NoSource} is given as the source, // then you need to provide an explicit `buildSpec`. Source ISource `json:"source" yaml:"source"` }
TODO: EXAMPLE
type ReportGroup ¶
type ReportGroup interface { awscdk.Resource IReportGroup Env() *awscdk.ResourceEnvironment ExportBucket() awss3.IBucket Node() constructs.Node PhysicalName() *string ReportGroupArn() *string ReportGroupName() *string Stack() awscdk.Stack ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string GrantWrite(identity awsiam.IGrantable) awsiam.Grant ToString() *string }
The ReportGroup resource class.
TODO: EXAMPLE
func NewReportGroup ¶
func NewReportGroup(scope constructs.Construct, id *string, props *ReportGroupProps) ReportGroup
type ReportGroupProps ¶
type ReportGroupProps struct { // An optional S3 bucket to export the reports to. ExportBucket awss3.IBucket `json:"exportBucket" yaml:"exportBucket"` // What to do when this resource is deleted from a stack. // // As CodeBuild does not allow deleting a ResourceGroup that has reports inside of it, // this is set to retain the resource by default. RemovalPolicy awscdk.RemovalPolicy `json:"removalPolicy" yaml:"removalPolicy"` // The physical name of the report group. ReportGroupName *string `json:"reportGroupName" yaml:"reportGroupName"` // Whether to output the report files into the export bucket as-is, or create a ZIP from them before doing the export. // // Ignored if {@link exportBucket} has not been provided. ZipExport *bool `json:"zipExport" yaml:"zipExport"` }
Construction properties for {@link ReportGroup}.
TODO: EXAMPLE
type S3ArtifactsProps ¶
type S3ArtifactsProps struct { // The artifact identifier. // // This property is required on secondary artifacts. Identifier *string `json:"identifier" yaml:"identifier"` // The name of the output bucket. Bucket awss3.IBucket `json:"bucket" yaml:"bucket"` // If this is false, build output will not be encrypted. // // This is useful if the artifact to publish a static website or sharing content with others Encryption *bool `json:"encryption" yaml:"encryption"` // Indicates if the build ID should be included in the path. // // If this is set to true, // then the build artifact will be stored in "<path>/<build-id>/<name>". IncludeBuildId *bool `json:"includeBuildId" yaml:"includeBuildId"` // The name of the build output ZIP file or folder inside the bucket. // // The full S3 object key will be "<path>/<build-id>/<name>" or // "<path>/<name>" depending on whether `includeBuildId` is set to true. // // If not set, `overrideArtifactName` will be set and the name from the // buildspec will be used instead. Name *string `json:"name" yaml:"name"` // If this is true, all build output will be packaged into a single .zip file. Otherwise, all files will be uploaded to <path>/<name>. PackageZip *bool `json:"packageZip" yaml:"packageZip"` // The path inside of the bucket for the build output .zip file or folder. If a value is not specified, then build output will be stored at the root of the bucket (or under the <build-id> directory if `includeBuildId` is set to true). Path *string `json:"path" yaml:"path"` }
Construction properties for {@link S3Artifacts}.
TODO: EXAMPLE
type S3LoggingOptions ¶
type S3LoggingOptions struct { // The S3 Bucket to send logs to. Bucket awss3.IBucket `json:"bucket" yaml:"bucket"` // The current status of the logs in Amazon CloudWatch Logs for a build project. Enabled *bool `json:"enabled" yaml:"enabled"` // Encrypt the S3 build log output. Encrypted *bool `json:"encrypted" yaml:"encrypted"` // The path prefix for S3 logs. Prefix *string `json:"prefix" yaml:"prefix"` }
Information about logs built to an S3 bucket for a build project.
TODO: EXAMPLE
type S3SourceProps ¶
type S3SourceProps struct { // The source identifier. // // This property is required on secondary sources. Identifier *string `json:"identifier" yaml:"identifier"` Bucket awss3.IBucket `json:"bucket" yaml:"bucket"` Path *string `json:"path" yaml:"path"` // The version ID of the object that represents the build input ZIP file to use. Version *string `json:"version" yaml:"version"` }
Construction properties for {@link S3Source}.
TODO: EXAMPLE
type Source ¶
type Source interface { ISource BadgeSupported() *bool Identifier() *string Type() *string Bind(_scope constructs.Construct, _project IProject) *SourceConfig }
Source provider definition for a CodeBuild Project.
TODO: EXAMPLE
type SourceConfig ¶
type SourceConfig struct { SourceProperty *CfnProject_SourceProperty `json:"sourceProperty" yaml:"sourceProperty"` BuildTriggers *CfnProject_ProjectTriggersProperty `json:"buildTriggers" yaml:"buildTriggers"` // `AWS::CodeBuild::Project.SourceVersion`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-sourceversion // SourceVersion *string `json:"sourceVersion" yaml:"sourceVersion"` }
The type returned from {@link ISource#bind}.
TODO: EXAMPLE
type SourceProps ¶
type SourceProps struct { // The source identifier. // // This property is required on secondary sources. Identifier *string `json:"identifier" yaml:"identifier"` }
Properties common to all Source classes.
TODO: EXAMPLE
type StateChangeEvent ¶
type StateChangeEvent interface { }
Event fields for the CodeBuild "state change" event. See: https://docs.aws.amazon.com/codebuild/latest/userguide/sample-build-notifications.html#sample-build-notifications-ref
type UntrustedCodeBoundaryPolicy ¶
type UntrustedCodeBoundaryPolicy interface { awsiam.ManagedPolicy Description() *string Document() awsiam.PolicyDocument Env() *awscdk.ResourceEnvironment ManagedPolicyArn() *string ManagedPolicyName() *string Node() constructs.Node Path() *string PhysicalName() *string Stack() awscdk.Stack AddStatements(statement ...awsiam.PolicyStatement) ApplyRemovalPolicy(policy awscdk.RemovalPolicy) AttachToGroup(group awsiam.IGroup) AttachToRole(role awsiam.IRole) AttachToUser(user awsiam.IUser) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string ToString() *string }
Permissions Boundary for a CodeBuild Project running untrusted code.
This class is a Policy, intended to be used as a Permissions Boundary for a CodeBuild project. It allows most of the actions necessary to run the CodeBuild project, but disallows reading from Parameter Store and Secrets Manager.
Use this when your CodeBuild project is running untrusted code (for example, if you are using one to automatically build Pull Requests that anyone can submit), and you want to prevent your future self from accidentally exposing Secrets to this build.
(The reason you might want to do this is because otherwise anyone who can submit a Pull Request to your project can write a script to email those secrets to themselves).
TODO: EXAMPLE
func NewUntrustedCodeBoundaryPolicy ¶
func NewUntrustedCodeBoundaryPolicy(scope constructs.Construct, id *string, props *UntrustedCodeBoundaryPolicyProps) UntrustedCodeBoundaryPolicy
type UntrustedCodeBoundaryPolicyProps ¶
type UntrustedCodeBoundaryPolicyProps struct { // Additional statements to add to the default set of statements. AdditionalStatements *[]awsiam.PolicyStatement `json:"additionalStatements" yaml:"additionalStatements"` // The name of the managed policy. ManagedPolicyName *string `json:"managedPolicyName" yaml:"managedPolicyName"` }
Construction properties for UntrustedCodeBoundaryPolicy.
TODO: EXAMPLE
type WindowsBuildImage ¶
type WindowsBuildImage interface { IBuildImage DefaultComputeType() ComputeType ImageId() *string ImagePullPrincipalType() ImagePullPrincipalType Repository() awsecr.IRepository SecretsManagerCredentials() awssecretsmanager.ISecret Type() *string RunScriptBuildspec(entrypoint *string) BuildSpec Validate(buildEnvironment *BuildEnvironment) *[]*string }
A CodeBuild image running Windows.
This class has a bunch of public constants that represent the most popular images.
You can also specify a custom image using one of the static methods:
- WindowsBuildImage.fromDockerRegistry(image[, { secretsManagerCredentials }, imageType]) - WindowsBuildImage.fromEcrRepository(repo[, tag, imageType]) - WindowsBuildImage.fromAsset(parent, id, props, [, imageType])
TODO: EXAMPLE
See: https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html
type WindowsImageType ¶
type WindowsImageType string
Environment type for Windows Docker images.
TODO: EXAMPLE
const ( WindowsImageType_STANDARD WindowsImageType = "STANDARD" WindowsImageType_SERVER_2019 WindowsImageType = "SERVER_2019" )