GitLab Konfigurationen der Abrufanforderung

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 2 Minuten Lesedauer
  • GitLabAusführungen der Pipeline für Pull-(Zusammenführungs-)Anforderungen, die vor dem Wechsel in die Produktion Change-Beschleunigung durchlaufen, können nachverfolgt werden DevOps Change-Geschwindigkeit. Diese Integration erfasst auch GitLabZusammenführen von Anforderungsmetadaten, in denen beibehalten werden soll DevOps Change-Geschwindigkeit. Die Daten sind mit dem Change verknüpft, der in der Ausführung der Zusammenführungsanforderungs-Pipeline erstellt wurde, und können zum Anwenden von Change-Richtlinien, zur Überprüfung und Genehmigung verwendet werden.

    • Das Erstellen, Aktualisieren, Schließen, erneute Öffnen und Zusammenführen von Abrufanforderungen werden unterstützt.
    • Ausführung der Pull-Anforderungs-Pipeline für Change-Beschleunigung in GitLabPipelines werden unterstützt. Details zur Abrufanforderung stehen zur Verwendung in der Change-Genehmigungsrichtlinie zur Verfügung.
    • Status von GitLabDie Pipeline wird nach der Change-Erstellung automatisch mit dem Status der Abrufanforderung aktualisiert. Die Pipeline wird angehalten und automatisch fortgesetzt.
    • E-Mail-IDs sind standardmäßig auf das Format festgelegt <user_name>@noreply.gitlab.com .
    • Kommentare werden als Teil der Unterstützung für Zusammenführungsanforderungen unterstützt. Das Erstellen und Aktualisieren von Abrufanforderungen wird unterstützt, während das Löschen und Bearbeiten nicht unterstützt wird.
    • Maximal 100 Commits werden in angezeigt DevOps Change-Geschwindigkeit. Wenn Sie auf mehr als 100 zugreifen müssen, müssen Sie Ihren verweisen GitLabInstanz. Nur der neueste Kommentar wird ausgefüllt.

    Einstellungen zum Aktivieren von Pull-(Zusammenführungs-)Anforderungen für die Change-Genehmigung

    Die DevOpsEigenschaft Aktivieren Sie diese Option, um GitLab-Abrufanforderungen (Zusammenführung) nachzuverfolgen. Wenn diese Option nicht aktiviert ist, werden Abruf-(Zusammenführungs-)Anforderungen und zugehörige Ereignisse ignoriert Aktiviert die Nachverfolgung von Abrufanforderungen (Zusammenführungsanforderungen) aus GitLabIn DevOps Change-Geschwindigkeit.
    Hinweis:
    Die Eigenschaft ist standardmäßig aktiviert. Wenn Sie nicht möchten, dass die Zusammenführungsanforderungen (Pull) nachverfolgt werden, müssen Sie sie deaktivieren.

    Wenn diese Option aktiviert ist, werden die Änderungen der Abrufanforderung (Zusammenführung) in berücksichtigt DevOps Change-Geschwindigkeit. Wenn deaktiviert, DevOps Change-GeschwindigkeitIgnoriert die Abrufanforderungsereignisse.

    Für die Verknüpfung von Pull Request- und Orchestration-Pipeline und zur Aktivierung der Nachverfolgung von Change-Genehmigungen ist Folgendes erforderlich:
    • Verwenden GitLabDocker für Change-Nachverfolgung. Detaillierte Informationen finden Sie unter Implementieren Sie anwenderdefinierte Aktionen für Pipelines mithilfe eines generischen Docker-Container-Images.
    • Von Ihrem GitLabProjekt,
      1. Navigieren zu
        • Für GitLabCloud: Einstellungen > Anfragen zusammenführen an.
        • Für vor Ort (13.x): Einstellungen > Allgemein > Anfragen zusammenführen an.
      2. Wählen Sie aus Pipelines müssen erfolgreich sein Kontrollkästchen.

        Mit dieser Auswahl können Sie nur dann mit der Zusammenführungsanforderung fortfahren, wenn der Change genehmigt wurde. Wenn das Kontrollkästchen aktiviert ist, werden Abrufanforderungen blockiert, bis der Change genehmigt wurde.

        Einstellungen für Zusammenführungsoptionen.

      3. Wählen Sie Änderungen speichern.
    • Navigieren Sie zu Ihrem Projekt, und öffnen Sie .Yml Datei.
      An .Yml Datei, fügen Sie die folgende Regel auf Pipeline-Ebene oder auf bestimmten Auftragsebenen hinzu.
      rules:
       - if: $CI_PIPELINE_SOURCE == 'merge_request event'
       - if: $CI_PIPELINE_SOURCE != 'merge_request_event'

      Beispiel für Pipeline-Ebene:

      workflow:
        rules:
        - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
        - if: $CI_PIPELINE_SOURCE != 'merge_request_event' 
      

      Beispiel für Positionsebene:

      changeapproval:
         stage: changeapproval
         script:
           - sndevopscli create change -p '{"changeStepDetails":{"timeout":3600,"interval":100},"attributes":{"short_description":"Automated Software Deployment","description":"Automated Software Deployment.","assignment_group":"a715cd759f2002002920bde8132e7018","implementation_plan":"Software update is tested and results can be found in Test Summaries Tab.","backout_plan":"When software fails in production, the previous software release will be re-deployed.","test_plan":"Testing if the software was successfully deployed or not"}}'
         rules:
         - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
         - if: $CI_PIPELINE_SOURCE != 'merge_request_event'