Azure GitHub Actions と Azure DevOps の使い分け
使い分け
| 項目 | GitHub Actions | Azure DevOps |
|---|---|---|
| ソース管理 | GitHub | Azure Repos / GitHub |
| CI/CD | ○ | ◎ |
| 小~中規模開発 | ◎ | ○ |
| 大規模企業向け | ○ | ◎ |
| 承認フロー | △ | ◎ |
| リリース管理 | △ | ◎ |
| Azure連携 | ○ | ◎ |
| 権限管理 | ○ | ◎ |
GitHub Actionsを利用するケース
- GitHubでソースコード管理している
- 小規模~中規模開発
- シンプルなCI/CDが必要
- OSSプロジェクト
name: Build on: push: branches: - main jobs: build: runs-on: ubuntu-latest特徴
- 設定が簡単
- GitHubと標準統合
- 開発者中心
Azure DevOpsを利用するケース
- 大規模開発
- 複数チーム開発
- 厳格な承認プロセス
- 本番リリース管理が必要
stages: - stage: Build - stage: Test - stage: Production
特徴
- Multi-stage Pipeline
- Environment管理
- Approval機能
- Release管理
Terraform連携の場合
terraform fmt terraform validate terraform plan terraform apply
Azure DevOps
Terraform Init Terraform Plan Approval Terraform Apply
本番環境では Azure DevOps の Approval を利用することが多いです。