→SRE/DevOps
→アジャイル
→テスト・品質管理
→IaC(Infrastructure as Code)
→システム運用
サブトピック†
一般記事†
GitLab†
CircleCI†
Cloud Build†
Dagger†
Jenkins†
ビルド/インテグレーション支援ツール†
→Maven関連
Gradle†
カテゴリ | 役割 | ツール例 |
リポジトリ/バージョン管理ツール | ソースコードのバージョンや成果物を管理 | Git/GitHub/AWS CodeCommit |
CIツール | コードに変更があると、ビルドやテストを実行するため各種ツールにコードを連携 | Jenkins/Travis CI/CircleCI/GitLabCICD/AWS CodePipeline |
構成管理ツール | インフラ基盤の構築を自動化したり、構築手順を管理 | Terraform/Ansible/Chef/Puppet/AWS CloudFormation/AWS CDK |
ビルドツール | ビルドに必要な処理を自動実行 | Gradle/Ant/Maven/AWS CodeBuild |
テストデータ準備ツール | テストに必要なデータを準備 | DELPHIX |
テストツール | 操作テストや負荷テストを実施して、サプリケーションの品質をチェック | UFT One/LoadRunner Professional/sonarQude |
Twelve Factor App†
- CI=継続的インテグレーションとは、プログラマがソースコードを変更したら頻繁にリポジトリに登録し、自動でビルドとテストを行うこと。
- テストコードはあらかじめ作成しておく。
- Jenkins や CircleCI などのCIツールを使って自動化する。
- CD=継続的デリバリーとは、テストをパスしたソフトウェアを自動で実稼働環境にリリースできる状態にすること
- ※継続的デプロイとは、そこからさらにデプロイまでやること
- CI/CDパイプラインとは、CI/CDを実践するために必要な一連のステップを自動化したもの
- (CI):コーディング→ビルド→インテグレート→テスト→(CD):リリース→デプロイ→オペレート