Azure DevOps パイプラインからの変更要求の詳細の取得および更新

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:4分
  • Azure DevOps パイプラインに関連付けられた変更要求の詳細を取得して更新します。

    始める前に

    この手順を実行する前に、次の前提条件を満たしていることを確認してください。
    • 接続して Azure DevOps ツールを構成し、既存のリポジトリ、オーケストレーションタスク、およびパイプラインを検出します。
    • 次のカスタム拡張タスクを Azure DevOps インスタンスにインストールします。
    必要なロール:
    • DevOps 変更速度管理の admin または sn_devops.admin
    • Azure DevOps のアドミン

    このタスクについて

    変更要求の state パラメーターを更新する場合、次の移行のみがサポートされます。
    • キャンセル:変更要求のステータスを「キャンセル」に移行するには、ステータスが「実装」になっている必要があります。reason は、ステータスを「キャンセル済み」に更新するための必須入力です。
    • クローズ済み:変更要求のステータスを「クローズ」に移行するには、ステータスが「実装」または「実装後」になっている必要があります。close_codeclose_notes は、ステータスを「クローズ済み」に更新するための必須入力です。

    変更要求のステータスを整数値で指定します。

    • 4 - キャンセル (sn_devops.change_request.cancel_state プロパティで設定された値)
    • 3 - クローズ済み (sn_devops.change_request.closed_state プロパティに設定された値)

    選択フィールドを更新するときは、対応する選択リストで使用可能な有効な選択値を指定する必要があります。たとえば、[クローズコード] フィールドの選択リストの値は、successful、successful_issues、および unsuccessful です。

    [クローズコード] フィールドの値を選択します。

    手順

    1. Azure DevOps コンソールで、 組織 > パイプライン > ジョブ.
    2. [タスクを追加] アイコン ([タスクを追加]) を選択し、[タスクを追加] 検索バーで ServiceNow 拡張機能を検索します。
    3. サーバージョブとエージェントジョブのどちらを使用しているかに基づいて、get 関数と update 関数に次の拡張タスクを追加します。
      Get 関数
      • ServiceNow DevOps Server 変更を取得
      • ServiceNow DevOps エージェントが変更を取得
      関数を更新
      • ServiceNow DevOps Server で変更を更新
      • ServiceNow DevOps エージェントによる変更の更新
    4. タスクで、使用している機能に基づいて次の入力パラメーターを更新します。
      Get 関数
      • プロジェクト名
      • パイプライン名
      • ステージ名
      • ジョブの名前
      • ビルド ID
      • 試行番号
      • 分岐名 (複数分岐パイプラインの場合のみ)
      注:
      変更要求の詳細を入力パラメーターとして指定しない場合は、現在のパイプラインとステージに関連付けられている変更要求番号が取得されます。

      更新タスクで変更要求番号を参照するために使用される、変更要求取得タスクの参照名を入力します。以下の例を参照してください。

      ServiceNow DevOps エージェントで変更タスクを取得
      関数を更新
      • 詳細を更新する必要がある変更要求番号。
      • キー:値ペアとして更新される変更要求属性。
      { "short_description": "Test description", "priority": "1", "start_date": "2021-02-05 08:00:00", 
      "end_date": "2022-04-05 08:00:00", "justification": "test justification", "description": "test description", 
      "cab_required": <true/false>, "comments": "This update for work notes is from ADO file", "work_notes": "test work notes", 
      "assignment_group": "<SYS_ID>", "state":"<STATE_CODE>", "close_code":"<successful/successful_issues/unsuccessful>", "reason":"<As per Choice List>" }
      ServiceNow DevOps エージェントによる変更の詳細の更新

      changeRequestNumber 値は、「<task_name>.<changeRequestNumber>」形式のタスク参照名の取得を使用して参照する必要があります。以下の例を参照してください。

      エージェントのスクリプトを取得および更新します。サーバーのスクリプトを取得および更新します。
      注:
      試行番号はオプションです。指定しない場合、現在のパイプライン実行の最新の CHG 番号が取得されます。それ以外の場合は、環境変数を使用せずに試行回数を明示的に指定できます。
    5. 変更内容を保存します。