Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022
Azure DevOps 用の Node CLI (tfx-cli) を使用して、カスタムまたはインザボックスのパイプライン タスクを Azure DevOps 組織または Azure DevOps Server プロジェクト コレクションにアップロードします。
重要
インザボックス タスクを Azure DevOps Server インスタンスにアップロードすると、エージェントのバージョンやサーバー側のサポートがないため、一部のタスク機能がサポートされない場合があります。
前提 条件
| カテゴリ | Requirements |
|---|---|
| アクセス許可 | 組織またはコレクション レベルの エージェント プール管理者 グループのメンバーシップ。 「セキュリティ グループ、サービス アカウント、およびアクセス許可」を参照してください。 |
| トークン | スコープ エージェント プール (読み取りと管理) を含む個人用アクセス トークン (PAT)、または Microsoft Entra トークン。 セキュリティを強化するために、AT よりも Entra トークンをお勧めします。 |
| ツール | グローバルにインストールされている最新バージョンの Node.js と tfx-cli:npm install -g tfx-cli |
tfx-cli でサインインする
タスクをアップロードする前に、tfx-cli を使用して Azure DevOps にサインインします。 その他の認証オプションについては、 Azure DevOps のクロスプラットフォーム CLI 認証に関するページを参照してください。
次のコマンドを実行し、メッセージが表示されたらサービス URL と PAT を指定します。
tfx login
環境に一致するサービス URL を使用します。
| 環境 | URL 形式 |
|---|---|
| Azure DevOps Services | https://dev.azure.com/{organization} |
| Azure DevOps Server | http://{server}:{port}/DefaultCollection |
タスクのアップロード
ヒント
すぐに使用できるパイプライン タスクを更新する必要がある場合は、 azure-pipelines-tasks リポジトリを 複製できます。 次に、ガイドラインに従って必要なタスク をビルドします。タスクのビルド方法です。
tfx-cliを使用してタスクをアップロードします。
tfx build tasks upload --task-path <PATH_TO_TASK>
PATH_TO_TASK は、コンパイル済みタスクを含むフォルダーへのパスです ( task.jsonを含む)。
重要
パイプライン エージェントは、バージョン別にタスクをキャッシュします。 タスクを変更し、同じバージョン番号で再アップロードした場合、エージェントはキャッシュされたコピーを引き続き使用します。
task.json で少なくともパッチバージョンを更新してから、更新されたタスクをアップロードしてください。
アップロードを確認する
タスクが正常にアップロードされたことを確認します。
tfx build tasks list
出力には、各タスクの id、 name、 version など、サーバー上のすべてのタスクが一覧表示されます。
タスクを削除する
アップロードしたタスクを削除するには、その ID を指定します。
tfx build tasks list出力からタスク ID を取得します。
tfx build tasks delete --task-id <TASK_ID>
Warnung
タスクを削除すると、サーバーから削除されます。 削除されたタスクを参照するすべてのパイプラインは、次の実行で失敗します。
Troubleshooting
| エラー | 原因 | 修正する |
|---|---|---|
| 401 未承認 | PAT の有効期限が切れた、取り消された、または エージェント プール (読み取りおよび管理) スコープが見つからない。 | 適切なスコープを持つ新しい PAT を作成します。 |
| 403 禁止 | アカウントが エージェント プール管理者 グループにありません。 | 組織の管理者に追加を依頼します。 |
| タスクは既に存在します | 既にサーバー上にあるのと同じバージョンをアップロードしました。 |
task.jsonでパッチバージョンをバンプし、もう一度アップロードします。 |
tfx-cli の詳細については、 Azure DevOps の Node CLI のドキュメントを参照してください。