Crea CICD per l'integrazione

Questo tutorial descrive come automatizzare la promozione di un'integrazione tra diversi ambienti in diversi progetti Google Cloud utilizzando le variabili di configurazione (anteprima).

Panoramica

In questo tutorial, automatizzerai i deployment di Application Integration utilizzando la variabile di configurazione per un'integrazione di esempio. Questo flusso di integrazione di esempio chiama un'API e pubblica la risposta dell'API in un argomento Pub/Sub. Questo esempio ha lo scopo di illustrare l'utilizzo delle attività Chiamata endpoint REST e Connettori. Puoi archiviare l'integrazione di esempio nei repository GitHub che corrispondono ai diversi ambienti e Google Cloud progetti.

Obiettivi

Questo tutorial mostra come completare le seguenti attività nell'integrazione:

  • Crea un'integrazione.
  • Crea variabili di configurazione e utilizzale nell'integrazione.
  • Promuovi l'integrazione in un altro ambiente.

Costi

In questo tutorial utilizzerai i seguenti componenti fatturabili di Google Cloud:

Le istruzioni riportate in questo tutorial sono pensate per mantenere l'utilizzo delle risorse entro i limiti di Google Cloud Funzionalità cloud senza costi e offerta di prova.

Al termine delle attività descritte in questo documento, puoi evitare l'addebito di ulteriori costi eliminando le risorse che hai creato. Per saperne di più, consulta Esegui la pulizia.

Prima di iniziare

  1. Accedi al tuo Google Cloud account. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Secret Manager API, Connectors API APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. Create a service account:

    1. Ensure that you have the Create Service Accounts IAM role (roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles.
    2. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    3. Select your project.
    4. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    5. Click Create and continue.
    6. Grant the Pub/Sub Publisher (roles/pubsub.publisher) role to the service account.

      To grant the role, find the Select a role list, then select Pub/Sub Publisher (roles/pubsub.publisher).

    7. Click Continue.
    8. Click Done to finish creating the service account.

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. Verify that billing is enabled for your Google Cloud project.

  8. Enable the Secret Manager API, Connectors API APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  9. Create a service account:

    1. Ensure that you have the Create Service Accounts IAM role (roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles.
    2. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    3. Select your project.
    4. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    5. Click Create and continue.
    6. Grant the Pub/Sub Publisher (roles/pubsub.publisher) role to the service account.

      To grant the role, find the Select a role list, then select Pub/Sub Publisher (roles/pubsub.publisher).

    7. Click Continue.
    8. Click Done to finish creating the service account.

Crea un argomento Pub/Sub

  1. Nella Google Cloud console, vai alla pagina Argomenti di Pub/Sub.

    Vai ad Argomenti

  2. Fai clic su Crea argomento.

  3. Nel campo ID argomento, inserisci un ID per l'argomento. Per saperne di più sulla denominazione degli argomenti, consulta Linee guida per la denominazione di un argomento, una sottoscrizione, uno schema o uno snapshot.

  4. Mantieni l'opzione Aggiungi una sottoscrizione predefinita.

  5. Non selezionare le altre opzioni.

  6. Fai clic su Crea argomento.

Configura un connettore Pub/Sub

  1. Nella Google Cloud console, vai alla pagina Integration Connectors > Connessioni e seleziona o crea un Google Cloud progetto.

    Vai alla pagina Connessioni

  2. Fai clic su + Crea nuovo per aprire la pagina Crea connessione.
  3. Nella sezione Località, scegli la località per la connessione.
    1. Regione: seleziona una località dall'elenco a discesa.

      Per l'elenco di tutte le regioni supportate, consulta Località.

    2. Fai clic su AVANTI.
  4. Nella sezione Dettagli connessione, completa quanto segue:
    1. Connettore: seleziona Pub/Sub dall'elenco a discesa dei connettori disponibili.
    2. Versione del connettore: seleziona la versione del connettore dall'elenco a discesa delle versioni disponibili.
    3. Nel campo Nome connessione, inserisci pub-sub-connector.
    4. Service account: seleziona un account di servizio con i ruoli richiesti.
    5. ID progetto: Google Cloud ID progetto in cui risiede l'istanza Pub/Sub.
    6. ID argomento: inserisci il nome dell'argomento Pub/Sub.
    7. Fai clic su Avanti.
  5. Nella sezione Autenticazione, fai clic su AVANTI.
  6. Esamina: esamina i dettagli della connessione e dell'autenticazione.
  7. Fai clic su Crea.

Crea una nuova integrazione

Dopo aver configurato Application Integration, puoi creare una nuova integrazione:

  1. Nella console Google Cloud, vai alla pagina Application Integration.

    Vai ad Application Integration

  2. Nel menu di navigazione a sinistra, fai clic su Integrazioni per aprire la pagina Integrazioni.
  3. Fai clic su Crea integrazione e fornisci i seguenti dettagli nella pagina Crea integrazione:
    1. Nome integrazione: inserisci un nome per l'integrazione. Ad esempio, build-cicd.
    2. Descrizione: facoltativamente, inserisci una descrizione per l'integrazione. Ad esempio, Demo integration created for CICD tutorial.
    3. Regione: seleziona la regione us-central1 dall'elenco delle regioni di cui è stato eseguito il provisioning regioni. Se la regione che vuoi selezionare non è stata sottoposta a provisioning, consulta Eseguire il provisioning di una nuova regione. Per visualizzare un elenco delle regioni supportate, consulta Località di Application Integration.
    4. Service account: questo campo viene visualizzato se hai abilitato la governance per la tua regione. Seleziona il account di servizio per l'integrazione. Per scoprire come abilitare la governance per la tua regione, consulta Modificare la regione.
    5. Fai clic su Crea. Viene visualizzata la pagina dell'Editor integrazioni, in cui puoi aggiungere le attività e i trigger per creare l'integrazione.

Crea un flusso di integrazione

Aggiungi un trigger API e una chiamata endpoint REST

Per aggiungere un trigger API trigger :
  1. Nella Google Cloud console, vai alla pagina Application Integration.

    Vai ad Application Integration

  2. Nel menu di navigazione, fai clic su Integrazioni.

    Viene visualizzata la pagina Elenco integrazioni con tutte le integrazioni disponibili nel progetto Google Cloud.

  3. Seleziona l'integrazione build-cicd.

    L'integrazione si apre nell'Editor integrazioni.

  4. Nella barra di navigazione dell'Editor integrazioni, fai clic su Trigger > Trigger API per aggiungere il trigger.
  5. Nella barra di navigazione dell'Editor integrazioni, fai clic su Attività > Chiamata endpoint REST per aggiungere l'attività.
  6. Aggiungi una connessione edge dall'elemento API trigger all'elemento Chiamata endpoint REST. Passa il mouse sopra un punto di controllo sull'elemento API trigger e fai clic e trascina una riga su un punto di controllo nell'elemento attività Chiamata endpoint REST.

Crea variabili di configurazione

Per creare variabili di configurazione:
  1. Nella barra di navigazione dell'Editor integrazioni, fai clic su (Attiva/disattiva riquadro) per visualizzare il riquadro Variabili.
  2. Fai clic su +Crea.
  3. Nel riquadro Crea variabile :
    1. In Nome, inserisci url.

      Application Integration aggiunge il prefisso `CONFIG_ alle variabili di configurazione. Se vuoi aggiungere la variabile di configurazione all'integrazione utilizzando le API, utilizza il seguente formato per le variabili di configurazione: `CONFIG_CONFIG_VARIABLE_NAME`. Per informazioni su come scaricare e caricare le integrazioni, consulta Caricare e scaricare le integrazioni.

    2. In Tipo di variabile, seleziona Variabile di configurazione.
    3. In Tipo di dati, seleziona Stringa.
    4. Fai clic su Crea.

      La variabile di configurazione viene visualizzata nel riquadro Variabili.

  4. Ripeti i passaggi 2 e 3 per aggiungere la seguente variabile di configurazione:
    • Nome: connection_name
    • Tipo di variabile: Config Variable
    • Tipo di dati: String

Aggiungi e configura la chiamata endpoint REST

Per creare una variabile di configurazione:
  1. Nell'Editor integrazioni, fai clic sull'attività Chiamata endpoint REST per aprire il riquadro di configurazione dell'attività. Poi:
    1. Espandi la sezione Input attività.
    2. In URL di base dell'endpoint , fai clic su Variabile e aggiungi $`CONFIG_url`$.

Aggiungi e configura un'attività Connettori

  1. Nella barra di navigazione dell'Editor integrazioni, fai clic su Attività > Connettori.
  2. Fai clic su Configura connettori.
  3. Nell'elenco Regione, seleziona la regione in cui hai creato il connettore Pub/Sub.
  4. Nel campo Connessione, seleziona il connettore Pub/Sub che hai creato nel passaggio precedente.
  5. Nella sezione Tipo, seleziona Azioni.
  6. Nella sezione Imposta entità/azioni, in Azioni, seleziona publishMessage.
  7. In Valore predefinito, aggiungi il valore predefinito per la variabile di configurazione.
  8. Fai clic su Crea.
  9. Nel riquadro di configurazione dell'attività Connettori, espandi la sezione Dettagli connessione per aggiornare il seguente campo:
    1. Nel campo Nome connessione, fai clic su Variabile e seleziona $`CONFIG_connection_name`$.

Aggiungi un'attività di mappatura dei dati

  1. Nella barra di navigazione dell'Editor integrazioni, fai clic su Attività > Mappatura dei dati.
  2. Aggiungi una connessione edge dall'elemento Chiamata endpoint REST all'elemento Mappatura dei dati. Passa il mouse sopra un punto di controllo sull'elemento Chiamata endpoint REST e fai clic e trascina una riga su un punto di controllo nell'elemento attività Mappatura dei dati.
  3. Aggiungi un'altra connessione edge dall'elemento Mappatura dei dati all'elemento Connettori. Passa il mouse sopra un punto di controllo sull'elemento Mappatura dei dati e fai clic e trascina una riga su un punto di controllo nell'elemento attività Connettori.
  4. Nel riquadro di configurazione dell'attività Mappatura dei dati, fai clic su Apri Editor mappatura dei dati.
  5. Mappa la variabile di output dell'attività Chiamata endpoint REST alla variabile di input dell'attività Connettori.

Pubblica l'integrazione

Per pubblicare l'integrazione:
  1. Per pubblicare l'integrazione, fai clic su Pubblica nella barra degli strumenti dell'Editor integrazioni.

    Viene visualizzata la finestra di dialogo Pubblica integrazione.

  2. Nella finestra di dialogo Pubblica integrazione, inserisci il valore per le seguenti variabili di configurazione:
    1. url: inserisci il nome dell'URL dell'endpoint.
    2. connection_name: inserisci il nome del connettore Pub/Sub che hai creato nel passaggio precedente.
  3. Fai clic su Pubblica.
  4. Dopo aver pubblicato l'integrazione, puoi visualizzare ed esaminare i log di esecuzione dell'integrazione pubblicata. Per visualizzare i log, fai clic su Log nella barra degli strumenti dell'Editor integrazioni.

Promuovi l'integrazione tra gli ambienti

Per promuovere l'integrazione tra gli ambienti, puoi utilizzare lo strumento integrationcli, uno strumento open source che ti consente di interagire con le API di Application Integration e le API di Integration Connectors. Questo strumento ti consente di gestire le entità di integrazione come integrazioni, configurazioni di autenticazione e così via. Per informazioni su come generare lo scheletro per l'integrazione e applicare le modifiche generate dallo scheletro, consulta Introduzione a integrationcli nel blog della community.

Puoi anche promuovere le modifiche tra gli ambienti configurando le pipeline DevOps, ad esempio utilizzando Jenkins, GitLab, Cloud Build e così via. Per saperne di più, consulta Integrazione con Cloud Build.

Se non vuoi utilizzare integrationcli, puoi scaricare e caricare manualmente l'integrazione in un nuovo progetto. Dovrai creare manualmente i connettori nel nuovo progetto, poiché al momento non sono scaricabili. Quando pubblichi l'integrazione nel nuovo ambiente, Application Integration ti consente di inserire i valori per le variabili di configurazione.

Passaggi successivi