In qualità di sviluppatore, si necessita di una pipeline che recuperi un modello cloud di automazione da un'istanza di GitHub locale ogni volta che si conferma una modifica. È necessario che la pipeline distribuisca un'applicazione WordPress in Amazon Web Services (AWS) EC2 o in un data center. Automation Pipelines richiama il modello cloud dalla pipeline e ne automatizza l'integrazione e la consegna continue (CICD) per distribuire l'applicazione.

Per creare e attivare la pipeline, è necessario un modello cloud in Automation Assembler.

In Origine modello nell'attività del modello cloud di Automation Pipelines, è possibile selezionare:

  • Automation Assembler come controllo dell'origine. In questo caso, non è necessario un repository GitLab o GitHub.
  • Controllo origine se si utilizza GitLab o GitHub per il controllo dell'origine. In questo caso, è necessario disporre di un webhook Git e attivare la pipeline tramite il webhook.

Se si dispone di un modello cloud YAML nel repository GitHub e si desidera utilizzare tale modello cloud nella pipeline, procedere nel modo seguente.

  1. In Automation Assembler, inserire il modello cloud nel repository GitHub.
  2. In Automation Pipelines, creare un endpoint Git. Creare quindi un webhook Git che utilizzi l'endpoint Git e la pipeline.
  3. Per attivare la pipeline, aggiornare un file qualsiasi nel repository GitHub e confermare la modifica.

Se non si dispone di un modello cloud YAML nel repository GitHub e si desidera utilizzare un modello cloud dal controllo dell'origine, utilizzare questa procedura. Mostra come creare un modello cloud per un'applicazione WordPress e attivarlo da un repository GitHub locale. Ogni volta che si apporta una modifica al modello cloud YAML, la pipeline attiva e automatizza il rilascio dell'applicazione.

  • In Automation Assembler, aggiungere un account cloud e una zona cloud, quindi creare il modello cloud.
  • In Automation Pipelines, aggiungere un endpoint per il repository GitHub locale che ospita il modello cloud. Aggiungere quindi il modello cloud alla pipeline.

Questo esempio di caso d'uso illustra come utilizzare un modello cloud da un repository GitHub locale.

Il workflow consente di navigare nel processo che automatizza il rilascio di un'applicazione distribuita da un modello cloud YAML.

Prerequisiti

  • Aggiungere il codice YAML per l'applicazione WordPress all'istanza di GitHub.
  • Aggiungere un webhook per il trigger Git in modo che la pipeline possa estrarre il codice YAML ogni volta se ne confermano le modifiche. In Automation Pipelines, fare clic su Trigger > Git > Webhook per Git.
  • Per utilizzare un'attività del modello cloud, è necessario disporre di uno qualsiasi dei ruoli di Automation Assembler.

Procedura

  1. In Automation Assembler eseguire i passaggi seguenti.
    1. Fare clic su Modelli, quindi creare un modello cloud e una distribuzione per l'applicazione WordPress.
    2. Incollare nel modello cloud il codice YAML di WordPress copiato negli Appunti e distribuirlo.
      Utilizzando il codice YAML, il modello cloud crea il livello database, il livello Web e la rete nella distribuzione.
  2. In Automation Pipelines creare endpoint.
    1. Creare un endpoint Git per il repository GitHub locale in cui si trova il file YAML.
    2. Aggiungere un endpoint email che può notificare agli utenti lo stato della pipeline quando viene eseguita.


      Quando si aggiungere un endpoint email, è necessario impostare il metodo di crittografia e il protocollo in uscita.
  3. Creare una pipeline e aggiungere notifiche relative all'esito della pipeline.

    Quando si aggiunge una notifica email, è possibile selezionare uno degli stati della pipeline e quindi il server e i destinatari.
  4. Aggiungere una fase per lo sviluppo e aggiungere un'attività Modello cloud.
    1. Aggiungere un'attività modello cloud che distribuisce la macchina e configurarla in modo che utilizzi il codice YAML del modello cloud per l'applicazione WordPress.
      resources:
        DBTier:    
          type: Cloud.Machine    
          properties:      
              name: mysql      
              image: 'ubuntu-16'      
              flavor: 'small'      
              constraints:        
                  -   tag: zone:dev
        WebTier:
          type: Cloud.Machine    
          properties:     
              name: wordpress      
              image: 'ubuntu-16'      
              flavor: 'small'      
              constraints:        
                  - tag: zone:dev
       WP-Network-Private:
          type: Cloud.Network
          properties:
              name: WP-Network-Private
              networkType: existing
              constraints:
                  - tag: 'type:isolated-net'
                  - tag: 'zone:dev'
    2. Aggiungere un'attività modello cloud che elimini definitivamente la macchina per liberare risorse.
  5. Aggiungere una fase per la produzione e includere le attività di approvazione e distribuzione.
    1. Aggiungere un'attività operazione utente per richiedere l'approvazione per rilasciare l'applicazione WordPress alla produzione.
    2. Aggiungere un'attività modello cloud per distribuire la macchina e configurarla con il codice YAML del modello cloud per l'applicazione WordPress.
      Quando si seleziona Crea, il nome della distribuzione deve essere univoco. Se il nome non viene specificato, Automation Pipelines assegna un nome casuale univoco.
      Ecco cosa è necessario sapere se si seleziona Rollback nel proprio caso d'uso: se si seleziona l'azione Rollback e si immette una Versione di rollback, la versione deve essere nel formato n-X. Ad esempio, n-1, n-2, n-3 e così via. Se si crea e si aggiorna la distribuzione in una posizione diversa da Automation Pipelines, il rollback non è consentito.
      L'attività del modello cloud può utilizzare il modello cloud di VMware in Automation Assembler o estrarne uno dal controllo dell'origine in un repository GitLab o in un repository GitHub.
  6. Eseguire la pipeline.

    Per verificare che ogni attività sia stata completata, fare clic sull'attività nell'esecuzione e verificare lo stato nei dettagli della distribuzione per visualizzare informazioni dettagliate sulle risorse.

  7. In GitHub modificare la caratteristica dell'istanza del server WordPress da small a medium.
    Quando si confermano le modifiche, la pipeline viene attivata. Estrae il codice aggiornato dal repository GitHub e crea l'applicazione.
    WebTier:
        type: Cloud.Machine    
        properties:     
            name: wordpress      
            image: 'ubuntu-16'      
            flavor: 'medium'      
            constraints:        
                - tag: zone:dev
  8. Eseguire di nuovo la pipeline, verificare che venga completata e che abbia modificato la caratteristica dell'istanza di WordPress da small a medium.

risultati

Congratulazioni! È stata automatizzata la versione dell'applicazione distribuita da un modello cloud YAML.

Operazioni successive

Per ulteriori informazioni su come utilizzare Automation Pipelines, vedere Tutorial sull'utilizzo di Automation Pipelines.

Per ulteriori informazioni, vedere le risorse aggiuntive in Introduzione a VMware Aria Automation.