È possibile utilizzare gli stati di Salt e la funzionalità dei processi di Automation Config per implementare Git in un ambiente di produzione.

L'utilizzo di questo metodo per implementare Git negli ambienti di produzione offre diversi vantaggi:

  • Non è necessario apportare modifiche alla configurazione nel file di configurazione del Salt Master o nel file di configurazione di RaaS.
  • Questo metodo offre un modo più controllato per aggiornare il repository clonato nel Salt Master.
  • È possibile visualizzare eventuali errori nei dettagli dei risultati del processo nell'area di lavoro Attività.

Questo metodo può essere utilizzato anche per gli ambienti di sviluppo.

Prima di iniziare

  • Installare Git nel Salt Master.

Clonazione del repository Git

Per clonare il repository Git:

  1. Clonare il repository Git nella directory /srv/salt.
    È possibile utilizzare uno stato di Salt per clonare il repository Git. Di seguito è disponibile uno stato di Salt di esempio, supponendo che l'utente che ha accesso al repository Git sia git.
    # state to clone a git repo
           
    install_git:
      pkg.installed:
        - name: git
      
    remove_current_salt:
      file.absent:
        - name: /srv/salt
           
    remove_current_pillar:
      file.absent:
        - name: /srv/pillar
           
    clone_salt_repo:
      git.cloned:
        - name: [email protected]:~/salt # replace the ip with the one from your git server
        - target: /srv/salt
        - branch: prod_v1
       
    clone_pillar_repo:
      git.cloned:
        - name: [email protected]:~/pillar # replace the ip with the one from your git server
        - target: /srv/pillar
        - branch: prod_v1

Creare un processo per aggiornare il repository Git

Dopo aver clonato il repository Git, è possibile creare un nuovo processo in Automation Config per aggiornare ciascun repository clonato utilizzando un modulo Git Salt.

Per creare il processo:

  1. Fare clic su Configurazione > Processi nel menu laterale per aprire l'area di lavoro Processi.
  2. Fare clic sul pulsante Crea processo.
  3. Immettere i dettagli del nuovo processo.
    Campo Valore
    Nome Assegnare un nome descrittivo a questo processo, ad esempio "Git Pull Salt".
    Descrizione Aggiungere una descrizione che indichi agli altri utenti lo scopo di questo processo, ad esempio "Updates cloned repositories".
    Comando Selezionare salt.

    Il comando salt viene utilizzato per i processi eseguiti sui minion.

    Destinazioni Non selezionare nulla da questo menu. Se il campo viene lasciato vuoto, è possibile selezionare la destinazione al momento dell'esecuzione del processo.
    Funzione Selezionare il modulo git.pull.
    Argomenti Digitare /srv/salt.

    Utilizzare il campo Argomenti per passare args e kwargs al modulo Salt. Ciascuna riga nel campo Argomenti rappresenta un argomento.

  4. Salvare il processo.

Creazione di un processo per il check-out dei rami Git

È possibile creare un nuovo processo in Automation Config per eseguire il check-out di un ramo per ogni repository clonato. Questo processo può essere utilizzato per passare a un nuovo ramo o ripristinare senza alcun tempo di inattività. Non è necessario riavviare il servizio salt-master dopo aver eseguito questo processo.

Per creare il processo:

  1. Fare clic su Configurazione > Processi nel menu laterale per aprire l'area di lavoro Processi.
  2. Fare clic sul pulsante Crea processo.
  3. Immettere i dettagli del nuovo processo.
    Campo Valore
    Nome Assegnare un nome descrittivo al processo, ad esempio "Git Checkout Salt".
    Descrizione Aggiungere una descrizione che indichi agli altri utenti lo scopo di questo processo, ad esempio "Check out Git branches".
    Comando Selezionare salt.

    Il comando salt viene utilizzato per i processi eseguiti sui minion.

    Destinazioni Non selezionare nulla da questo menu. Se il campo viene lasciato vuoto, è possibile selezionare la destinazione al momento dell'esecuzione del processo.
    Funzione Selezionare la funzione git.checkout.
    Argomenti Digitare /srv/salt per il primo argomento.

    Digitare prod_v2 per il secondo argomento.

    Utilizzare il campo Argomenti per passare args e kwargs al modulo Salt. Ciascuna riga nel campo Argomenti rappresenta un argomento.
  4. Salvare il processo.
Facoltativamente, è possibile creare una pianificazione in Automation Config per eseguire il processo Git Pull a intervalli regolari.
Nota: È consigliabile eseguire questo processo una sola volta ogni ora. Assicurarsi che tutti gli aggiornamenti apportati rispettino il processo di controllo delle modifiche dell'organizzazione.