vRealize Automation Code Stream consente di attivare una pipeline se si verifica una revisione del codice nel progetto Gerrit. La definizione del trigger per Gerrit include il progetto Gerrit e le pipeline da eseguire per tipi di evento diversi.

Il trigger per Gerrit utilizza un listener Gerrit nel server Gerrit da monitorare. Per definire un endpoint Gerrit in vRealize Automation Code Stream, è necessario selezionare un progetto e immettere l'URL del server Gerrit. È quindi possibile specificare l'endpoint quando si crea un listener Gerrit in tale server.

Se si utilizza un server Gerrit come endpoint di vRealize Automation Code Stream in un'istanza di vRealize Automation in cui è abilitato FIPS, è necessario verificare che il file di configurazione Gerrit includa le chiavi di autenticazione dei messaggi corrette. Se il file di configurazione del server Gerrit non include le chiavi di autenticazione del messaggio corrette, il server non può essere avviato correttamente e viene visualizzato il messaggio: PrivateKey/PassPhrase is incorrect

Prerequisiti

  • Verificare che sia possibile accedere al server Gerrit a cui si intende connettersi.
  • Verificare di essere un membro di un progetto in vRealize Automation Code Stream. Se non si è membri, chiedere a un amministratore di vRealize Automation Code Stream di essere aggiunti come membri di un progetto. Vedere Come aggiungere un progetto in vRealize Automation Code Stream.

Procedura

  1. Definire un endpoint Gerrit.
    1. Fare clic su Configura > Endpoint e quindi su Nuovo endpoint.
    2. Selezionare un progetto e, per il tipo di endpoint, selezionare Gerrit . Quindi, immettere un nome e una descrizione.
    3. Se l'endpoint è un componente business critical nell'infrastruttura, abilitare Contrassegna come limitato.
    4. Immettere l'URL del server Gerrit.
      È possibile fornire un numero di porta con l'URL o lasciare vuoto il valore per utilizzare la porta predefinita.
    5. Immettere un nome utente e una password per il server Gerrit.
      Se la password deve essere crittografata, fare clic su Crea variabile e selezionare il tipo:
      • Segreta. La password viene risolta quando un utente con un ruolo qualsiasi esegue la pipeline.
      • Limitata. La password viene risolta quando un utente con ruolo di amministratore esegue la pipeline.

      Come valore, immettere la password che deve essere sicura, ad esempio la password di un server Jenkins.

    6. Per la chiave privata, immettere la chiave SSH utilizzata per accedere in modo sicuro al server Gerrit.
      Questa chiave è la chiave privata RSA che si trova nella directory .ssh.
    7. (Facoltativo) Se alla chiave privata è associata una frase d'accesso, immetterla.
      Per crittografare la passphrase, fare clic su Crea variabile e selezionare il tipo:
      • Segreta. La password viene risolta quando un utente con un ruolo qualsiasi esegue la pipeline.
      • Limitata. La password viene risolta quando un utente con ruolo di amministratore esegue la pipeline.

      Come valore, immettere la passphrase che deve essere sicura, ad esempio la passphrase per un server SSH.

  2. Fare clic su Convalida e verificare che l'endpoint Gerrit in vRealize Automation Code Stream si connetta al server Gerrit.
    Se non si connette, correggere gli eventuali errori, quindi fare di nuovo clic su Convalida.
    Quando si aggiunge un endpoint per il trigger Gerrit, è necessario verificare che l'endpoint Gerrit si connetta al server Gerrit.
  3. Fare clic su Crea.
  4. Verificare che nell'ambiente vRealize Automation sia abilitato FIPS oppure fare in modo che il processo Jenkins crei l'ambiente con FIPS abilitato utilizzando l'URL di Jenkins.
    1. Per eseguire il comando dalla riga di comando, connettersi all'appliance vRealize Automation 8.x tramite SSH e accedere come utente root. Ad esempio, connettersi all'URL del nome di dominio completo, ad esempio https://cava-1-234-567.yourcompanyFQDN.com sulla porta 22, 5480 o 443.
    2. Per verificare FIPS in vRealize Automation, eseguire il comando vracli security fips.
    3. Assicurarsi che il comando restituisca FIPS mode: strict.
  5. Se il server Gerrit è un endpoint in un'istanza di vRealize Automation in cui è abilitato FIPS, assicurarsi che il file di configurazione Gerrit includa le chiavi MAC (Message Authentication Code) corrette.
    1. Aprire Gerrit e creare una coppia di chiavi SSH.
    2. Individuare il file di configurazione del server Gerrit in '$site_path'/etc/gerrit.config.
    3. Verificare che il file di configurazione del server Gerrit includa una o più chiavi MAC (Message Authentication Code), eccetto per hmac-MD5.
      Nota: In modalità FIPS, hmac-MD5 non è un algoritmo MAC supportato. Per assicurarsi che il server Gerrit venga avviato correttamente, il file di configurazione del server Gerrit deve escludere questo algoritmo. Se il server Gerrit non si avvia correttamente, viene visualizzato il messaggio PrivateKey/PassPhrase is incorrect
      I nomi delle chiavi MAC (Message Authentication Code) supportati che iniziano con un segno più (+) sono abilitati. I nomi delle chiavi MAC che iniziano con un trattino (-) vengono rimossi dall'elenco dei MAC predefiniti. Per impostazione predefinita, i MAC supportati sono disponibili in un vRealize Automation Code Stream per il server Gerrit:
      • hmac-md5-96
      • hmac-sha1
      • hmac-sha1-96
      • hmac-sha2-256
      • hmac-sha2-512

Operazioni successive

Per ulteriori informazioni, rivedere le altre sezioni. Vedere Come utilizzare il trigger Gerrit in vRealize Automation Code Stream per eseguire una pipeline.