awscodepipeline

package
v2.14.0 Latest Latest
Warning

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

Go to latest
Published: Feb 25, 2022 License: Apache-2.0 Imports: 10 Imported by: 7

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CfnCustomActionType_CFN_RESOURCE_TYPE_NAME

func CfnCustomActionType_CFN_RESOURCE_TYPE_NAME() *string

func CfnCustomActionType_IsCfnElement

func CfnCustomActionType_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 CfnCustomActionType_IsCfnResource

func CfnCustomActionType_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCustomActionType_IsConstruct

func CfnCustomActionType_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 CfnPipeline_CFN_RESOURCE_TYPE_NAME

func CfnPipeline_CFN_RESOURCE_TYPE_NAME() *string

func CfnPipeline_IsCfnElement

func CfnPipeline_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 CfnPipeline_IsCfnResource

func CfnPipeline_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnPipeline_IsConstruct

func CfnPipeline_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 CfnWebhook_CFN_RESOURCE_TYPE_NAME

func CfnWebhook_CFN_RESOURCE_TYPE_NAME() *string

func CfnWebhook_IsCfnElement

func CfnWebhook_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 CfnWebhook_IsCfnResource

func CfnWebhook_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnWebhook_IsConstruct

func CfnWebhook_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 CustomActionRegistration_IsConstruct

func CustomActionRegistration_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 GlobalVariables_ExecutionId

func GlobalVariables_ExecutionId() *string

func NewAction_Override

func NewAction_Override(a Action)

func NewArtifactPath_Override

func NewArtifactPath_Override(a ArtifactPath, artifact Artifact, fileName *string)

func NewArtifact_Override

func NewArtifact_Override(a Artifact, artifactName *string)

func NewCfnCustomActionType_Override

func NewCfnCustomActionType_Override(c CfnCustomActionType, scope constructs.Construct, id *string, props *CfnCustomActionTypeProps)

Create a new `AWS::CodePipeline::CustomActionType`.

func NewCfnPipeline_Override

func NewCfnPipeline_Override(c CfnPipeline, scope constructs.Construct, id *string, props *CfnPipelineProps)

Create a new `AWS::CodePipeline::Pipeline`.

func NewCfnWebhook_Override

func NewCfnWebhook_Override(c CfnWebhook, scope constructs.Construct, id *string, props *CfnWebhookProps)

Create a new `AWS::CodePipeline::Webhook`.

func NewCustomActionRegistration_Override

func NewCustomActionRegistration_Override(c CustomActionRegistration, scope constructs.Construct, id *string, props *CustomActionRegistrationProps)

func NewGlobalVariables_Override

func NewGlobalVariables_Override(g GlobalVariables)

func NewPipeline_Override

func NewPipeline_Override(p Pipeline, scope constructs.Construct, id *string, props *PipelineProps)

func Pipeline_IsConstruct

func Pipeline_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 Pipeline_IsResource

func Pipeline_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

Types

type Action

type Action interface {
	IAction
	ActionProperties() *ActionProperties
	ProvidedActionProperties() *ActionProperties
	Bind(scope constructs.Construct, stage IStage, options *ActionBindOptions) *ActionConfig
	Bound(scope constructs.Construct, stage IStage, options *ActionBindOptions) *ActionConfig
	OnStateChange(name *string, target awsevents.IRuleTarget, options *awsevents.RuleProps) awsevents.Rule
	VariableExpression(variableName *string) *string
}

Low-level class for generic CodePipeline Actions implementing the {@link IAction} interface.

Contains some common logic that can be re-used by all {@link IAction} implementations. If you're writing your own Action class, feel free to extend this class.

type ActionArtifactBounds

type ActionArtifactBounds struct {
	MaxInputs  *float64 `json:"maxInputs" yaml:"maxInputs"`
	MaxOutputs *float64 `json:"maxOutputs" yaml:"maxOutputs"`
	MinInputs  *float64 `json:"minInputs" yaml:"minInputs"`
	MinOutputs *float64 `json:"minOutputs" yaml:"minOutputs"`
}

Specifies the constraints on the number of input and output artifacts an action can have.

The constraints for each action type are documented on the {@link https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html Pipeline Structure Reference} page.

TODO: EXAMPLE

type ActionBindOptions

type ActionBindOptions struct {
	Bucket awss3.IBucket `json:"bucket" yaml:"bucket"`
	Role   awsiam.IRole  `json:"role" yaml:"role"`
}

TODO: EXAMPLE

type ActionCategory

type ActionCategory string

TODO: EXAMPLE

const (
	ActionCategory_SOURCE   ActionCategory = "SOURCE"
	ActionCategory_BUILD    ActionCategory = "BUILD"
	ActionCategory_TEST     ActionCategory = "TEST"
	ActionCategory_APPROVAL ActionCategory = "APPROVAL"
	ActionCategory_DEPLOY   ActionCategory = "DEPLOY"
	ActionCategory_INVOKE   ActionCategory = "INVOKE"
)

type ActionConfig

type ActionConfig struct {
	Configuration interface{} `json:"configuration" yaml:"configuration"`
}

TODO: EXAMPLE

type ActionProperties

type ActionProperties struct {
	ActionName     *string               `json:"actionName" yaml:"actionName"`
	ArtifactBounds *ActionArtifactBounds `json:"artifactBounds" yaml:"artifactBounds"`
	// The category of the action.
	//
	// The category defines which action type the owner
	// (the entity that performs the action) performs.
	Category ActionCategory `json:"category" yaml:"category"`
	// The service provider that the action calls.
	Provider *string `json:"provider" yaml:"provider"`
	// The account the Action is supposed to live in.
	//
	// For Actions backed by resources,
	// this is inferred from the Stack {@link resource} is part of.
	// However, some Actions, like the CloudFormation ones,
	// are not backed by any resource, and they still might want to be cross-account.
	// In general, a concrete Action class should specify either {@link resource},
	// or {@link account} - but not both.
	Account *string     `json:"account" yaml:"account"`
	Inputs  *[]Artifact `json:"inputs" yaml:"inputs"`
	Outputs *[]Artifact `json:"outputs" yaml:"outputs"`
	Owner   *string     `json:"owner" yaml:"owner"`
	// The AWS region the given Action resides in.
	//
	// Note that a cross-region Pipeline requires replication buckets to function correctly.
	// You can provide their names with the {@link PipelineProps#crossRegionReplicationBuckets} property.
	// If you don't, the CodePipeline Construct will create new Stacks in your CDK app containing those buckets,
	// that you will need to `cdk deploy` before deploying the main, Pipeline-containing Stack.
	Region *string `json:"region" yaml:"region"`
	// The optional resource that is backing this Action.
	//
	// This is used for automatically handling Actions backed by
	// resources from a different account and/or region.
	Resource awscdk.IResource `json:"resource" yaml:"resource"`
	Role     awsiam.IRole     `json:"role" yaml:"role"`
	// The order in which AWS CodePipeline runs this action. For more information, see the AWS CodePipeline User Guide.
	//
	// https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements
	RunOrder *float64 `json:"runOrder" yaml:"runOrder"`
	// The name of the namespace to use for variables emitted by this action.
	VariablesNamespace *string `json:"variablesNamespace" yaml:"variablesNamespace"`
	Version            *string `json:"version" yaml:"version"`
}

TODO: EXAMPLE

type Artifact

type Artifact interface {
	ArtifactName() *string
	BucketName() *string
	ObjectKey() *string
	S3Location() *awss3.Location
	Url() *string
	AtPath(fileName *string) ArtifactPath
	GetMetadata(key *string) interface{}
	GetParam(jsonFile *string, keyName *string) *string
	SetMetadata(key *string, value interface{})
	ToString() *string
}

An output artifact of an action.

Artifacts can be used as input by some actions.

TODO: EXAMPLE

func Artifact_Artifact

func Artifact_Artifact(name *string) Artifact

A static factory method used to create instances of the Artifact class.

Mainly meant to be used from `decdk`.

func NewArtifact

func NewArtifact(artifactName *string) Artifact

type ArtifactPath

type ArtifactPath interface {
	Artifact() Artifact
	FileName() *string
	Location() *string
}

A specific file within an output artifact.

The most common use case for this is specifying the template file for a CloudFormation action.

TODO: EXAMPLE

func ArtifactPath_ArtifactPath

func ArtifactPath_ArtifactPath(artifactName *string, fileName *string) ArtifactPath

func NewArtifactPath

func NewArtifactPath(artifact Artifact, fileName *string) ArtifactPath

type CfnCustomActionType

type CfnCustomActionType interface {
	awscdk.CfnResource
	awscdk.IInspectable
	Category() *string
	SetCategory(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	ConfigurationProperties() interface{}
	SetConfigurationProperties(val interface{})
	CreationStack() *[]*string
	InputArtifactDetails() interface{}
	SetInputArtifactDetails(val interface{})
	LogicalId() *string
	Node() constructs.Node
	OutputArtifactDetails() interface{}
	SetOutputArtifactDetails(val interface{})
	Provider() *string
	SetProvider(val *string)
	Ref() *string
	Settings() interface{}
	SetSettings(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	Version() *string
	SetVersion(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::CodePipeline::CustomActionType`.

The `AWS::CodePipeline::CustomActionType` resource creates a custom action for activities that aren't included in the CodePipeline default actions, such as running an internally developed build process or a test suite. You can use these custom actions in the stage of a pipeline. For more information, see [Create and Add a Custom Action in AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-create-custom-action.html) in the *AWS CodePipeline User Guide* .

TODO: EXAMPLE

func NewCfnCustomActionType

func NewCfnCustomActionType(scope constructs.Construct, id *string, props *CfnCustomActionTypeProps) CfnCustomActionType

Create a new `AWS::CodePipeline::CustomActionType`.

type CfnCustomActionTypeProps

type CfnCustomActionTypeProps struct {
	// The category of the custom action, such as a build action or a test action.
	Category *string `json:"category" yaml:"category"`
	// The details of the input artifact for the action, such as its commit ID.
	InputArtifactDetails interface{} `json:"inputArtifactDetails" yaml:"inputArtifactDetails"`
	// The details of the output artifact of the action, such as its commit ID.
	OutputArtifactDetails interface{} `json:"outputArtifactDetails" yaml:"outputArtifactDetails"`
	// The provider of the service used in the custom action, such as CodeDeploy.
	Provider *string `json:"provider" yaml:"provider"`
	// The version identifier of the custom action.
	Version *string `json:"version" yaml:"version"`
	// The configuration properties for the custom action.
	//
	// > You can refer to a name in the configuration properties of the custom action within the URL templates by following the format of {Config:name}, as long as the configuration property is both required and not secret. For more information, see [Create a Custom Action for a Pipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-create-custom-action.html) .
	ConfigurationProperties interface{} `json:"configurationProperties" yaml:"configurationProperties"`
	// URLs that provide users information about this custom action.
	Settings interface{} `json:"settings" yaml:"settings"`
	// The tags for the custom action.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnCustomActionType`.

TODO: EXAMPLE

type CfnCustomActionType_ArtifactDetailsProperty

type CfnCustomActionType_ArtifactDetailsProperty struct {
	// The maximum number of artifacts allowed for the action type.
	MaximumCount *float64 `json:"maximumCount" yaml:"maximumCount"`
	// The minimum number of artifacts allowed for the action type.
	MinimumCount *float64 `json:"minimumCount" yaml:"minimumCount"`
}

Returns information about the details of an artifact.

TODO: EXAMPLE

type CfnCustomActionType_ConfigurationPropertiesProperty

type CfnCustomActionType_ConfigurationPropertiesProperty struct {
	// Whether the configuration property is a key.
	Key interface{} `json:"key" yaml:"key"`
	// The name of the action configuration property.
	Name *string `json:"name" yaml:"name"`
	// Whether the configuration property is a required value.
	Required interface{} `json:"required" yaml:"required"`
	// Whether the configuration property is secret.
	//
	// Secrets are hidden from all calls except for `GetJobDetails` , `GetThirdPartyJobDetails` , `PollForJobs` , and `PollForThirdPartyJobs` .
	//
	// When updating a pipeline, passing * * * * * without changing any other values of the action preserves the previous value of the secret.
	Secret interface{} `json:"secret" yaml:"secret"`
	// The description of the action configuration property that is displayed to users.
	Description *string `json:"description" yaml:"description"`
	// Indicates that the property is used with `PollForJobs` .
	//
	// When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret.
	//
	// If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to other restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.
	Queryable interface{} `json:"queryable" yaml:"queryable"`
	// The type of the configuration property.
	Type *string `json:"type" yaml:"type"`
}

The configuration properties for the custom action.

> You can refer to a name in the configuration properties of the custom action within the URL templates by following the format of {Config:name}, as long as the configuration property is both required and not secret. For more information, see [Create a Custom Action for a Pipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-create-custom-action.html) .

TODO: EXAMPLE

type CfnCustomActionType_SettingsProperty

type CfnCustomActionType_SettingsProperty struct {
	// The URL returned to the CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for a CodeDeploy deployment group.
	//
	// This link is provided as part of the action display in the pipeline.
	EntityUrlTemplate *string `json:"entityUrlTemplate" yaml:"entityUrlTemplate"`
	// The URL returned to the CodePipeline console that contains a link to the top-level landing page for the external system, such as the console page for CodeDeploy.
	//
	// This link is shown on the pipeline view page in the CodePipeline console and provides a link to the execution entity of the external action.
	ExecutionUrlTemplate *string `json:"executionUrlTemplate" yaml:"executionUrlTemplate"`
	// The URL returned to the CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.
	RevisionUrlTemplate *string `json:"revisionUrlTemplate" yaml:"revisionUrlTemplate"`
	// The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.
	ThirdPartyConfigurationUrl *string `json:"thirdPartyConfigurationUrl" yaml:"thirdPartyConfigurationUrl"`
}

`Settings` is a property of the `AWS::CodePipeline::CustomActionType` resource that provides URLs that users can access to view information about the CodePipeline custom action.

TODO: EXAMPLE

type CfnPipeline

type CfnPipeline interface {
	awscdk.CfnResource
	awscdk.IInspectable
	ArtifactStore() interface{}
	SetArtifactStore(val interface{})
	ArtifactStores() interface{}
	SetArtifactStores(val interface{})
	AttrVersion() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	DisableInboundStageTransitions() interface{}
	SetDisableInboundStageTransitions(val interface{})
	LogicalId() *string
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	Ref() *string
	RestartExecutionOnUpdate() interface{}
	SetRestartExecutionOnUpdate(val interface{})
	RoleArn() *string
	SetRoleArn(val *string)
	Stack() awscdk.Stack
	Stages() interface{}
	SetStages(val interface{})
	Tags() awscdk.TagManager
	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::CodePipeline::Pipeline`.

The `AWS::CodePipeline::Pipeline` resource creates a CodePipeline pipeline that describes how software changes go through a release process. For more information, see [What Is CodePipeline?](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) in the *AWS CodePipeline User Guide* .

TODO: EXAMPLE

func NewCfnPipeline

func NewCfnPipeline(scope constructs.Construct, id *string, props *CfnPipelineProps) CfnPipeline

Create a new `AWS::CodePipeline::Pipeline`.

type CfnPipelineProps

type CfnPipelineProps struct {
	// The Amazon Resource Name (ARN) for CodePipeline to use to either perform actions with no `actionRoleArn` , or to use to assume roles for actions with an `actionRoleArn` .
	RoleArn *string `json:"roleArn" yaml:"roleArn"`
	// Represents information about a stage and its definition.
	Stages interface{} `json:"stages" yaml:"stages"`
	// The S3 bucket where artifacts for the pipeline are stored.
	//
	// > You must include either `artifactStore` or `artifactStores` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use `artifactStores` .
	ArtifactStore interface{} `json:"artifactStore" yaml:"artifactStore"`
	// A mapping of `artifactStore` objects and their corresponding AWS Regions.
	//
	// There must be an artifact store for the pipeline Region and for each cross-region action in the pipeline.
	//
	// > You must include either `artifactStore` or `artifactStores` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use `artifactStores` .
	ArtifactStores interface{} `json:"artifactStores" yaml:"artifactStores"`
	// Represents the input of a `DisableStageTransition` action.
	DisableInboundStageTransitions interface{} `json:"disableInboundStageTransitions" yaml:"disableInboundStageTransitions"`
	// The name of the pipeline.
	Name *string `json:"name" yaml:"name"`
	// Indicates whether to rerun the CodePipeline pipeline after you update it.
	RestartExecutionOnUpdate interface{} `json:"restartExecutionOnUpdate" yaml:"restartExecutionOnUpdate"`
	// Specifies the tags applied to the pipeline.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnPipeline`.

TODO: EXAMPLE

type CfnPipeline_ActionDeclarationProperty

type CfnPipeline_ActionDeclarationProperty struct {
	// Specifies the action type and the provider of the action.
	ActionTypeId interface{} `json:"actionTypeId" yaml:"actionTypeId"`
	// The action declaration's name.
	Name *string `json:"name" yaml:"name"`
	// The action's configuration.
	//
	// These are key-value pairs that specify input values for an action. For more information, see [Action Structure Requirements in CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements) . For the list of configuration properties for the AWS CloudFormation action type in CodePipeline, see [Configuration Properties Reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/continuous-delivery-codepipeline-action-reference.html) in the *AWS CloudFormation User Guide* . For template snippets with examples, see [Using Parameter Override Functions with CodePipeline Pipelines](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/continuous-delivery-codepipeline-parameter-override-functions.html) in the *AWS CloudFormation User Guide* .
	//
	// The values can be represented in either JSON or YAML format. For example, the JSON configuration item format is as follows:
	//
	// *JSON:*
	//
	// `"Configuration" : { Key : Value },`
	Configuration interface{} `json:"configuration" yaml:"configuration"`
	// The name or ID of the artifact consumed by the action, such as a test or build artifact.
	//
	// > For a CodeBuild action with multiple input artifacts, one of your input sources must be designated the PrimarySource. For more information, see the [CodeBuild action reference page](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference-CodeBuild.html) in the *AWS CodePipeline User Guide* .
	InputArtifacts interface{} `json:"inputArtifacts" yaml:"inputArtifacts"`
	// The variable namespace associated with the action.
	//
	// All variables produced as output by this action fall under this namespace.
	Namespace *string `json:"namespace" yaml:"namespace"`
	// The name or ID of the result of the action declaration, such as a test or build artifact.
	OutputArtifacts interface{} `json:"outputArtifacts" yaml:"outputArtifacts"`
	// The action declaration's AWS Region, such as us-east-1.
	Region *string `json:"region" yaml:"region"`
	// The ARN of the IAM service role that performs the declared action.
	//
	// This is assumed through the roleArn for the pipeline.
	RoleArn *string `json:"roleArn" yaml:"roleArn"`
	// The order in which actions are run.
	RunOrder *float64 `json:"runOrder" yaml:"runOrder"`
}

Represents information about an action declaration.

TODO: EXAMPLE

type CfnPipeline_ActionTypeIdProperty

type CfnPipeline_ActionTypeIdProperty struct {
	// A category defines what kind of action can be taken in the stage, and constrains the provider type for the action.
	//
	// Valid categories are limited to one of the values below.
	//
	// - `Source`
	// - `Build`
	// - `Test`
	// - `Deploy`
	// - `Invoke`
	// - `Approval`
	Category *string `json:"category" yaml:"category"`
	// The creator of the action being called.
	//
	// There are three valid values for the `Owner` field in the action category section within your pipeline structure: `AWS` , `ThirdParty` , and `Custom` . For more information, see [Valid Action Types and Providers in CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#actions-valid-providers) .
	Owner *string `json:"owner" yaml:"owner"`
	// The provider of the service being called by the action.
	//
	// Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of CodeDeploy, which would be specified as `CodeDeploy` . For more information, see [Valid Action Types and Providers in CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#actions-valid-providers) .
	Provider *string `json:"provider" yaml:"provider"`
	// A string that describes the action version.
	Version *string `json:"version" yaml:"version"`
}

Represents information about an action type.

TODO: EXAMPLE

type CfnPipeline_ArtifactStoreMapProperty

type CfnPipeline_ArtifactStoreMapProperty struct {
	// Represents information about the S3 bucket where artifacts are stored for the pipeline.
	//
	// > You must include either `artifactStore` or `artifactStores` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use `artifactStores` .
	ArtifactStore interface{} `json:"artifactStore" yaml:"artifactStore"`
	// The action declaration's AWS Region, such as us-east-1.
	Region *string `json:"region" yaml:"region"`
}

A mapping of `artifactStore` objects and their corresponding AWS Regions.

There must be an artifact store for the pipeline Region and for each cross-region action in the pipeline.

> You must include either `artifactStore` or `artifactStores` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use `artifactStores` .

TODO: EXAMPLE

type CfnPipeline_ArtifactStoreProperty

type CfnPipeline_ArtifactStoreProperty struct {
	// The S3 bucket used for storing the artifacts for a pipeline.
	//
	// You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.
	Location *string `json:"location" yaml:"location"`
	// The type of the artifact store, such as S3.
	Type *string `json:"type" yaml:"type"`
	// The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service ( AWS KMS) key.
	//
	// If this is undefined, the default key for Amazon S3 is used. To see an example artifact store encryption key field, see the example structure here: [AWS::CodePipeline::Pipeline](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html) .
	EncryptionKey interface{} `json:"encryptionKey" yaml:"encryptionKey"`
}

The S3 bucket where artifacts for the pipeline are stored.

> You must include either `artifactStore` or `artifactStores` in your pipeline, but you cannot use both. If you create a cross-region action in your pipeline, you must use `artifactStores` .

TODO: EXAMPLE

type CfnPipeline_BlockerDeclarationProperty

type CfnPipeline_BlockerDeclarationProperty struct {
	// Reserved for future use.
	Name *string `json:"name" yaml:"name"`
	// Reserved for future use.
	Type *string `json:"type" yaml:"type"`
}

Reserved for future use.

TODO: EXAMPLE

type CfnPipeline_EncryptionKeyProperty

type CfnPipeline_EncryptionKeyProperty struct {
	// The ID used to identify the key.
	//
	// For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.
	//
	// > Aliases are recognized only in the account that created the AWS KMS key. For cross-account actions, you can only use the key ID or key ARN to identify the key.
	Id *string `json:"id" yaml:"id"`
	// The type of encryption key, such as an AWS KMS key.
	//
	// When creating or updating a pipeline, the value must be set to 'KMS'.
	Type *string `json:"type" yaml:"type"`
}

Represents information about the key used to encrypt data in the artifact store, such as an AWS Key Management Service ( AWS KMS) key.

`EncryptionKey` is a property of the [ArtifactStore](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html) property type.

TODO: EXAMPLE

type CfnPipeline_InputArtifactProperty

type CfnPipeline_InputArtifactProperty struct {
	// The name of the artifact to be worked on (for example, "My App").
	//
	// The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.
	Name *string `json:"name" yaml:"name"`
}

Represents information about an artifact to be worked on, such as a test or build artifact.

TODO: EXAMPLE

type CfnPipeline_OutputArtifactProperty

type CfnPipeline_OutputArtifactProperty struct {
	// The name of the output of an artifact, such as "My App".
	//
	// The output artifact name must exactly match the input artifact declared for a downstream action. However, the downstream action's input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.
	//
	// Output artifact names must be unique within a pipeline.
	Name *string `json:"name" yaml:"name"`
}

Represents information about the output of an action.

TODO: EXAMPLE

type CfnPipeline_StageDeclarationProperty

type CfnPipeline_StageDeclarationProperty struct {
	// The actions included in a stage.
	Actions interface{} `json:"actions" yaml:"actions"`
	// The name of the stage.
	Name *string `json:"name" yaml:"name"`
	// Reserved for future use.
	Blockers interface{} `json:"blockers" yaml:"blockers"`
}

Represents information about a stage and its definition.

TODO: EXAMPLE

type CfnPipeline_StageTransitionProperty

type CfnPipeline_StageTransitionProperty struct {
	// The reason given to the user that a stage is disabled, such as waiting for manual approval or manual tests.
	//
	// This message is displayed in the pipeline console UI.
	Reason *string `json:"reason" yaml:"reason"`
	// The name of the stage where you want to disable the inbound or outbound transition of artifacts.
	StageName *string `json:"stageName" yaml:"stageName"`
}

The name of the pipeline in which you want to disable the flow of artifacts from one stage to another.

TODO: EXAMPLE

type CfnWebhook

type CfnWebhook interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrUrl() *string
	Authentication() *string
	SetAuthentication(val *string)
	AuthenticationConfiguration() interface{}
	SetAuthenticationConfiguration(val interface{})
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	Filters() interface{}
	SetFilters(val interface{})
	LogicalId() *string
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	Ref() *string
	RegisterWithThirdParty() interface{}
	SetRegisterWithThirdParty(val interface{})
	Stack() awscdk.Stack
	TargetAction() *string
	SetTargetAction(val *string)
	TargetPipeline() *string
	SetTargetPipeline(val *string)
	TargetPipelineVersion() *float64
	SetTargetPipelineVersion(val *float64)
	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::CodePipeline::Webhook`.

The `AWS::CodePipeline::Webhook` resource creates and registers your webhook. After the webhook is created and registered, it triggers your pipeline to start every time an external event occurs. For more information, see [Configure Your GitHub Pipelines to Use Webhooks for Change Detection](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipelines-webhooks-migration.html) in the *AWS CodePipeline User Guide* .

We strongly recommend that you use AWS Secrets Manager to store your credentials. If you use Secrets Manager, you must have already configured and stored your secret parameters in 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) .

> When passing secret parameters, do not enter the value directly into the template. The value is rendered as plaintext and is therefore readable. For security reasons, do not use plaintext in your AWS CloudFormation template to store your credentials.

TODO: EXAMPLE

func NewCfnWebhook

func NewCfnWebhook(scope constructs.Construct, id *string, props *CfnWebhookProps) CfnWebhook

Create a new `AWS::CodePipeline::Webhook`.

type CfnWebhookProps

type CfnWebhookProps struct {
	// Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.
	//
	// - For information about the authentication scheme implemented by GITHUB_HMAC, see [Securing your webhooks](https://docs.aws.amazon.com/https://developer.github.com/webhooks/securing/) on the GitHub Developer website.
	// - IP rejects webhooks trigger requests unless they originate from an IP address in the IP range whitelisted in the authentication configuration.
	// - UNAUTHENTICATED accepts all webhook trigger requests regardless of origin.
	Authentication *string `json:"authentication" yaml:"authentication"`
	// Properties that configure the authentication applied to incoming webhook trigger requests.
	//
	// The required properties depend on the authentication type. For GITHUB_HMAC, only the `SecretToken` property must be set. For IP, only the `AllowedIPRange` property must be set to a valid CIDR range. For UNAUTHENTICATED, no properties can be set.
	AuthenticationConfiguration interface{} `json:"authenticationConfiguration" yaml:"authenticationConfiguration"`
	// A list of rules applied to the body/payload sent in the POST request to a webhook URL.
	//
	// All defined rules must pass for the request to be accepted and the pipeline started.
	Filters interface{} `json:"filters" yaml:"filters"`
	// The name of the action in a pipeline you want to connect to the webhook.
	//
	// The action must be from the source (first) stage of the pipeline.
	TargetAction *string `json:"targetAction" yaml:"targetAction"`
	// The name of the pipeline you want to connect to the webhook.
	TargetPipeline *string `json:"targetPipeline" yaml:"targetPipeline"`
	// The version number of the pipeline to be connected to the trigger request.
	//
	// Required: Yes
	//
	// Type: Integer
	//
	// Update requires: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
	TargetPipelineVersion *float64 `json:"targetPipelineVersion" yaml:"targetPipelineVersion"`
	// The name of the webhook.
	Name *string `json:"name" yaml:"name"`
	// Configures a connection between the webhook that was created and the external tool with events to be detected.
	RegisterWithThirdParty interface{} `json:"registerWithThirdParty" yaml:"registerWithThirdParty"`
}

Properties for defining a `CfnWebhook`.

TODO: EXAMPLE

type CfnWebhook_WebhookAuthConfigurationProperty

type CfnWebhook_WebhookAuthConfigurationProperty struct {
	// The property used to configure acceptance of webhooks in an IP address range.
	//
	// For IP, only the `AllowedIPRange` property must be set. This property must be set to a valid CIDR range.
	AllowedIpRange *string `json:"allowedIpRange" yaml:"allowedIpRange"`
	// The property used to configure GitHub authentication.
	//
	// For GITHUB_HMAC, only the `SecretToken` property must be set.
	SecretToken *string `json:"secretToken" yaml:"secretToken"`
}

The authentication applied to incoming webhook trigger requests.

TODO: EXAMPLE

type CfnWebhook_WebhookFilterRuleProperty

type CfnWebhook_WebhookFilterRuleProperty struct {
	// A JsonPath expression that is applied to the body/payload of the webhook.
	//
	// The value selected by the JsonPath expression must match the value specified in the `MatchEquals` field. Otherwise, the request is ignored. For more information, see [Java JsonPath implementation](https://docs.aws.amazon.com/https://github.com/json-path/JsonPath) in GitHub.
	JsonPath *string `json:"jsonPath" yaml:"jsonPath"`
	// The value selected by the `JsonPath` expression must match what is supplied in the `MatchEquals` field.
	//
	// Otherwise, the request is ignored. Properties from the target action configuration can be included as placeholders in this value by surrounding the action configuration key with curly brackets. For example, if the value supplied here is "refs/heads/{Branch}" and the target action has an action configuration property called "Branch" with a value of "main", the `MatchEquals` value is evaluated as "refs/heads/main". For a list of action configuration properties for built-in action types, see [Pipeline Structure Reference Action Requirements](https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements) .
	MatchEquals *string `json:"matchEquals" yaml:"matchEquals"`
}

The event criteria that specify when a webhook notification is sent to your URL.

TODO: EXAMPLE

type CommonActionProps

type CommonActionProps struct {
	// The physical, human-readable name of the Action.
	//
	// Note that Action names must be unique within a single Stage.
	ActionName *string `json:"actionName" yaml:"actionName"`
	// The runOrder property for this Action.
	//
	// RunOrder determines the relative order in which multiple Actions in the same Stage execute.
	// See: https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html
	//
	RunOrder *float64 `json:"runOrder" yaml:"runOrder"`
	// The name of the namespace to use for variables emitted by this action.
	VariablesNamespace *string `json:"variablesNamespace" yaml:"variablesNamespace"`
}

Common properties shared by all Actions.

TODO: EXAMPLE

type CommonAwsActionProps

type CommonAwsActionProps struct {
	// The physical, human-readable name of the Action.
	//
	// Note that Action names must be unique within a single Stage.
	ActionName *string `json:"actionName" yaml:"actionName"`
	// The runOrder property for this Action.
	//
	// RunOrder determines the relative order in which multiple Actions in the same Stage execute.
	// See: https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html
	//
	RunOrder *float64 `json:"runOrder" yaml:"runOrder"`
	// The name of the namespace to use for variables emitted by this action.
	VariablesNamespace *string `json:"variablesNamespace" yaml:"variablesNamespace"`
	// The Role in which context's this Action will be executing in.
	//
	// The Pipeline's Role will assume this Role
	// (the required permissions for that will be granted automatically)
	// right before executing this Action.
	// This Action will be passed into your {@link IAction.bind}
	// method in the {@link ActionBindOptions.role} property.
	Role awsiam.IRole `json:"role" yaml:"role"`
}

Common properties shared by all Actions whose {@link ActionProperties.owner} field is 'AWS' (or unset, as 'AWS' is the default).

TODO: EXAMPLE

type CrossRegionSupport

type CrossRegionSupport struct {
	// The replication Bucket used by CodePipeline to operate in this region.
	//
	// Belongs to {@link stack}.
	ReplicationBucket awss3.IBucket `json:"replicationBucket" yaml:"replicationBucket"`
	// The Stack that has been created to house the replication Bucket required for this  region.
	Stack awscdk.Stack `json:"stack" yaml:"stack"`
}

An interface representing resources generated in order to support the cross-region capabilities of CodePipeline.

You get instances of this interface from the {@link Pipeline#crossRegionSupport} property.

TODO: EXAMPLE

type CustomActionProperty

type CustomActionProperty struct {
	// The name of the property.
	//
	// You use this name in the `configuration` attribute when defining your custom Action class.
	Name *string `json:"name" yaml:"name"`
	// Whether this property is required.
	Required *bool `json:"required" yaml:"required"`
	// The description of the property.
	Description *string `json:"description" yaml:"description"`
	// Whether this property is a key.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-key
	//
	Key *bool `json:"key" yaml:"key"`
	// Whether this property is queryable.
	//
	// Note that only a single property of a custom Action can be queryable.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-queryable
	//
	Queryable *bool `json:"queryable" yaml:"queryable"`
	// Whether this property is secret, like a password, or access key.
	Secret *bool `json:"secret" yaml:"secret"`
	// The type of the property, like 'String', 'Number', or 'Boolean'.
	Type *string `json:"type" yaml:"type"`
}

The creation attributes used for defining a configuration property of a custom Action.

TODO: EXAMPLE

type CustomActionRegistration

type CustomActionRegistration interface {
	constructs.Construct
	Node() constructs.Node
	ToString() *string
}

The resource representing registering a custom Action with CodePipeline.

For the Action to be usable, it has to be registered for every region and every account it's used in. In addition to this class, you should most likely also provide your clients a class representing your custom Action, extending the Action class, and taking the `actionProperties` as properly typed, construction properties.

TODO: EXAMPLE

func NewCustomActionRegistration

func NewCustomActionRegistration(scope constructs.Construct, id *string, props *CustomActionRegistrationProps) CustomActionRegistration

type CustomActionRegistrationProps

type CustomActionRegistrationProps struct {
	// The artifact bounds of the Action.
	ArtifactBounds *ActionArtifactBounds `json:"artifactBounds" yaml:"artifactBounds"`
	// The category of the Action.
	Category ActionCategory `json:"category" yaml:"category"`
	// The provider of the Action.
	//
	// For example, `'MyCustomActionProvider'`
	Provider *string `json:"provider" yaml:"provider"`
	// The properties used for customizing the instance of your Action.
	ActionProperties *[]*CustomActionProperty `json:"actionProperties" yaml:"actionProperties"`
	// The URL shown for the entire Action in the Pipeline UI.
	EntityUrl *string `json:"entityUrl" yaml:"entityUrl"`
	// The URL shown for a particular execution of an Action in the Pipeline UI.
	ExecutionUrl *string `json:"executionUrl" yaml:"executionUrl"`
	// The version of your Action.
	Version *string `json:"version" yaml:"version"`
}

Properties of registering a custom Action.

TODO: EXAMPLE

type GlobalVariables

type GlobalVariables interface {
}

The CodePipeline variables that are global, not bound to a specific action.

This class defines a bunch of static fields that represent the different variables. These can be used can be used in any action configuration.

TODO: EXAMPLE

func NewGlobalVariables

func NewGlobalVariables() GlobalVariables

type IAction

type IAction interface {
	// The callback invoked when this Action is added to a Pipeline.
	Bind(scope constructs.Construct, stage IStage, options *ActionBindOptions) *ActionConfig
	// Creates an Event that will be triggered whenever the state of this Action changes.
	OnStateChange(name *string, target awsevents.IRuleTarget, options *awsevents.RuleProps) awsevents.Rule
	// The simple properties of the Action, like its Owner, name, etc.
	//
	// Note that this accessor will be called before the {@link bind} callback.
	ActionProperties() *ActionProperties
}

A Pipeline Action.

If you want to implement this interface, consider extending the {@link Action} class, which contains some common logic.

type IPipeline

type IPipeline interface {
	awscodestarnotifications.INotificationRuleSource
	awscdk.IResource
	// Defines a CodeStar notification rule triggered when the pipeline events emitted by you specified, it very similar to `onEvent` API.
	//
	// You can also use the methods `notifyOnExecutionStateChange`, `notifyOnAnyStageStateChange`,
	// `notifyOnAnyActionStateChange` and `notifyOnAnyManualApprovalStateChange`
	// to define rules for these specific event emitted.
	//
	// Returns: CodeStar notification rule associated with this build project.
	NotifyOn(id *string, target awscodestarnotifications.INotificationRuleTarget, options *PipelineNotifyOnOptions) awscodestarnotifications.INotificationRule
	// Define an notification rule triggered by the set of the "Action execution" events emitted from this pipeline.
	// See: https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#events-ref-pipeline
	//
	NotifyOnAnyActionStateChange(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule
	// Define an notification rule triggered by the set of the "Manual approval" events emitted from this pipeline.
	// See: https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#events-ref-pipeline
	//
	NotifyOnAnyManualApprovalStateChange(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule
	// Define an notification rule triggered by the set of the "Stage execution" events emitted from this pipeline.
	// See: https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#events-ref-pipeline
	//
	NotifyOnAnyStageStateChange(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule
	// Define an notification rule triggered by the set of the "Pipeline execution" events emitted from this pipeline.
	// See: https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#events-ref-pipeline
	//
	NotifyOnExecutionStateChange(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule
	// Define an event rule triggered by this CodePipeline.
	OnEvent(id *string, options *awsevents.OnEventOptions) awsevents.Rule
	// Define an event rule triggered by the "CodePipeline Pipeline Execution State Change" event emitted from this pipeline.
	OnStateChange(id *string, options *awsevents.OnEventOptions) awsevents.Rule
	// The ARN of the Pipeline.
	PipelineArn() *string
	// The name of the Pipeline.
	PipelineName() *string
}

The abstract view of an AWS CodePipeline as required and used by Actions.

It extends {@link events.IRuleTarget}, so this interface can be used as a Target for CloudWatch Events.

func Pipeline_FromPipelineArn

func Pipeline_FromPipelineArn(scope constructs.Construct, id *string, pipelineArn *string) IPipeline

Import a pipeline into this app.

type IStage

type IStage interface {
	AddAction(action IAction)
	OnStateChange(name *string, target awsevents.IRuleTarget, options *awsevents.RuleProps) awsevents.Rule
	// The actions belonging to this stage.
	Actions() *[]IAction
	Pipeline() IPipeline
	// The physical, human-readable name of this Pipeline Stage.
	StageName() *string
}

The abstract interface of a Pipeline Stage that is used by Actions.

type Pipeline

type Pipeline interface {
	awscdk.Resource
	IPipeline
	ArtifactBucket() awss3.IBucket
	CrossRegionSupport() *map[string]*CrossRegionSupport
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	PipelineArn() *string
	PipelineName() *string
	PipelineVersion() *string
	Role() awsiam.IRole
	Stack() awscdk.Stack
	StageCount() *float64
	Stages() *[]IStage
	AddStage(props *StageOptions) IStage
	AddToRolePolicy(statement awsiam.PolicyStatement)
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	BindAsNotificationRuleSource(_scope constructs.Construct) *awscodestarnotifications.NotificationRuleSourceConfig
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	NotifyOn(id *string, target awscodestarnotifications.INotificationRuleTarget, options *PipelineNotifyOnOptions) awscodestarnotifications.INotificationRule
	NotifyOnAnyActionStateChange(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule
	NotifyOnAnyManualApprovalStateChange(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule
	NotifyOnAnyStageStateChange(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule
	NotifyOnExecutionStateChange(id *string, target awscodestarnotifications.INotificationRuleTarget, options *awscodestarnotifications.NotificationRuleOptions) awscodestarnotifications.INotificationRule
	OnEvent(id *string, options *awsevents.OnEventOptions) awsevents.Rule
	OnStateChange(id *string, options *awsevents.OnEventOptions) awsevents.Rule
	Stage(stageName *string) IStage
	ToString() *string
}

An AWS CodePipeline pipeline with its associated IAM role and S3 bucket.

TODO: EXAMPLE

func NewPipeline

func NewPipeline(scope constructs.Construct, id *string, props *PipelineProps) Pipeline

type PipelineNotificationEvents

type PipelineNotificationEvents string

The list of event types for AWS Codepipeline Pipeline. See: https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#events-ref-pipeline

const (
	PipelineNotificationEvents_PIPELINE_EXECUTION_FAILED     PipelineNotificationEvents = "PIPELINE_EXECUTION_FAILED"
	PipelineNotificationEvents_PIPELINE_EXECUTION_CANCELED   PipelineNotificationEvents = "PIPELINE_EXECUTION_CANCELED"
	PipelineNotificationEvents_PIPELINE_EXECUTION_STARTED    PipelineNotificationEvents = "PIPELINE_EXECUTION_STARTED"
	PipelineNotificationEvents_PIPELINE_EXECUTION_RESUMED    PipelineNotificationEvents = "PIPELINE_EXECUTION_RESUMED"
	PipelineNotificationEvents_PIPELINE_EXECUTION_SUCCEEDED  PipelineNotificationEvents = "PIPELINE_EXECUTION_SUCCEEDED"
	PipelineNotificationEvents_PIPELINE_EXECUTION_SUPERSEDED PipelineNotificationEvents = "PIPELINE_EXECUTION_SUPERSEDED"
	PipelineNotificationEvents_STAGE_EXECUTION_STARTED       PipelineNotificationEvents = "STAGE_EXECUTION_STARTED"
	PipelineNotificationEvents_STAGE_EXECUTION_SUCCEEDED     PipelineNotificationEvents = "STAGE_EXECUTION_SUCCEEDED"
	PipelineNotificationEvents_STAGE_EXECUTION_RESUMED       PipelineNotificationEvents = "STAGE_EXECUTION_RESUMED"
	PipelineNotificationEvents_STAGE_EXECUTION_CANCELED      PipelineNotificationEvents = "STAGE_EXECUTION_CANCELED"
	PipelineNotificationEvents_STAGE_EXECUTION_FAILED        PipelineNotificationEvents = "STAGE_EXECUTION_FAILED"
	PipelineNotificationEvents_ACTION_EXECUTION_SUCCEEDED    PipelineNotificationEvents = "ACTION_EXECUTION_SUCCEEDED"
	PipelineNotificationEvents_ACTION_EXECUTION_FAILED       PipelineNotificationEvents = "ACTION_EXECUTION_FAILED"
	PipelineNotificationEvents_ACTION_EXECUTION_CANCELED     PipelineNotificationEvents = "ACTION_EXECUTION_CANCELED"
	PipelineNotificationEvents_ACTION_EXECUTION_STARTED      PipelineNotificationEvents = "ACTION_EXECUTION_STARTED"
	PipelineNotificationEvents_MANUAL_APPROVAL_FAILED        PipelineNotificationEvents = "MANUAL_APPROVAL_FAILED"
	PipelineNotificationEvents_MANUAL_APPROVAL_NEEDED        PipelineNotificationEvents = "MANUAL_APPROVAL_NEEDED"
	PipelineNotificationEvents_MANUAL_APPROVAL_SUCCEEDED     PipelineNotificationEvents = "MANUAL_APPROVAL_SUCCEEDED"
)

type PipelineNotifyOnOptions

type PipelineNotifyOnOptions 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 CodePipeline Pipeline.
	//
	// 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 *[]PipelineNotificationEvents `json:"events" yaml:"events"`
}

Additional options to pass to the notification rule.

TODO: EXAMPLE

type PipelineProps

type PipelineProps struct {
	// The S3 bucket used by this Pipeline to store artifacts.
	ArtifactBucket awss3.IBucket `json:"artifactBucket" yaml:"artifactBucket"`
	// Create KMS keys for cross-account deployments.
	//
	// This controls whether the pipeline is enabled for cross-account deployments.
	//
	// By default cross-account deployments are enabled, but this feature requires
	// that KMS Customer Master Keys are created which have a cost of $1/month.
	//
	// If you do not need cross-account deployments, you can set this to `false` to
	// not create those keys and save on that cost (the artifact bucket will be
	// encrypted with an AWS-managed key). However, cross-account deployments will
	// no longer be possible.
	CrossAccountKeys *bool `json:"crossAccountKeys" yaml:"crossAccountKeys"`
	// A map of region to S3 bucket name used for cross-region CodePipeline.
	//
	// For every Action that you specify targeting a different region than the Pipeline itself,
	// if you don't provide an explicit Bucket for that region using this property,
	// the construct will automatically create a Stack containing an S3 Bucket in that region.
	CrossRegionReplicationBuckets *map[string]awss3.IBucket `json:"crossRegionReplicationBuckets" yaml:"crossRegionReplicationBuckets"`
	// Enable KMS key rotation for the generated KMS keys.
	//
	// By default KMS key rotation is disabled, but will add an additional $1/month
	// for each year the key exists when enabled.
	EnableKeyRotation *bool `json:"enableKeyRotation" yaml:"enableKeyRotation"`
	// Name of the pipeline.
	PipelineName *string `json:"pipelineName" yaml:"pipelineName"`
	// Indicates whether to rerun the AWS CodePipeline pipeline after you update it.
	RestartExecutionOnUpdate *bool `json:"restartExecutionOnUpdate" yaml:"restartExecutionOnUpdate"`
	// Reuse the same cross region support stack for all pipelines in the App.
	ReuseCrossRegionSupportStacks *bool `json:"reuseCrossRegionSupportStacks" yaml:"reuseCrossRegionSupportStacks"`
	// The IAM role to be assumed by this Pipeline.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// The list of Stages, in order, to create this Pipeline with.
	//
	// You can always add more Stages later by calling {@link Pipeline#addStage}.
	Stages *[]*StageProps `json:"stages" yaml:"stages"`
}

TODO: EXAMPLE

type StageOptions

type StageOptions struct {
	// The physical, human-readable name to assign to this Pipeline Stage.
	StageName *string `json:"stageName" yaml:"stageName"`
	// The list of Actions to create this Stage with.
	//
	// You can always add more Actions later by calling {@link IStage#addAction}.
	Actions   *[]IAction      `json:"actions" yaml:"actions"`
	Placement *StagePlacement `json:"placement" yaml:"placement"`
}

TODO: EXAMPLE

type StagePlacement

type StagePlacement struct {
	// Inserts the new Stage as a child of the given Stage (changing its current child Stage, if it had one).
	JustAfter IStage `json:"justAfter" yaml:"justAfter"`
	// Inserts the new Stage as a parent of the given Stage (changing its current parent Stage, if it had one).
	RightBefore IStage `json:"rightBefore" yaml:"rightBefore"`
}

Allows you to control where to place a new Stage when it's added to the Pipeline.

Note that you can provide only one of the below properties - specifying more than one will result in a validation error.

TODO: EXAMPLE

See: #justAfter

type StageProps

type StageProps struct {
	// The physical, human-readable name to assign to this Pipeline Stage.
	StageName *string `json:"stageName" yaml:"stageName"`
	// The list of Actions to create this Stage with.
	//
	// You can always add more Actions later by calling {@link IStage#addAction}.
	Actions *[]IAction `json:"actions" yaml:"actions"`
}

Construction properties of a Pipeline Stage.

TODO: EXAMPLE

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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