Azure Pipelines とは

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure Pipelines は、コード プロジェクトを自動的にビルド、テスト、デプロイする Azure DevOps の一部です。 Azure Pipelines 連続するテスト、およびの連続する配信を組み合わせて任意の宛先にコードをビルド、テスト、配信します。 Azure Pipelines では、すべての主要な言語とプロジェクトの種類がサポートされています。

Azure Pipelines の概要のスクリーンショット。

Azure Pipelines の利点

Azure Pipelines を使用すると、プロジェクトの構築を迅速で簡単かつ安全に自動化でき、一貫性があり、品質が高く、ユーザーがすぐに使用できるコードを格納できます。

Azure Pipelines には、次の利点があります。

  • 任意の言語またはプラットフォームで動作します。
  • さまざまな種類のターゲットに同時にデプロイします。
  • Azure デプロイと統合されます。
  • Windows、Linux、または Mac のマシン上に構築されます。
  • GitHub と統合されます。
  • オープンソース プロジェクトで動作します。

前提条件

Azure Pipelines を使用するには、次の手順を実行する必要があります。

  • Azure DevOps 組織を作成する。 お持ちでない場合は、組織を作成
  • ソース コードをバージョン管理システムに格納します。

言語とアプリケーション

Azure Pipelines には、Node.js、Python、Java、PHP、Ruby、C#、C++、Go、XCode、.NET、Android、iOS アプリケーションをビルド、テスト、デプロイするタスクが用意されています。 これらのアプリは、Linux、macOS、Windows で並列で実行できます。

多くのテスト フレームワークとサービスでテストを実行するタスクがあります。 オートメーションでコマンド ライン、PowerShell、またはシェル スクリプトを実行することもできます。

継続的インテグレーション

継続的インテグレーション (CI) は、コードのマージとテストを自動化するために開発チームが使用するプラクティスです。 CI は、開発サイクルの早い段階でバグをキャッチするのに役立ち、修正するコストが低くなります。

品質を確保するために、Azure Pipelines は CI プロセスの一部として自動テストを実行します。 Azure Pipelines CI システムは成果物を生成し、継続的デプロイを推進するプロセスをリリースするためにそれらを提供します。

Azure DevOps Server のビルド サービスは、アプリケーションの CI の設定と管理に役立ちます。

バージョン コントロール システム

Azure Pipelines では、ソース コードがバージョン管理システムに格納されている必要があります。 Azure Pipelines では、 Azure Repos Git、GitHub、TFVC など、複数の形式のバージョン管理がサポート。 バージョン 管理リポジトリにプッシュした変更を自動的にビルドして検証するように Azure Pipelines を設定できます。

継続的なテスト

Azure Pipelines では、アプリがオンプレミスかクラウドかに関係なく、選択したテクノロジとフレームワークでビルド/デプロイ/テスト ワークフローを自動化できます。 迅速かつスケーラブルで効率的な方法で変更を継続的にテスト。 継続的なテストにより、次のことが可能になります。

  • 開発時に品質を維持し、問題を見つけます。 以前は、各ビルドでテストを自動的に実行し、チェックインとビルドのたびにアプリが引き続き動作することを確認することで、問題を見つけることができます。

  • 任意のテストの種類とテスト フレームワークを使用します。 お好みのテスト テクノロジを選択します。

  • 豊富な分析とレポートを表示します。 ビルドが完了したら、テスト結果を確認して問題を解決できます。 実行可能なビルド時のビルド レポートでは、ビルドの正常性が向上しているかどうかを即座に確認できます。 詳細でカスタマイズ可能なテスト結果は、アプリの品質を測定します。

継続的デリバリー

継続的デリバリー (CD) は、1 つ以上のテスト環境または運用環境にコードをビルド、テスト、デプロイするプロセスです。 複数の環境でデプロイとテストを行うと、品質が最適化されます。

Azure Pipelines CD システムは、インフラストラクチャやアプリを含むデプロイ可能な成果物を生成します。 自動リリース プロセスでは、これらの成果物を利用して、新しいバージョンと修正プログラムを既存のシステムにリリースします。 アラートを継続的に監視して送信するシステムは、CD プロセスの可視性を促進します。

展開ターゲット

Azure Pipelines を使うと、コードを複数のターゲットにデプロイできます。 ターゲットには、仮想マシン、環境、コンテナー、オンプレミスとクラウドのプラットフォーム、サービスとしてのプラットフォーム (PaaS) サービスが含まれます。 また、モバイル アプリケーションをストアに発行することもできます。

CI を設定したら、リリース定義を作成して、1 つ以上の環境へのアプリケーションのデプロイを自動化できます。 自動化プロセスは、タスクのコレクションとして定義されます。

パッケージの形式

外部ユーザーが使用できるパッケージを生成するには、パッケージ管理を CI/CD パイプラインに統合します。 NuGet、npm、Maven、または Python パッケージを成果物として、組み込みの Azure Pipelines パッケージ管理リポジトリ、または選択した他のパッケージ管理リポジトリに発行できます。 Azure Artifacts の詳細については、「Azure Pipelines の Artifactsを参照してください。

Azure Pipelines の価格

パブリック プロジェクトを使用する場合、Azure Pipelines は無料ですが、並列ジョブの無料付与を 要求する必要があります。 既存の組織やプロジェクトは、この許可を要求する必要はありません。 詳細については、パブリック プロジェクトとは何かに関するページを参照してください。

プライベート プロジェクトを使用する場合は、毎月最大 1,800 分または 30 時間のパイプライン ジョブを無料で実行できます。

詳細については、並列ジョブに基づく価格に関するページとAzure DevOps Services の価格に関するページを参照してください。

アクティブ ユーザーが 5 人以下の場合、 Azure DevOps Express は無料で簡単にセットアップでき、クライアントとサーバーの両方のオペレーティング システムにインストールされます。 Azure DevOps Server 2019 と同じ機能がすべてサポートされています。

詳細については、Azure DevOps Server の価格に関するページを参照してください。