Azure

Azure DevOpsでのCI/CDパイプライン構築ガイド(2026年版)

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
1ヶ月で資格+現場入り

インフラエンジニアへの最短ルート

未経験でもAWS・Linux・ネットワーク資格を最短で取り、現場入りまでサポート。SREやクラウドエンジニアの入口。

CODE×CODEスピード転職|無料面談▶ SRE/クラウドのフリーランス案件▶

▶ AWS/GCP/Kubernetesの独学には Kindle Unlimited の技術書読み放題がコスパ最強。


スポンサードリンク

1️⃣ 前提条件と環境準備

手順 内容 主な参照元
1 Azure DevOps にサインアップし、組織 (myorg) を作成 Microsoft Docs: Create an organization
2 組織内に プロジェクト (WebApp‑CI‑CD) を作成 同上
3 プロジェクトの Repos タブで Git リポジトリを作成し、ローカルコードをプッシュ Microsoft Docs: Create a repo
4 Pipelines → Agent pools を確認し、ubuntu‑latest が利用可能かチェック Microsoft Docs: Agent pools
5 必要な権限 (Project Collection Build Service) をプロジェクトに付与 同上

ポイント
組織・プロジェクト・リポジトリが整ったら、次はパイプライン本体の作成へ進みます。


2️⃣ パイプライン作成方法 ― Classic UI と YAML の比較

項目 Classic UI YAML
操作性 GUI だけで構築でき、初心者に優しい テキストエディタで記述し、コードとして管理
保守性 手動変更が中心で履歴が残りにくい Git にコミットできるため変更履歴が明確
再利用性 テンプレートは UI から選択する程度 templates 機能で共通ロジックを切り出し可能
推奨シナリオ 小規模・短期プロトタイプ 中〜大規模、長期間運用する案件

実務的アドバイス
まず Classic UI で全体像を掴み、基本が動いたら同等の YAML に置き換える流れが多く見られます(Microsoft Docs のベストプラクティス参照)[^4]。


3️⃣ 推奨マルチステージ YAML パイプライン例

以下は .NET 7 アプリを対象とした、ビルド・テスト・成果物公開・デプロイの 4 ステージ構成です。
※実行環境は ubuntu‑latest(Microsoft‑hosted)を想定しています。

主要ポイントの解説

項目 内容
トリガー maindevelop のプッシュで自動実行。不要なブランチは exclude に列記可。
変数活用 ビルド構成やアーティファクト名を変数化し、ステージ間で再利用。
テスト・カバレッジ dotnet test --collect:"XPlat Code Coverage" でプラットフォーム横断のカバレッジ取得。
シークレット管理 AzureKeyVault@2 により、コードに埋め込まず安全に環境変数へ注入。
デプロイ条件 condition: succeeded() で前ステージが成功したときのみ実行。

出典
- Azure Pipelines の基本構成 – Microsoft Docs[^5]
- AzureWebApp@1 タスクの最新仕様 – Microsoft Docs[^6]


4️⃣ トラブルシューティング・よくあるエラー

エラー 主な原因 解決策
Agent pool is not authorized プロジェクトがプライベートプールを使用しているが、ビルドサービスに権限が付与されていない Project Settings → Agent poolsProject Collection Build ServiceUse 権限を付与
NuGet restore failed (404) フィード URL が古い・認証トークン切れ Azure Artifacts の最新フィード URL を取得し、nuget.config を更新
Code coverage file not found dotnet test にカバレッジオプションが付いていない 必ず --collect:"XPlat Code Coverage" を付与
Deployment to Azure Web App failed: 403 Forbidden Service Connection のロール不足、または Key Vault のアクセスポリシー未設定 Azure Portal → IAM で対象リソースに Contributor 権限を付与し、Key Vault に同一サービスプリンシパルを追加

ポイント
権限系のミスが最も多く報告されます。パイプライン実行前に Service ConnectionAgent pool の権限だけは必ず検証しておきましょう。


5️⃣ ベストプラクティスと次のステップ

5.1 YAML のテンプレート化

共通ロジック(ビルド・テスト・デプロイ)を templates/ 配下に切り出すことで、複数リポジトリで再利用可能です。

templates/build-test.yml の例

参考:Microsoft の「YAML templates」ガイド[^7]。

5.2 IaC(Infrastructure as Code)との統合

Bicep または ARM テンプレートをパイプラインに組み込むと、インフラとアプリケーションの構成がコードで一元管理できます。

効果
- 環境ごとの構成差分がコードレビューで可視化できる。
- ロールバックや再現性が向上する。

5.3 継続的改善のサイクル

  1. メトリクス収集 – ビルド時間、テストカバレッジ、デプロイ成功率を Azure DevOps の Analytics で可視化。
  2. フィードバックループ – PR ごとにパイプラインが走り、結果をコメントとして自動投稿(Pull Request Comment タスク活用)。
  3. スケールアウト – ビルドが頻繁にキューイングされる場合は、Microsoft‑hosted の ubuntu‑latest からセルフホストプールへ移行し、キャッシュやカスタムツールを事前インストール。

6️⃣ まとめ

  • 環境準備 → 組織・プロジェクト・リポジトリを作成し、エージェントプールと権限を確認。
  • パイプライン作成は Classic UI で概念把握→YAML に移行するのが実務的。
  • マルチステージ YAMLでビルド・テスト・成果物公開・デプロイを一括管理し、Key Vault 等でシークレットを安全に扱う。
  • トラブルは権限系が多いので、Service Connection と Agent pool の設定は最優先で検証。
  • テンプレート化と IaCで保守性・再利用性を高め、Analytics による継続的改善サイクルを構築する。

これらの手順とベストプラクティスに沿って実装すれば、堅牢かつ拡張性のある Azure DevOps CI/CD パイプラインが構築できます。


参考文献

[^1]: Create an organization – Microsoft Docs. https://learn.microsoft.com/azure/devops/organizations/accounts/create-organization
[^2]: Create a repo – Microsoft Docs. https://learn.microsoft.com/azure/devops/repos/git/create-new-repo
[^3]: Agent pools – Microsoft Docs. https://learn.microsoft.com/azure/devops/pipelines/agents/pools-queues
[^4]: Choose between Classic pipelines and YAML pipelines – Microsoft Docs. https://learn.microsoft.com/azure/devops/pipelines/yaml/get-started?view=azure-devops#classic-vs-yaml-pipelines
[^5]: First pipeline – Microsoft Docs. https://learn.microsoft.com/azure/devops/pipelines/create-first-pipeline
[^6]: AzureWebApp@1 task – Microsoft Docs. https://learn.microsoft.com/azure/devops/pipelines/tasks/deploy/azure-web-app?view=azure-devops
[^7]: YAML templates – Microsoft Docs. https://learn.microsoft.com/azure/devops/pipelines/process/templates

スポンサードリンク

お得なお知らせ

スポンサードリンク
1ヶ月で資格+現場入り

インフラエンジニアへの最短ルート

未経験でもAWS・Linux・ネットワーク資格を最短で取り、現場入りまでサポート。SREやクラウドエンジニアの入口。

CODE×CODEスピード転職|無料面談▶ SRE/クラウドのフリーランス案件▶

▶ AWS/GCP/Kubernetesの独学には Kindle Unlimited の技術書読み放題がコスパ最強。


-Azure