Puoi utilizzare Cloud Build per automatizzare le build e i deployment per il servizio Knative utilizzando l'trigger Cloud Build per eseguire automaticamente la compilazione e il deployment del codice ogni volta che vengono eseguiti push di nuovi commit in un determinato ramo di un repository Git.
Quando utilizzi un trigger Cloud Build per creare i container, le informazioni del repository di origine vengono visualizzate nella console Google Cloud per il tuo servizio dopo il deployment in Knative Serving.
Prima di iniziare
- Hai un repository Git con un
Dockerfile
o la tua base di codice è scritta in uno dei linguaggi supportati dai buildpack di Google Cloud: Go, Node.js, Python, Java o .NET Core. -
Enable the Cloud Build and Cloud Source Repositories APIs.
Configurazione del deployment continuo dall'interfaccia utente di Knative serving
La procedura varia leggermente a seconda che tu stia configurando il deployment continuo su un nuovo servizio o su un servizio esistente. Fai clic sulla scheda appropriata per saperne di più.
Nuovo servizio
Vai a Knative serving nella console Google Cloud:
Fai clic su Crea servizio.
Inserisci le tue preferenze in Impostazioni servizio.
Fai clic su Avanti.
Seleziona Esegui il deployment continuo di nuove revisioni da un repository di codice sorgente.
Fai clic su Configura con Cloud Build.
Seleziona il provider e il repository.
- GitHub: se non hai ancora eseguito l'autenticazione, fai clic su Autentica. e segui le istruzioni. Per impostazione predefinita, la connessione di un repository avviene tramite l'app GitHub di Cloud Build. In alternativa, puoi eseguire il mirroring del tuo repository GitHub in Cloud Source Repositories. A tale scopo, fai clic su Opzione avanzata e seleziona Esegui il mirroring del repository GitHub utilizzando Cloud Source Repositories. Scopri di più
- Bitbucket: se non hai ancora eseguito l'autenticazione, fai clic su Autentica e segui le istruzioni.
- Cloud Source Repositories
Fai clic su Avanti.
Compila le opzioni nel passaggio Configurazione build:
- Ramo - indica quale origine deve essere utilizzata quando si esegue trigger. Puoi inserire l'espressione regolare qui. I rami corrispondenti vengono verificati automaticamente: puoi visualizzarli sotto l'input. Tieni presente che se esattamente un ramo viene la corrispondenza, il trigger verrà eseguito automaticamente dopo per la creazione di contenuti.
Tipo di build
Se il repository deve essere creato utilizzando Docker e contiene un Dockerfile, seleziona Dockerfile. Posizione di origine indica la posizione e il nome del Dockerfile. Questa directory verrà utilizzata come Contesto della build Docker. Tutti i percorsi devono essere relativi all'attuale .
In alternativa, seleziona Google Cloud Buildpacks. Utilizza le funzionalità di Buildpack context per specificare la directory e il Entrypoint (facoltativo) per fornire il comando per avviare il server. Esempio:
gunicorn -p :8080 main:app
per Python,java -jar target/myjar.jar
per Java. Lascia vuoto per utilizzare il campo comportamento predefinito.
Fai clic su Salva.
Verifica le impostazioni selezionate.
Fai clic su Crea.
Tieni presente che verrà visualizzata la pagina Dettagli servizio, in cui puoi monitorare l'avanzamento della configurazione del deployment continuo.
Una volta completati tutti i passaggi, aggiungi altre opzioni:
- Pulsante Modifica il deployment continuo.
- Cronologia build.
- Dettagli dell'origine nella sezione Dettagli revisione.
Servizio esistente
Vai a Erogazione Knative nella console Google Cloud:
Individua il servizio nell'elenco dei servizi e fai clic su di esso.
Fai clic su Configura il deployment continuo.
Seleziona il provider e il repository.
- GitHub: se non hai ancora eseguito l'autenticazione, fai clic su Autentica e segui le istruzioni. Per impostazione predefinita, la connessione di un repository è completata tramite l'app GitHub di Cloud Build. In alternativa, puoi eseguire il mirroring GitHub di ASL in Cloud Source Repositories. A tale scopo, fai clic su Opzione avanzata e seleziona Esegui il mirroring del repository GitHub utilizzando Cloud Source Repositories Scopri di più
- Bitbucket: se non hai ancora eseguito l'autenticazione, fai clic su Autentica. e segui le istruzioni.
- Cloud Source Repositories
Fai clic su Avanti.
Compila le opzioni nel passaggio Configurazione build:
- Branch: indica quale origine deve essere utilizzata durante l'esecuzione dell'attivatore. Puoi inserire l'espressione regolare qui. I rami corrispondenti vengono verificati automaticamente: puoi sotto l'input. Tieni presente che se esattamente un ramo viene la corrispondenza, il trigger verrà eseguito automaticamente dopo per la creazione di contenuti.
Tipo di build
Se il repository deve essere creato utilizzando Docker e contiene un Dockerfile, seleziona Dockerfile. Posizione di origine indica la posizione e il nome del Dockerfile. Questa directory verrà utilizzata come Contesto della build Docker. Tutti i percorsi devono essere relativi all'attuale .
In caso contrario, seleziona Google Cloud Buildpacks. Utilizza le funzionalità di Buildpack context per specificare la directory e il Entrypoint (facoltativo) per fornire il comando per avviare il server. Esempio:
gunicorn -p :8080 main:app
per Python,java -jar target/myjar.jar
per Java. Lascia vuoto per utilizzare il campo comportamento predefinito.
Fai clic su Salva.
La pagina si ricarica e mostra l'avanzamento del Configurazione del deployment continuo.
Una volta completati tutti i passaggi, tieni presente le opzioni aggiuntive:
- Pulsante Modifica il deployment continuo.
- Cronologia build.
- Dettagli dell'origine nella sezione Dettagli revisione.
Configurazione manuale del deployment continuo
Consulta Configurazione manuale del deployment continuo se devi utilizzare una procedura manuale e non la UI.
Collega il trigger di Cloud Build esistente al servizio Knative serving.
Se hai già un attivatore Cloud Build, puoi collegarlo al servizio e sfruttare le funzionalità della console Google Cloud nella pagina Dettagli servizio: pulsante Modifica il deployment continuo e grafico Cronologia build.
Per farlo, devi aggiungere un'etichetta con gcb-trigger-id come chiave e L'identificatore univoco del trigger di Cloud Build come valore (non il trigger ). Consulta le istruzioni per la configurazione dell'etichetta.