Guida rapida: esegui il deployment di Cloud Functions con il controllo della versione

Esegui il deployment di Cloud Functions con il controllo della versione

Questa pagina mostra come eseguire il deployment di Cloud Functions utilizzando il codice controllato in versione Cloud Source Repositories.

Integrando Cloud Functions con Cloud Source Repositories, puoi utilizzare Cloud Source Repositories per controllare la versione del codice che contiene la funzione. Man mano che la funzione cambia nel tempo, puoi continuare ad accedere agli impegni precedenti per vedere come è cambiata la funzione e quando.

Prima di iniziare

  1. Completa i passaggi descritti in Crea un repository di codice in Cloud Source Repositories.
  2. Abilita l'API Cloud Functions e l'API Cloud Build.
  3. Abilita l'API Cloud Functions e l'API Cloud Build

Aggiungi una funzione al repository

  1. Sul computer locale, vai alla directory radice del repository hello-world:

    cd hello-world
    
  2. Sul tuo sistema locale, crea una directory per il codice della funzione.

    Linux o macOS

    Crea la directory:

    mkdir gcf_hello_world

    Passa alla directory:

    cd gcf_hello_world

    Windows(CMD)

    Crea la directory:

    mkdir %HOMEDRIVE%%HOMEPATH%\gcf_hello_world

    Passa alla directory:

    cd %HOMEDRIVE%%HOMEPATH%\gcf_hello_world
  3. Nella directory gcf_hello_world, crea un file index.js con i seguenti contenuti:

    /* HTTP Cloud Function.
    *
    * @param {Object} req Cloud Function request context.
    * @param {Object} res Cloud Function response context.
    */
    exports.helloGET = (req, res) => {
      res.send('Hello from Cloud Functions and Cloud Source Repositories');
    };
    

    Si tratta di una funzione semplice denominata helloGET che risponde alle richieste HTTP GET con il testo Hello from Cloud Functions and Cloud Source Repositories.

Esegui il push a Cloud Source Repositories

Esegui il push dei file appena creati in Cloud Source Repositories.

  1. Aggiungi i file:

    git add .
    
  2. Esegui il commit dei file con un commento che descrive la cronologia di questa azione:

    git commit -m "Add Cloud Functions test to Cloud Source Repositories"
    
  1. Utilizzando il comando git push, aggiungi i contenuti del repository Git locale a Cloud Source Repositories:

    git push origin master
    

Crea la funzione ed eseguine il deployment

Utilizzando la console Google Cloud o Google Cloud CLI, crea ed esegui il deployment della funzione.

Console

  1. Vai alla pagina Cloud Functions.

    Vai alla pagina Cloud Functions

    Assicurati che il progetto Google Cloud per il quale hai abilitato Cloud Functions sia selezionato.

  2. Fai clic su Crea funzione.

  3. Nella pagina Crea funzione, compila le seguenti opzioni:

    • Nel campo Ambiente, seleziona 1a generazione.
    • Nel campo Nome funzione, digita cloud-source-repositories-test.
    • Nel campo Regione, seleziona us-central1.
    • Nell'elenco Trigger, seleziona HTTP.
    • Nell'elenco Autenticazione, seleziona Richiedi autenticazione.
    • Assicurati che l'opzione Richiedi HTTPS sia selezionata.
  4. Fai clic su Salva.

  5. Tocca Next (Avanti).

    • Nel campo Runtime (Runtime), seleziona Node.js 16.
    • Nel campo Punto di ingresso, inserisci helloGET.
    • Nell'elenco Codice sorgente, seleziona Cloud Source Repositories.
    • Nel campo Repository, digita hello-world.
    • Nel campo Nome ramo, digita master (principale).
    • Nel campo Directory con codice sorgente, digita /gcf_hello_world.
  6. Fai clic su Esegui il deployment.

Durante l'esecuzione del deployment, accanto alla rotellina appare una piccola rotellina. Al termine del deployment, al posto della rotellina appare un segno di spunta verde.

Interfaccia a riga di comando gcloud

  1. In una finestra del terminale, imposta una variabile contenente l'ID del tuo progetto Google Cloud. Assicurati che sia lo stesso progetto Google Cloud che contiene il repository.

    export PROJECT_ID=$(gcloud config list --format 'value(core.project)')
    
  2. Esegui il deployment della funzione:

    gcloud functions deploy helloGET \
    --source https://source.developers.google.com/projects/$PROJECT_ID/repos/hello-world/moveable-aliases/master/paths/gcf_hello_world \
    --trigger-http \
    --runtime=nodejs8;
    

Per ulteriori informazioni sul deployment in Cloud Source Repositories, consulta Deployment dal controllo del codice sorgente.

Testa la funzione

Utilizza la console di GCP o l'gcloud CLI e verifica la nuova funzione.

Console

  1. Vai alla pagina Panoramica di Cloud Functions.

    Vai alla pagina Panoramica

    Assicurati che il progetto Google Cloud per cui hai abilitato Cloud Functions sia selezionato.

  2. Fai clic sul menu Mostra azioni nella riga della funzione cloud-source-repositories-test.

  3. Fai clic su Esegui test funzione.

  4. Fai clic sul pulsante Testa la funzione.

    Dopo uno o due minuti, il campo Output viene aggiornato per mostrare il messaggio Hello from Cloud Functions and Cloud Source Repositories.

Interfaccia a riga di comando gcloud

In una finestra del terminale, inserisci questo comando:

gcloud functions call helloGET

È visualizzato un output simile al seguente:

executionId: owqd9fdh5od2
result: Hello from Cloud Functions and Cloud Source Repositories

Esegui la pulizia

Per eliminare la funzione e il repository che hai creato, segui questi passaggi.

Elimina la funzione

  1. Vai alla pagina Panoramica di Cloud Functions.

    Vai alla pagina Panoramica

    Assicurati che il progetto Google Cloud per cui hai abilitato Cloud Functions sia selezionato.

  2. Seleziona la funzione helloGET per questa guida rapida, cloud-source-repositories-test.

  3. Nella stessa riga, fai clic su Altro e poi su Elimina.

Elimina il repository

  1. Nella console di GCP, apri la pagina Tutti i repository per Cloud Source Repositories.

    Apri Cloud Source Repositories

  2. Tieni il puntatore sul repository che vuoi eliminare e fai clic su Impostazioni .

    Si apre la pagina Impostazioni generali.

  3. Fai clic su Elimina questo repository. .

    Si apre la finestra di dialogo Rimuovi repository.

  4. Digita il nome del repository che vuoi eliminare.

  5. Fai clic su Elimina.

Passaggi successivi