Open3
CI/CDパイプラインの構成検討

背景
- 今のPJでアプリケーションのデプロイとインフラのプロビジョニングをCI/CDパイプラインを構築し行うことになった。
- AWSとGithubを利用して、PJに最適なCI/CDパイプラインの構成を決めたい。
- アプリケーションについてはGitの運用戦略も合わせて検討する。
- インフラのプロビジョニングはCloud Formationのテンプレートを利用するため、テンプレートの構成や管理方法も検討する。
検討事項
- CI/CDパイプライン構成の候補を挙げる(アプリ/インフラ)
- Git運用戦略(ブランチ戦略)を検討する(アプリ/ インフラ)
- Cfnテンプレートの構成を検討する
- 全体構成
- パラメータ管理
参考

AWS SAM Pipeline
概要
- AWS SAMでサーバレスアプリケーションのパイプラインを対話形式で構築できる。
- 権限やトリガーなど必要なAWSリソースは全て自動で作成してくれる。
- AWS CodePipeline, Jenkins, GitLab CI/CD, GitHub Actions, Bitbucket Pipelines に対応。
- 開発環境と本番環境それぞれのデプロイパイプラインが作成できる。
- テストステージも実装可能。
環境構築
環境
- MacBook Pro 2019(Intel Core)
- Python 3.11.6
手順
- AWS CLIのインストール
- AWS SAM CLIのインストール
- デプロイ対象のアプリケーション(Lambda関数)の用意
- ソースコードはGithub上のリポジトリに用意する。
-
sam init
でアプリを作成する。
GitHub + CodePipeline + CodeBuild の実装手順
GitHub + GitHub Actions の実装手順
参考

AWS SAMの独自CI/CDパイプライン
参考