GitHub マーケットプレイスの ServiceNow DevOps カスタムアクション

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:11分
  • GitHub マーケットプレイスのカスタムアクションを使用して、SonarQube スキャンデータ、セキュリティデータの収集、ワークフローの一時停止または再開、インスタンスで変更要求が承認または却下されるまでのワークフローの再開、変更要求の詳細の取得と更新などを行います。

    または、Docker コンテナイメージを使用して、 GitHub Actions パイプラインのカスタムアクションを実装することもできます。詳細については、「汎用 Docker コンテナイメージを使用したパイプラインのカスタムアクションの実装」を参照してください。

    ServiceNow DevOps SonarQube カスタムアクション

    ワークフローの実行によって開始されたプロジェクトの SonarQube スキャン結果を ServiceNow インスタンスに保存します。インスタンスで SonarQube ツールを作成し、ワークフロー内のジョブのステップレベルで ServiceNow DevOps SonarQube カスタムアクションを使用する必要があります。

    次のいずれかの方法を使用して、SonarQube 解析結果を表示します。
    • 移動先 DevOps > ソフトウェア品質結果 > ソフトウェア数量サマリー.
    • 移動先 DevOps > 調整 > タスク実行 関連する タスク実行 レコードを選択します。
    カスタムアクションを使用するには、次のタスクを実行します。
    • インスタンスに SonarQube ツールを作成します。

      トークンの生成元 ユーザー > 自分のアカウント > セキュリティ ページを作成し、生成されたトークンを使用して ServiceNow インスタンスにツールを作成します。詳細については、「DevOps 変更速度管理 への SonarQube のオンボーディング - ワークスペース」と「DevOps 変更速度管理 へのオンボードSonarQube - クラシック」を参照してください。

    • 次のシークレットを作成して、SonarQube スキャン結果を ServiceNow インスタンスに保存します。
      • SONAR_HOST_URL:SonarQube インスタンスの URL。たとえば、 https://sonarcloud.io
      • SONAR_PROJECT_KEY:SonarQube インスタンス内のプロジェクトを識別するキー。例: org.examples:demo
    • ワークフローで ServiceNow DevOps SonarQube カスタムアクションを構成します。

      カスタムアクション servicenow-devops-sonar は、uses キーワードを使用してワークフロー内のジョブのステップレベルで構成する必要があります。SonarQube 分析結果を ServiceNow インスタンスに保存するために、このカスタムアクションの入力を変更しないでください。詳細については、「ServiceNow DevOps Sonar」を参照してください。

    ServiceNow DevOps テストレポートカスタムアクション

    ワークフロー実行によって開始されたプロジェクトの単体テスト結果を ServiceNow インスタンスに保存します。ServiceNow DevOpsテストレポートカスタムアクションは、ワークフロー内のジョブのステップレベルで使用する必要があります。

    次に移動して、 ServiceNow インスタンスに保存された単体テスト結果を表示します DevOps > テスト結果 > テストサマリー.

    次の場所に移動して表示することもできます DevOps > 調整 > タスク実行 をクリックし、関連する タスク実行 レコードをクリックします。

    カスタムアクションを使用するには、次のタスクを実行します。
    • GitHub リポジトリでシークレットを作成します。
    • ワークフローで [ DevOps テストレポート] カスタムアクションを設定します。

      カスタムアクション servicenow-devops-test-report は、uses キーワードを使用してワークフロー内のジョブのステップレベルで構成する必要があります。単体テスト結果を ServiceNow インスタンスに保存するために、このカスタムアクションの入力を変更しないでください。詳細については、「ServiceNow DevOps テストレポート」を参照してください。

    ServiceNow DevOps アーティファクトの登録カスタムアクション

    ServiceNowインスタンスのワークフロー実行によって作成または展開されたアーティファクトを保存します。ワークフローのジョブのステップレベルで ServiceNow DevOps Register Artifact カスタムアクションを使用します。

    次に移動して、インスタンスに保存されたアーティファクトの詳細を表示します DevOps > アーティファクト > アーティファクト.

    カスタムアクションを使用するには、次のタスクを実行します。
    • GitHub リポジトリでシークレットを作成します。
    • ワークフローで [アーティファクト ServiceNow DevOps 登録] カスタムアクションを構成します。

      カスタムアクション servicenow-devops-register-artifact は、uses キーワードを使用してワークフローのジョブのステップレベルで構成する必要があります。アーティファクトの詳細をインスタンスに保存するために、このカスタムアクションの入力を変更しないでください。詳細については、「ServiceNow DevOps 登録アーティファクト」を参照してください。

    ServiceNow DevOps パッケージ登録カスタムアクション

    ServiceNowインスタンスでワークフロー実行によって作成または展開されたパッケージを保存します。ワークフロー内のジョブのステップレベルで ServiceNow DevOps パッケージ登録カスタムアクションを使用します。

    次に移動して、 ServiceNow インスタンスに保存されたパッケージの詳細を表示します DevOps > アーティファクト > パッケージ.

    カスタムアクションを使用するには、次のタスクを実行します。
    • GitHub リポジトリでシークレットを作成します。
    • ワークフローで ServiceNow DevOps アーティファクトの登録カスタムアクションを構成します。

      カスタムアクション servicenow-devops-register-package は、uses キーワードを使用してワークフローのジョブのステップレベルで構成する必要があります。アーティファクトの詳細をインスタンスに保存するために、このカスタムアクションの入力を変更しないでください。詳細については、「ServiceNow DevOps でパッケージを登録」を参照してください。

    ServiceNow DevOps Change Automation カスタムアクション

    ServiceNowインスタンスで変更要求を作成し、ServiceNowインスタンスからワークフローの実行を一時停止および再開します。

    ワークフロー内のジョブのステップレベルで [ ServiceNow DevOps 変更自動化] カスタムアクションを使用します。しきい値 (changeCreationTimeOut) で指定された期間内に変更が作成されず、 abortOnChangeCreationFailure パラメーターが有効になっている場合、パイプラインは中止されます。

    このカスタムアクションは、ServiceNowで変更要求を作成し、[変更コントロール] オプションを有効にし、変更が承認または却下されるか、タイムアウトしきい値 (タイムアウト) に達するまで、定義された時間間隔でServiceNowインスタンスにポーリングしてステータスを変更します。タイムアウトしきい値に達し、abortOnChangeStepTimeout パラメーターが有効になっている場合は、GitHubワークフローの実行を中止します。GitHub アクションコンソール - ステップタイムアウトを変更

    このカスタムアクションは、ServiceNowインスタンスで変更が承認または却下されるのを待たずに、ServiceNow のパイプラインで変更受付が有効になっている場合に、ワークフローの実行をすぐに再開します。

    ServiceNowインスタンスで実行されたワークフローに対して作成された変更を表示するには、次の場所に移動します。 DevOps > 調整 > パイプライン変更要求.

    ステータスpending_decisionの変更番号は、ServiceNowインスタンスの変更ステータスをポーリングしている間、GitHub アクションコンソールに表示されます。変更コメント、承認者、承認日、ステータスなどの詳細は、ServiceNowインスタンスGitHubユーザーによって変更が承認、却下、またはキャンセルされた後、アクションコンソールに記録されます。GitHub アクションコンソール - 承認された変更

    パイプラインのコンソールログに移動して変更要求のステータスを表示できます 変更要求が作成されると、ポーリング時間間隔に従って変更の詳細が表示されます。変更要求の状況に関連付けられたポリシー条件も評価され、ログに表示されます。たとえば、DevOps 変更要求の高度な自動化ポリシーが有効になっている場合、ポリシー条件が評価され、対応する決定 (自動承認/自動却下/手動承認) がログに表示されます。

    次の変更要求の詳細が表示されます。
    • number
    • details
    • status
    • sys_id
    • type
    • risk
    • priority
    • changeState
    • plannedStartDate
    • plannedEndDate
    • changeRequestURL

    GitHub パイプラインコンソールログでステータスを変更

    注:
    changeState は変更要求のステータスで、 status はステップ実行のステータスです。
    ポリシー条件のログは、ベースシステム変更フローで次のように表示されます。
    • DevOps モデル変更ポリシー:変更の作成時および変更状況が更新されると、ログのみが表示されます。
    • DevOps 変更要求最小自動化ポリシー:変更の決定および変更の決定に対応するポリシー条件とともにログが表示されます。
    • DevOps 変更要求の高度な自動化ポリシー:変更の決定および変更の決定に対応するポリシー条件とともにログが表示されます。
    変更ポリシーの入力と決定条件は、決定 [sys_decision_question] テーブルに保存されます。次のフィールドと演算子をポリシー条件の入力として使用すると、ログが表示されます。
    フィールド
    • code_coverage
    • commits_without_work_item
    • integration_tests_failed
    • load_tests_failed
    • regression_tests_failed
    • num_of_outages_in_last_7_days
    • num_of_current_outages
    • num_of_open_incidents
    • total_num_of_commits
    • tests_passing_percent
    • risk
    • code_security
    • commits
    演算子
    • <=
    • >=
    • !=
    • =
    • <
    • >
    • ISNOTEMPTY
    • ISEMPTY
    • BETWEEN
    • ANYTHING
    • NSAMEAS
    • SAMEAS
    • GT_FIELD
    • LT_FIELD
    注:
    変更ポリシーでベースシステムフィールド以外のフィールドが変更された場合、ポリシー条件を評価するには、それらのフィールドをフローに手動で追加する必要があります。
    カスタムアクションを使用するには、次のタスクを実行します。
    • GitHub レポジトリでシークレットを作成します。
    • ワークフロー ServiceNow DevOps [変更の自動化] カスタムアクションを構成します。

      カスタムアクション servicenow-devops-change は、uses キーワードを使用して、ワークフロー内のジョブのステップレベルで構成する必要があります。このカスタムアクションの入力を改ざんして、インスタンスに変更を作成し、変更ステータスを秒数ごとにポーリングしないようにしてください。詳細については、「ServiceNow DevOps Change Automation (ServiceNow DevOps 変更の自動化)」を参照してください。

    ServiceNow DevOps で Github アクションの変更を取得

    特定の変更の詳細に基づいて、GitHub Actions パイプラインで変更要求番号を取得します。

    ServiceNow DevOps で Github アクションの変更を取得」カスタムアクションをパイプラインジョブのステップレベルで追加し、変更の詳細を指定して ServiceNow インスタンスから変更要求番号を取得する必要があります。

    ServiceNow DevOps で変更 GitHub アクションを更新

    GitHub アクションのパイプラインに関連付けられた変更要求の詳細を取得して更新します。

    ServiceNow インスタンスで変更要求を更新するには、パイプラインジョブのステップレベルで「ServiceNow DevOps で GitHub アクションの変更を更新」カスタムアクションを追加する必要があります。詳細を更新する必要がある変更要求番号と更新する変更要求の詳細を入力として指定する必要があります。

    ServiceNow DevOps セキュリティ結果アクション

    ServiceNow でセキュリティスキャン結果を取得します。

    ServiceNow でセキュリティスキャン結果を取得するには、「ServiceNow DevOps セキュリティ結果アクション」カスタムアクションをパイプラインジョブのステップレベルで追加する必要があります。