Puedes usar Cloud Build para automatizar las compilaciones y los despliegues en Knative Serving mediante un activador de Cloud Build para compilar y desplegar automáticamente tu código cada vez que se envíen nuevas confirmaciones a una determinada rama de un repositorio de Git.
Cuando usas un activador de Cloud Build para compilar contenedores, la información del repositorio de origen se muestra en la consola de Google Cloud de tu servicio después de hacer el despliegue en Knative Serving.
Antes de empezar
- Tienes un repositorio de Git con un
Dockerfile
o tu base de código está escrita en uno de los lenguajes compatibles con los paquetes de compilación de Google Cloud: Go, Node.js, Python, Java o .NET Core. -
Enable the Cloud Build and Cloud Source Repositories APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.
Configurar la implementación continua desde la interfaz de usuario de Knative Serving
El procedimiento varía ligeramente en función de si vas a configurar la implementación continua en un servicio nuevo o en uno que ya tengas. Haz clic en la pestaña correspondiente para obtener más información.
Nuevo servicio
Ve a Knative Serving en la Google Cloud consola:
Haz clic en Crear servicio.
En Configuración del servicio, indica tus preferencias.
Haz clic en Siguiente.
Selecciona Desplegar continuamente nuevas revisiones desde el repositorio de origen.
Haz clic en Configurar con Cloud Build.
Selecciona el proveedor y el repositorio.
- GitHub si aún no te has autenticado, haz clic en Autenticar y sigue las instrucciones. De forma predeterminada, los repositorios se conectan a través de la aplicación GitHub para Cloud Build. También puedes replicar tu repositorio de GitHub en Cloud Source Repositories. Para ello, haz clic en Opciones avanzadas y marca Duplicar repositorio de GitHub con Cloud Source Repositories. Más información
- Bitbucket: si aún no te has autenticado, haz clic en Autenticar y sigue las instrucciones.
- Cloud Source Repositories
Haz clic en Siguiente.
Rellena las opciones del paso Configuración de compilación:
- Rama: indica qué fuente se debe usar al ejecutar el activador. Puedes poner la regex aquí. Las ramas coincidentes se verifican automáticamente: puedes verlas debajo de la entrada. Ten en cuenta que, si se encuentra exactamente una rama, el activador se ejecutará automáticamente después de la creación.
Tipo de compilación
Si tu repositorio se debe compilar con Docker y contiene un Dockerfile, selecciona Dockerfile. Ubicación de la fuente indica la ubicación y el nombre del Dockerfile. Este directorio se usará como contexto de compilación de Docker. Todas las rutas deben ser relativas al directorio actual.
De lo contrario, selecciona Google Cloud Buildpacks. Usa Contexto de paquete de compilación para especificar el directorio y Punto de entrada (opcional) para proporcionar el comando que inicia el servidor. Ejemplo:
gunicorn -p :8080 main:app
para Pythonjava -jar target/myjar.jar
para Java. Déjelo en blanco para usar el comportamiento predeterminado.
Haz clic en Guardar.
Verifica los ajustes seleccionados.
Haz clic en Crear.
Ten en cuenta que se te redirigirá a la página Detalles del servicio, donde podrás monitorizar el progreso de la configuración de la implementación continua.
Una vez completados todos los pasos, ten en cuenta las opciones adicionales:
- Botón Editar despliegue continuo.
- Historial de versiones.
- Detalles de la fuente en la sección Detalles de la revisión.
Servicio actual
Ve a Knative Serving en la Google Cloud consola:
Busca el servicio en la lista de servicios y haz clic en él.
Haz clic en Configurar despliegue continuo.
Selecciona el proveedor y el repositorio.
- GitHub si aún no te has autenticado, haz clic en Autenticar y sigue las instrucciones. De forma predeterminada, los repositorios se conectan a través de la aplicación GitHub para Cloud Build. También puedes replicar tu repositorio de GitHub en Cloud Source Repositories. Para ello, haz clic en Opciones avanzadas y marca Duplicar repositorio de GitHub con Cloud Source Repositories. Más información
- Bitbucket: si aún no te has autenticado, haz clic en Autenticar y sigue las instrucciones.
- Cloud Source Repositories
Haz clic en Siguiente.
Rellena las opciones del paso Configuración de compilación:
- Rama: indica qué fuente se debe usar al ejecutar el activador. Puedes poner la regex aquí. Las ramas coincidentes se verifican automáticamente: puedes verlas debajo de la entrada. Ten en cuenta que, si se encuentra exactamente una rama, el activador se ejecutará automáticamente después de la creación.
Tipo de compilación
Si tu repositorio se debe compilar con Docker y contiene un Dockerfile, selecciona Dockerfile. Ubicación de la fuente indica la ubicación y el nombre del Dockerfile. Este directorio se usará como contexto de compilación de Docker. Todas las rutas deben ser relativas al directorio actual.
De lo contrario, selecciona Google Cloud Buildpacks. Usa Contexto de paquete de compilación para especificar el directorio y Punto de entrada (opcional) para proporcionar el comando que inicia el servidor. Ejemplo:
gunicorn -p :8080 main:app
para Pythonjava -jar target/myjar.jar
para Java. Déjelo en blanco para usar el comportamiento predeterminado.
Haz clic en Guardar.
La página se vuelve a cargar y muestra el progreso de la configuración de la implementación continua.
Una vez completados todos los pasos, ten en cuenta las opciones adicionales:
- Botón Editar despliegue continuo.
- Historial de versiones.
- Detalles de la fuente en la sección Detalles de la revisión.
Configurar el despliegue continuo manualmente
Consulta la sección Configurar la implementación continua manualmente si necesitas usar un procedimiento manual en lugar de la interfaz de usuario.
Adjunta un activador de Cloud Build a un servicio de Knative Serving.
Si ya tienes un activador de Cloud Build, puedes asociarlo al servicio y aprovechar las funciones de la consola en la página Detalles del servicio: el botón Editar despliegue continuo y el gráfico Historial de compilaciones. Google Cloud
Para ello, debe añadir una etiqueta con gcb-trigger-id como clave y el identificador único del activador de Cloud Build como valor (no el nombre del activador). Consulta las instrucciones para configurar la etiqueta.