Anwenderdefinierte ServiceNow DevOps-Aktionen aus dem GitHub-Marketplace

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 6 Minuten Lesedauer
  • Verwenden Sie die anwenderdefinierten Aktionen aus dem Marktplatz GitHub, um SonarQube-Scandaten und Sicherheitsdaten zu sammeln, den Workflow anzuhalten oder fortzusetzen oder den Workflow fortzusetzen, bis eine Change-Anforderung in Ihrer Instanz genehmigt oder abgelehnt wird, oder Details zu Change-Anforderungen abzurufen und zu aktualisieren usw.

    Alternativ können Sie Docker-Container-Images verwenden, um anwenderdefinierte Aktionen für die Pipelines GitHub Actions zu implementieren. Weitere Informationen finden Sie unter Implementieren Sie anwenderdefinierte Aktionen für Pipelines mit dem generischen Docker-Container-Image.

    Anwenderdefinierte Aktion von ServiceNow DevOps SonarQube

    Speichern Sie die SonarQube-Scan-Ergebnisse eines Projekts, das durch die Workflow-Ausführung in Ihrer Instanz ServiceNow initiiert wurde. Sie müssen das SonarQube-Tool in Ihrer -Instanz erstellen und die anwenderdefinierte SonarQube-Aktion ServiceNow DevOps auf der Schrittebene eines Auftrags im Workflow verwenden.

    Zeigen Sie die SonarQube-Analyseergebnisse mit einer der folgenden Methoden an:
    • Navigieren zu DevOps > Softwarequalitätsergebnisse > Softwarequalitätszusammenfassung.
    • Navigieren zu DevOps > Orchestrieren > Aufgabenausführung und Auswahl eines relevanten Aufgabenausführungs- Datensatzes.
    Führen Sie die folgenden Aufgaben aus, um die anwenderdefinierte Aktion zu verwenden.
    • Erstellen Sie das SonarQube-Tool in Ihrer Instanz.

      Generieren Sie das Token aus Anwender > Mein Account > Sicherheit Seite in Ihrem SonarQube-Tool, und erstellen Sie das Tool in der Instanz ServiceNow mit dem generierten Token. Weitere Informationen finden Sie unter Onboarding SonarQube von bis DevOps Change-Geschwindigkeit  – Arbeitsbereich und Onboarding SonarQube von auf DevOps Change-Geschwindigkeit  – Klassisch.

    • Erstellen Sie die folgenden Geheimnisse, um SonarQube-Scanergebnisse in der Instanz ServiceNow zu speichern.
      • SONAR_HOST_URL: URL der SonarQube-Instanz. Beispiel: https://sonarcloud.io
      • SONAR_PROJECT_KEY: Der Schlüssel zum Identifizieren eines Projekts in der SonarQube-Instanz. Beispiel: org.examples:demo
    • Konfigurieren Sie die anwenderdefinierte SonarQube-Aktion ServiceNow DevOps im Workflow.

      Die anwenderdefinierte Aktion „servicenow-devops-sonar“ muss auf der Schrittebene des Auftrags im Workflow mit dem Stichwort „ verwendung “ konfiguriert werden. Die Eingaben dieser anwenderdefinierten Aktion dürfen nicht manipuliert werden, um SonarQube-Analyseergebnisse in der Instanz ServiceNow zu speichern. Weitere Informationen finden Sie unter ServiceNow DevOps-Sonar.

    Anwenderdefinierte Aktion für ServiceNow DevOps-Testbericht

    Speichern Sie die Komponententestergebnisse des Projekts, das durch die Workflow-Ausführung in Ihrer Instanz ServiceNow von initiiert wurde. Die anwenderdefinierte Aktion ServiceNow DevOps „ Testbericht muss auf der Schrittebene des Auftrags im Workflow verwendet werden.

    Zeigen Sie die in Ihrer Instanz ServiceNow gespeicherten Komponententestergebnisse an, indem Sie zu navigieren DevOps > Testergebnisse > Testzusammenfassungen.

    Sie können auch anzeigen, indem Sie zu navigieren DevOps > Orchestrieren > Aufgabenausführung und Klicken auf einen relevanten Aufgabenausführungs- Datensatz.

    Führen Sie die folgenden Aufgaben aus, um die anwenderdefinierte Aktion zu verwenden.
    • Erstellen Sie Geheimnisse im Repository GitHub.
    • Konfigurieren Sie die anwenderdefinierte Aktion DevOps Testbericht im Workflow.

      Die anwenderdefinierte Aktion „servicenow-devops-test-report“ muss auf Schrittebene des Auftrags im Workflow mit dem Schlüsselwort „ verwendung“ konfiguriert werden. Die Eingaben dieser anwenderdefinierten Aktion dürfen nicht manipuliert werden, um die Komponententestergebnisse in Ihrer Instanz ServiceNow zu speichern. Weitere Informationen finden Sie unter ServiceNow DevOps-Testbericht.

    Benutzerdefinierte Aktion „Artefakt registrieren“ von ServiceNow DevOps

    Speichern Sie Artefakte, die durch die Workflow-Ausführung in Ihrer Instanz ServiceNow erstellt oder bereitgestellt wurden. Verwenden Sie die anwenderdefinierte Aktion ServiceNow DevOps Artefakt registrieren auf der Schrittebene des Auftrags im Workflow.

    Zeigen Sie die in Ihrer Instanz gespeicherten Artefaktdetails an, indem Sie zu navigieren DevOps > Artefakt > Artefakte.

    Führen Sie die folgenden Aufgaben aus, um die anwenderdefinierte Aktion zu verwenden:
    • Erstellen Sie Geheimnisse im Repository GitHub.
    • Konfigurieren Sie die anwenderdefinierte Aktion ServiceNow DevOps Artefakt registrieren im Workflow.

      Die anwenderdefinierte Aktion „servicenow-devops-register-artifact“ muss auf der Schrittebene des Auftrags im Workflow mit dem Schlüsselwort „ verwendung “ konfiguriert werden. Die Eingaben dieser anwenderdefinierten Aktion dürfen nicht manipuliert werden, um Artefaktdetails in Ihrer -Instanz zu speichern. Weitere Informationen finden Sie unter ServiceNow DevOps – Artefakte registrieren.

    Benutzerdefinierte Aktion „ServiceNow DevOps – Paket registrieren“

    Speichern Sie -Pakete, die von der Workflow-Ausführung in der Instanz ServiceNow erstellt oder bereitgestellt wurden. Verwenden Sie die anwenderdefinierte Aktion ServiceNow DevOps-Registrierungspaket auf der Schrittebene des Auftrags im Workflow.

    Zeigen Sie die in der Instanz ServiceNow gespeicherten Paketdetails an, indem Sie zu navigieren DevOps > Artefakt > Pakete.

    Führen Sie die folgenden Aufgaben aus, um die anwenderdefinierte Aktion zu verwenden.
    • Erstellen Sie Geheimnisse im Repository GitHub.
    • Konfigurieren Sie die anwenderdefinierte Aktion ServiceNow DevOps Artefakt registrieren im Workflow.

      Die anwenderdefinierte Aktion „servicenow-devops-register-package“ muss auf der Schrittebene des Auftrags im Workflow mit dem Schlüsselwort „ verwendung“ konfiguriert werden. Die Eingaben dieser anwenderdefinierten Aktion dürfen nicht manipuliert werden, um Artefaktdetails in Ihrer -Instanz zu speichern. Weitere Informationen finden Sie unter ServiceNow DevOps-Registrierungspaket.

    Benutzerdefinierte Aktion für ServiceNow DevOps Change Automation

    Erstellen Sie eine Change-Anforderung in der Instanz ServiceNow, um die Workflow-Ausführung in der Instanz ServiceNow anzuhalten und fortzusetzen.

    Verwenden Sie die anwenderdefinierte Aktion ServiceNow DevOps Change Automation auf der Schrittebene des Auftrags im Workflow. Wenn der Change nicht innerhalb des im Schwellenwert (changeCreationTimeOut) angegebenen Zeitraums erstellt wird und der Parameter „abortOnChangeCreationFailure“ aktiviert ist, wird die Pipeline abgebrochen.

    Diese anwenderdefinierte Aktion erstellt eine Change-Anforderung in ServiceNow, aktiviert die Option „Change-Steuerung“ und fragt in der Instanz ServiceNow nach dem definierten Zeitintervall den Change-Status ab, bis entweder der Change genehmigt oder abgelehnt oder die Zeitüberschreitungsschwelle erreicht wird. GitHub bricht die Workflow-Ausführung ab, wenn der Timeout-Schwellenwert erreicht ist und der Parameter „abortOnChangeStepTimeout“ aktiviert ist. GitHub-Aktionskonsole: Zeitüberschreitung bei Change-Schritt

    Diese anwenderdefinierte Aktion setzt die Workflow-Ausführung sofort fort, wenn Change-Beleg für die Pipeline in ServiceNow aktiviert wird, ohne darauf zu warten, dass der Change in der Instanz ServiceNow genehmigt oder abgelehnt wird.

    Zeigen Sie den Change an, der für die Workflow-Ausführung in der Instanz ServiceNow erstellt wurde, indem Sie zu navigieren DevOps > Orchestrieren > Pipeline-Change-Anforderungen.

    Die Change-Nummer mit dem Status pending_decision wird in der Aktionskonsole GitHub angezeigt, während die Instanz ServiceNow nach dem Change-Status abgefragt wird. Details wie Change-Kommentare, „Genehmigt von“, „Genehmigt am“ und der Status werden in der Aktionskonsole GitHub protokolliert, nachdem der Change vom Benutzer in der Instanz ServiceNow genehmigt, abgelehnt oder abgebrochen wurde. GitHub-Aktionskonsole – Change genehmigt

    Sie können zu den Konsolenprotokollen in Ihrer Pipeline navigieren, um den Status einer Change-Anforderung anzuzeigen. Wenn eine Change-Anforderung erstellt wird, werden die Change-Details gemäß dem Abfragezeitintervall angezeigt. Die mit dem Status der Change-Anforderung verknüpften Richtlinienbedingungen werden ebenfalls ausgewertet und in den Protokollen angezeigt. Wenn beispielsweise die Richtlinie „Erweiterte Automatisierung – DevOps-Change-Anforderung“ aktiviert ist, werden die Richtlinienbedingungen ausgewertet und die entsprechende getroffene Entscheidung (automatische Genehmigung/automatische Ablehnung/manuelle Genehmigung) in den Protokollen angezeigt.

    Die folgenden Details zur Change-Anforderung werden angezeigt:
    • Nummer
    • details
    • status
    • sys_id
    • Typ
    • Risiko
    • Priorität
    • changeStatus
    • planmäßigesStartDate
    • geplantesEnddatum
    • changeRequestURL

    Ändern Sie den Status in den Protokollen der GitHub-Pipeline-Konsole

    Hinweis:
    „changeState“ ist der Status der Change-Anforderung, und „status“ ist der Status der Schrittausführung.
    Die Protokolle für Richtlinienbedingungen werden für die Change-Flows des Basissystems wie folgt angezeigt:
    • DevOps-Modell-Change-Richtlinie: Bei der Change-Erstellung und wenn der Change-Status aktualisiert wird, werden nur Protokolle angezeigt.
    • DevOps-Change-Anforderung Minimale Automatisierungsrichtlinie: Protokolle werden zusammen mit der Change-Entscheidung und den Richtlinienbedingungen angezeigt, die der Change-Entscheidung entsprechen.
    • DevOps-Change-Anforderung für erweiterte Automatisierungsrichtlinie: Es werden Protokolle zusammen mit der Change-Entscheidung und den Richtlinienbedingungen angezeigt, die der Change-Entscheidung entsprechen.
    Die Eingaben für die Change-Richtlinie und die Entscheidungsbedingungen werden in der Tabelle „Entscheidungen“ [sys_decision_question] gespeichert. Protokolle werden angezeigt, wenn die folgenden Felder und Operatoren als Eingabe für Richtlinienbedingungen verwendet werden:
    Felder
    • 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
    • Risiko
    • code_security
    • Commits
    Operatoren
    • <=
    • >=
    • !=
    • =
    • <
    • >
    • ISNOTEMPTY
    • IST leer
    • BETWEEN
    • ALLES
    • NSAMEAS
    • SAMEAS
    • GT_FIELD
    • LT_FIELD
    Hinweis:
    Wenn ein anderes Feld als die Basissystemfelder in einer Change-Richtlinie geändert wird, müssen diese Felder manuell zum Flow hinzugefügt werden, damit Richtlinienbedingungen ausgewertet werden können.
    Führen Sie die folgenden Aufgaben aus, um die anwenderdefinierte Aktion zu verwenden.
    • Erstellen Sie Geheimnisse im Repository GitHub.
    • Konfigurieren Sie die anwenderdefinierte Aktion ServiceNow DevOps Change Automation im Workflow.

      Die anwenderdefinierte Aktion „servicenow-devops-change“ muss auf der Schrittebene des Auftrags im Workflow mit dem Stichwort „ verwendung “ konfiguriert werden. Die Eingaben dieser anwenderdefinierten Aktion dürfen nicht manipuliert werden, um einen Change in Ihrer Instanz zu erstellen und alle Sekunden den Change-Status abzufragen. Weitere Informationen finden Sie unter ServiceNow DevOps Change Automation.

    ServiceNow DevOps – Change-GitHub-Aktion abrufen

    Rufen Sie die Nummer der Change-Anforderung in einer GitHub Actions-Pipeline basierend auf bestimmten Change-Details ab.

    Die anwenderdefinierte Aktion ServiceNow DevOps Change GitHub Action abrufen muss auf Schrittebene in einem Pipeline-Auftrag hinzugefügt werden, um die Nummer der Change-Anforderung von einer ServiceNow-Instanz durch Angabe von Change-Details abzurufen.

    ServiceNow DevOps-Update – Change-GitHub-Aktion

    Aktualisiert die Details einer Change-Anforderung, die einer GitHub Actions-Pipeline zugeordnet sind.

    Die anwenderdefinierte Aktion „ServiceNow DevOps Update Change GitHub Action“ muss auf Schrittebene in einem Pipelineauftrag hinzugefügt werden, um die Change-Anforderung in einer ServiceNow-Instanz zu aktualisieren. Die Nummer der Change-Anforderung, deren Details aktualisiert werden müssen, und die zu aktualisierenden Details der Change-Anforderung müssen als Eingabe angegeben werden.

    Aktion für ServiceNow DevOps-Sicherheitsergebnisse

    Rufen Sie die Ergebnisse der Sicherheitsprüfung in ServiceNow ab.

    Die anwenderdefinierte Aktion „ServiceNow DevOps-Sicherheitsergebnisaktion“ muss auf Schrittebene in einem Pipelineauftrag hinzugefügt werden, um die Ergebnisse von Sicherheitsscans in ServiceNow abzurufen.