{
"Type": "AWS::CodePipeline::Pipeline",
"Properties": {
"RoleArn": { "Ref" : "CodePipelineServiceRole" },
"Stages": [
{
"Name": "Source",
"Actions": [
{
"Name": "SourceAction",
"ActionTypeId": {
"Category": "Source",
"Owner": "AWS",
"Version": "1",
"Provider": "S3"
},
"OutputArtifacts": [
{
"Name": "SourceOutput"
}
],
"Configuration": {
"S3Bucket": { "Ref" : "SourceS3Bucket" },
"S3ObjectKey": { "Ref" : "SourceS3ObjectKey" }
},
"RunOrder": 1
}
]
},
{
"Name": "Beta",
"Actions": [
{
"Name": "BetaAction",
"InputArtifacts": [
{
"Name": "SourceOutput"
}
],
"ActionTypeId": {
"Category": "Deploy",
"Owner": "AWS",
"Version": "1",
"Provider": "CodeDeploy"
},
"Configuration": {
"ApplicationName": {"Ref" : "ApplicationName"},
"DeploymentGroupName": {"Ref" : "DeploymentGroupName"}
},
"RunOrder": 1
}
]
},
{
"Name": "Release",
"Actions": [
{
"Name": "ReleaseAction",
"InputArtifacts": [
{
"Name": "SourceOutput"
}
],
"ActionTypeId": {
"Category": "Deploy",
"Owner": "AWS",
"Version": "1",
"Provider": "CodeDeploy"
},
"Configuration": {
"ApplicationName": {"Ref" : "ApplicationName"},
"DeploymentGroupName": {"Ref" : "DeploymentGroupName"}
},
"RunOrder": 1
}
]
}
],
"ArtifactStore": {
"Type": "S3",
"Location": { "Ref" : "ArtifactStoreS3Location" }
},
"DisableInboundStageTransitions": [
{
"StageName": "Release",
"Reason": "Disabling the transition until integration tests are completed"
}
]
}
}