AWS::CodePipeline::Pipeline
ref. AWS::CodePipeline::Pipeline
Type: AWS::CodePipeline::Pipeline
Properties:
ArtifactStore:
ArtifactStore
ArtifactStores:
- ArtifactStoreMap
DisableInboundStageTransitions:
- StageTransition
Name: String
RestartExecutionOnUpdate: Boolean
RoleArn: String
Stages:
- StageDeclaration
Tags:
- Tag
ActionTypeId
のCategory
はDeploy
、Provider
はCloudFormation
でActionMode
はCHANGE_SET_REPLACE
の例。CHANGE_SET_REPLACE
は変更セットを作成して実装はしない。
DeployPipeline:
Type: "AWS::CodePipeline::Pipeline"
Properties:
# ...
Stages:
# ... -
- Name: ChangeSet
Actions:
-
Name: Foo
# ...
ActionTypeId:
Category: Deploy
Owner: AWS
Version: '1'
Provider: CloudFormation
# ...
Configuration:
ActionMode: CHANGE_SET_REPLACE # 変更セット作成 CHANGE_SET_EXECUTEは実装
ChangeSetName: FooChangeSet
ActionTypeId:
ActionTypeId
Configuration: Json
InputArtifacts:
- InputArtifact
Name: String
Namespace: String
OutputArtifacts:
- OutputArtifact
Region: String
RoleArn: String
RunOrder: Integer
ref. https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid
アクションタイプは、アクションカテゴリとアクションプロバイダタイプの組み合わせで構成されます。
https://docs.aws.amazon.com/ja_jp/codepipeline/latest/userguide/reference-pipeline-structure.html
Category: String
Owner: String
Provider: String
Version: String
Category 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.
各Catergory
ごとに使用できるProviderは以下を参照。
ref. https://docs.aws.amazon.com/ja_jp/codepipeline/latest/userguide/reference-pipeline-structure.html#actions-valid-providers
ステージのアクションで CloudFormation をプロバイダーとして指定する場合は、Configuration プロパティ内で次のプロパティを定義します。A
configuration:
ActionMode: CHANGE_SET_REPLACE
Capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND
ChangeSetName: pipeline-changeset
RoleArn: CloudFormation_Role_ARN
StackName: my-pipeline-stack
TemplateConfiguration: 'my-pipeline-stack::template-configuration.json'
TemplatePath: 'my-pipeline-stack::template-export.yml'
ref. AWS CloudFormation 設定プロパティのリファレンス
For example, if you want three actions to run in sequence in a stage, you would give the first action the runOrder value of 1, the second action the runOrder value of 2, and the third the runOrder value of 3. However, if you want the second and third actions to run in parallel, you would give the first action the runOrder value of 1 and both the second and third actions the runOrder value of 2.
https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#pipeline-requirements
前提:CodePipeline
のSource
はGitHubのブランチ
AWS::CodePipeline::Pipeline
を実行 => CodePipeline
にパイプラインが作成パイプライン
が更新がリリース
されてCodePipeline
が実行(変更セット作成 -> 承認 -> デプロイ)パイプライン
が更新がリリース
されてCodePipeline
が実行(変更セット作成 -> 承認 -> デプロイ)JSON
でないとParameterOverrides property is not valid
が発生スタックを削除しても新たにCodePipeline
が走って作成されてします。