次の方法で共有


Azure DevOps CLI を使用してパイプラインを管理する

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

この記事では、次の az パイプライン コマンドを使用して、Azure DevOps プロジェクト内の既存のパイプラインを管理する方法について説明します。

Note

Azure DevOps CLI 拡張機能は Azure DevOps Services でのみ使用でき、Azure DevOps Server のバージョンはサポートされていません。

Azure DevOps CLI 拡張機能

az-pipelines コマンド グループは、Azure CLI バージョン 2.30.0 以降を必要とする Azure CLI の DevOps 拡張機能の一部です。 azure pipelines コマンドを初めて実行すると、Azure DevOps 拡張機能が自動的にインストールされます。 概要の詳細については、「 Azure DevOps CLI の使用を開始するを参照してください。

Azure DevOps CLI コマンドでは、 debughelponly-show-errorsqueryoutputverboseなどのグローバル Azure CLI パラメーターを使用することもできます。 --output グローバル パラメーターのtable値は、出力をわかりやすい形式で表示します。 詳細については、「Azure CLI コマンドの出力形式」をご覧ください。

az devops configure --defaults organization=<YourOrganizationURL>を使用して Azure DevOps CLI コマンドの既定の Azure DevOps 組織を設定することも、--detect true パラメーターを使用して組織を自動的に検出することもできます。 az devops configure -d project=<Project Name or ID>を使用して、既定の Azure DevOps プロジェクトを構成できます。

組織を検出しない場合、または既定の組織またはプロジェクトを構成しない場合、または git configを使用して組織とプロジェクトを選択する場合は、各コマンドで org パラメーターと project パラメーターを指定する必要があります。

既存のパイプラインを一覧表示する

runshowupdate、およびdeleteパイプライン コマンドには、管理するパイプラインのnameまたはidが必要です。 idを使用する場合、name パラメーターは無視されます。 ID を含むプロジェクト パイプラインの一覧を取得するには、 az pipelines list コマンドを使用します。 パラメーターを使用して、結果一覧をフィルター処理または書式設定できます。

たとえば、次のコマンドは、 python*で始まる名前を持つプロジェクト パイプラインをテーブル形式で一覧表示します。

az pipelines list --name python* --output table

出力:

ID    Path    Name                        Status    Default Queue
----  ------  --------------------------  --------  ---------------
17    \       python-sample-vscode-flask  disabled  Azure Pipelines
24    \       python-sample-get-started   enabled   Azure Pipelines

完全なコマンド リファレンスについては、 az パイプラインの一覧を参照してください。

パイプラインの詳細を表示する

既存のパイプラインの詳細を表示するには、 az パイプライン show コマンドを使用します。 たとえば、次のコマンドは、12IDを含むパイプラインの詳細を示し、Web ブラウザーでパイプラインの概要ページを開きます。

az pipelines show --id 12 --open

完全なコマンド リファレンスについては、 az パイプラインの表示を参照してください。

パイプラインの実行

既存のパイプラインをキューに登録して実行するには、 az パイプラインの実行 コマンドを使用します。 実行で使用する parametersvariables を設定できます。

たとえば、次のコマンドは、pipeline ブランチでmyGithubname.pipelines-javanameを使用してパイプラインを実行し、変数var1の値を実行の100に設定し、結果をtable形式で出力します。

az pipelines run --name myGithubname.pipelines-java --branch pipeline --variables var1=100 --output table

出力:

Run ID    Number      Status      Result    Pipeline ID    Pipeline Name                Source Branch    Queued Time                 Reason
--------  ----------  ----------  --------  -------------  ---------------------------  ---------------  --------------------------  --------
123       20200123.2  notStarted            12             myGithubname.pipelines-java  pipeline         2020-01-23 11:55:56.633450  manual

完全なコマンド リファレンスについては、「 az パイプラインの実行」を参照してください。

パイプラインを更新する

既存のパイプラインを更新するには、 az パイプラインの更新 コマンドを使用します。 たとえば、次のコマンドは、新しい名前と説明で12idを使用してパイプラインを更新し、結果をテーブル形式で出力します。

az pipelines update --id 12 --description "rename pipeline" --new-name updatedname.pipelines-java --output table

出力:

ID    Name                        Status    Default Queue
----  --------------------------  --------  ------------------
12    updatedname.pipelines-java  enabled   Hosted Ubuntu 1604

完全なコマンド リファレンスについては、 az パイプラインの更新に関する記事を参照してください。

パイプラインを削除する

パイプラインを削除するには、 az-pipelines-delete コマンドを実行します。 たとえば、次のコマンドは、ID が 12 のパイプラインを削除し、確認を求めるメッセージを表示しません。 --yes パラメーターを含めない場合、コマンドは既定で確認を求めます。

az pipelines delete --id 12 --yes

完全なコマンド リファレンスについては、 az パイプラインの削除に関する記事を参照してください。

プログラムによってパイプラインを作成および構成する

Azure DevOps CLI を使用して YAML パイプラインを作成するには、 az パイプラインの作成を参照してください。 YAML パイプラインで Azure CLI コマンドを実行するには、Azure Pipelines YAML Azure DevOps CLI に関するページを参照

YAML パイプラインを作成して、任意の言語でアプリをビルド、構成、テスト、デプロイできます。 詳細については、次の記事をご覧ください。

Azure DevOps Services REST API

REST API を使用して直接 HTTP 呼び出しを行うことで、Azure DevOps と統合されるカスタム アプリケーションまたはサービスを構築できます。 詳細については、 Azure DevOps Services REST API リファレンスを参照してください。 これらの API には、 client ライブラリ を使用することもできます。

パイプライン実行のステージをスキップする

stagesToSkip パラメーターを使用して、az rest コマンドを Run Pipeline REST API と共に使用して、パイプライン実行のステージをスキップできます。

次に例を示します。

az rest --method post `
    --uri https://dev.azure.com/{organization}/{project}/_apis/pipelines/{pipelineId}/runs?api-version=7.1-preview.1 `
    --body "{'stagesToSkip': [''], 'resources': {'repositories': {'self': {'refName': 'refs/heads/{branch}'}}}}" `
    --resource 499b84ac-1321-427f-aa17-267ca6975798

詳細については、「 Azure CLI で Azure REST API を使用する」を参照してください。