GitHub マーケットプレイスからの ServiceNow DevOps カスタムアクション
GitHubマーケットプレイスのカスタムアクションを使用して、SonarQube スキャンデータ、セキュリティデータの収集、ワークフローの一時停止または再開、インスタンスで変更要求が承認または却下されるまでのワークフローの再開、変更要求の詳細の取得と更新などを行います。
または、Docker コンテナー イメージを使用して、 GitHub Actions パイプラインのカスタム アクションを実装することもできます。詳細については、「汎用 Docker コンテナイメージを使用したパイプラインのカスタムアクションの実装」を参照してください。
ServiceNow DevOps SonarQube カスタムアクション
ワークフロー実行によって開始されたプロジェクトの SonarQube スキャン結果を ServiceNow インスタンスに保存します。インスタンスで SonarQube ツールを作成し、ワークフロー内のジョブのステップレベルで ServiceNow DevOps SonarQube カスタムアクションを使用する必要があります。
- 次のように移動する。 .
- 次のように移動する。 関連する タスク実行 レコードを選択します。
- インスタンスで 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 インスタンスに保存された単体テスト結果を表示します。 .
移動して表示することもできます をクリックし、関連する タスク実行 レコードをクリックします。
- GitHubリポジトリにシークレットを作成します。
- ワークフローで [ DevOps テストレポート] カスタムアクションを設定します。
カスタムアクション
servicenow-devops-test-reportは、 uses キーワードを使用してワークフロー内のジョブのステップレベルで構成する必要があります。単体テスト結果を ServiceNow インスタンスに保存するために、このカスタムアクションの入力を変更しないでください。詳細については、「 ServiceNow DevOps テストレポート」を参照してください。
ServiceNow DevOps の [アーティファクトの登録] カスタムアクション
ワークフロー実行によって作成または展開されたアーティファクトを ServiceNow インスタンスに保存します。ワークフローのジョブのステップレベルで ServiceNow DevOps Register Artifact カスタムアクションを使用します。
に移動すると、インスタンスに保存されたアーティファクトの詳細が表示されます。 .
- GitHubリポジトリにシークレットを作成します。
- ワークフローで [アーティファクト ServiceNow DevOps 登録] カスタムアクションを構成します。
カスタムアクション
servicenow-devops-register-artifactは、 uses キーワードを使用してワークフローのジョブのステップレベルで構成する必要があります。アーティファクトの詳細をインスタンスに保存するために、このカスタムアクションの入力を変更しないでください。詳細については、「 ServiceNow DevOps でアーティファクトを登録」を参照してください。
ServiceNow DevOps パッケージ登録カスタムアクション
ServiceNowインスタンスでワークフロー実行によって作成または展開されたパッケージを保存します。ワークフロー内のジョブのステップレベルで [ ServiceNow DevOps パッケージの登録] カスタムアクションを使用します。
に移動して、 ServiceNow インスタンスに保存されたパッケージの詳細を表示します .
- GitHubリポジトリにシークレットを作成します。
- ワークフローで [アーティファクト ServiceNow DevOps 登録] カスタムアクションを構成します。
カスタムアクション
servicenow-devops-register-packageは、 uses キーワードを使用してワークフローのジョブのステップレベルで構成する必要があります。アーティファクトの詳細をインスタンスに保存するために、このカスタムアクションの入力を変更しないでください。詳細については、「 ServiceNow DevOps でパッケージを登録」を参照してください。
ServiceNow DevOps Change Automation カスタムアクション
ServiceNowインスタンスで変更要求を作成して、ServiceNowインスタンスからのワークフロー実行を一時停止および再開します。
ワークフロー内のジョブのステップレベルで [ ServiceNow DevOps 変更自動化] カスタムアクションを使用します。しきい値 (changeCreationTimeOut) で指定された期間内に変更が作成されず、 abortOnChangeCreationFailure パラメーターが有効になっている場合、パイプラインは中止されます。
このカスタムアクションは、ServiceNowで変更要求を作成し、[変更コントロール] オプションを有効にし、変更が承認または却下されるか、またはタイムアウトしきい値 (タイムアウト) に達するまで、変更ステータスの定義された時間間隔でServiceNowインスタンスをポーリングします。タイムアウトしきい値に達し、abortOnChangeStepTimeout パラメーターが有効になっている場合、GitHubワークフローの実行を中止します。
このカスタムアクションは、ServiceNowインスタンスで変更が承認または却下されるのを待たずに、ServiceNow中のパイプラインで変更受領書が有効になっている場合、ワークフローの実行をすぐに再開します。
に移動すると、 ServiceNow インスタンスでワークフロー実行に対して作成された変更が表示されます。 .
ステータスが pending_decision の変更番号は、ServiceNow インスタンスの変更ステータスをポーリングしている間に GitHub Actions コンソールに表示されます。変更コメント、承認者、承認日、ステータスなどの詳細は、ServiceNowインスタンスでユーザーによって変更が承認、却下、またはキャンセルされた後GitHubアクションコンソールに記録されます。
パイプラインのコンソールログに移動して変更要求のステータスを表示できます 変更要求が作成されると、ポーリング時間間隔に従って変更の詳細が表示されます。変更要求ステータスに関連付けられたポリシー条件も評価され、ログに表示されます。たとえば、DevOps 変更要求の高度な自動化ポリシーがアクティブ化されている場合、ポリシー条件が評価され、対応する決定 (自動承認/自動却下/手動承認) がログに表示されます。
- 番号
- details
- ステータス
- sys_id
- type
- risk
- priority
- changeState
- plannedStartDate
- plannedEndDate
- 変更要求 URL
- DevOps モデル変更ポリシー:変更の作成時および変更ステータスが更新されたときに、ログのみが表示されます。
- DevOps 変更要求最小自動化ポリシー:変更の決定および変更の決定に対応するポリシー条件とともにログが表示されます。
- DevOps 変更要求の高度な自動化ポリシー:変更の決定および変更の決定に対応するポリシー条件とともにログが表示されます。
- フィールド
- 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
- 次の間
- ANYTHING
- NSAMEAS
- SAMEAS
- GT_FIELD
- LT_FIELD
- GitHubリポジトリにシークレットを作成します。
- ワークフロー ServiceNow DevOps [変更の自動化] カスタムアクションを構成します。
カスタムアクション
servicenow-devops-changeは、 uses キーワードを使用してワークフローのジョブのステップレベルで構成する必要があります。インスタンスに変更を作成し、変更ステータスをポーリングするために、このカスタムアクションの入力を改ざんしないようにしてください。詳細については、「 ServiceNow DevOps Change Automation」を参照してください。
ServiceNow DevOps で変更 Github アクションを取得
特定の変更の詳細に基づいて、GitHub Actions パイプラインで変更要求番号を取得します。
変更の詳細を指定して ServiceNow インスタンスから変更要求番号を取得するには、ServiceNow DevOps 変更取得 GitHub アクション カスタムアクションをパイプラインジョブのステップレベルで追加する必要があります。
ServiceNow DevOps で変更 GitHub アクションを更新
GitHub Actions パイプラインに関連付けられた変更要求の詳細を更新します。
ServiceNow インスタンスで変更要求を更新するには、パイプラインジョブのステップレベルで [ ServiceNow DevOps 変更 GitHub アクションの更新 (Update Change Github Action )] カスタムアクションを追加する必要があります。詳細を更新する必要がある変更要求番号と、更新する変更要求の詳細を入力として指定する必要があります。
ServiceNow DevOps セキュリティ結果アクション
ServiceNow でセキュリティスキャン結果を取得します。
ServiceNow でセキュリティスキャン結果を取得するには、 ServiceNow DevOps セキュリティ結果アクション カスタムアクションをパイプラインジョブのステップレベルで追加する必要があります。