En esta página, se describe cómo crear conexiones a GitHub y vínculos a repositorios de GitHub. Puedes completar estas tareas con la Google Cloud consola, o Google Cloud CLI.
Estas instrucciones están dirigidas a desarrolladores de aplicaciones, administradores de plataformas y administradores de seguridad que deseen usar repositorios de código fuente de GitHub con Google.
Por ejemplo, puedes obtener sugerencias de codificación de Gemini Code Assist, adaptadas a tu base de código, o puedes usar tus repositorios de GitHub vinculados para desarrollar apps web con Firebase App Hosting.
Para obtener más información sobre Developer Connect, consulta Descripción general de Developer Connect.
Antes de comenzar
-
Accede a tu cuenta de Google.
Si todavía no tienes una cuenta, regístrate para obtener una nueva.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Asegúrate de tener acceso a una cuenta en GitHub.
Para ayudar a proteger el trabajo de tu equipo, te recomendamos que completes las tareas de esta guía con una cuenta de bot o una cuenta compartida por tu equipo, no con una cuenta personal.
- Asegúrate de ser propietario de un repositorio de GitHub o de tener permisos de nivel de administrador en un repositorio compartido.
- Opcional: Crea una clave de encriptación administrada por el cliente (CMEK) para encriptar los secretos de autenticación que crea Developer Connect.
- Para usar las instrucciones de línea de comandos de esta guía, completa los siguientes pasos (opcional):
- Instala la Google Cloud CLI. Si ya instalaste gcloud CLI, ejecuta
gcloud components updatepara asegurarte de tener la última versión disponible. - Ejecuta el siguiente comando para crear una cuenta de servicio de Developer Connect, en el que PROJECT_ID es el Google Cloud ID del proyecto:
gcloud beta services identity create \ --service=developerconnect.googleapis.com \ --project=PROJECT_ID
- Instala la Google Cloud CLI. Si ya instalaste gcloud CLI, ejecuta
Cuando habilitas Developer Connect, también se habilita la API de Secret Manager.
Roles obligatorios
Para obtener los permisos que necesitas para crear conexiones y vínculos, pídele a tu administrador que te otorgue los siguientes roles de IAM:
-
Si no eres el propietario del proyecto:
Administrador de Developer Connect (
roles/developerconnect.admin) en tu cuenta de usuario. -
Si planeas usar una CMEK para encriptar los secretos que crea Developer Connect:
Encriptador/Desencriptador de CryptoKeys de Cloud KMS (
roles/cloudkms.cryptoKeyEncrypterDecrypter) en la cuenta de servicio de Secret Manager. -
Si planeas usar gcloud CLI para completar los pasos de esta guía:
Rol de administrador de Secret Manager (
roles/secretmanager.admin) en la cuenta de servicio de Developer Connect. -
Si planeas usar la Google Cloud consola para completar los pasos de esta guía:
Administrador de IAM de proyectos (
roles/resourcemanager.projectIamAdmin) en tu cuenta de usuario
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.
Crear una conexión
En esta sección, se describe cómo crear una conexión entre Developer Connect y GitHub. Si usas la Google Cloud consola, también puedes comenzar a agregar vínculos a los repositorios cuando termines de configurar la conexión.
Para crear una conexión nueva de GitHub, selecciona una de las siguientes opciones:
Console
Para iniciar una conexión, completa los siguientes pasos:
En la Google Cloud consola, abre Developer Connect.
Developer Connect muestra la página Repositorios de Git.
- Si ves una lista de proveedores de administración de código fuente: Para configurar tu primera conexión, selecciona un proveedor de administración de código fuente. Haz clic en Conectar en la tarjeta de GitHub.
Si ves una tabla con las conexiones existentes: Para configurar el proveedor de administración de código fuente, haz clic en Crear conexión > GitHub.
Se abrirá la página Crear conexión.
En Región, elige una región para los recursos de conexión.
- En Nombre, ingresa un nombre para la conexión nueva.
Activa la casilla de verificación Habilitar una conexión que cumpla con la residencia de datos para que esta conexión cumpla con los requisitos de residencia de datos.
Las conexiones de GitHub creadas con la Google Cloud consola cumplen con la residencia de datos si activas esta casilla de verificación cuando creas la conexión. Cuando lo haces, Developer Connect crea una app de GitHub.
Cuando creas conexiones de GitHub con Google Cloud CLI, esas conexiones no cumplen con la residencia de datos. Todos los demás tipos de conexión cumplen con la residencia de datos.
Haz clic en Mostrar más para ver la configuración opcional.
Opcional: En la sección Encriptación, selecciona una clave de CMEK para encriptar los secretos de Secret Manager que crea Developer Connect.
Opcional: De forma predeterminada, Developer Connect puede actuar como un proxy para las llamadas de Git a GitHub. Para inhabilitar esta opción, desmarca la casilla de verificación Habilitar el proxy de Developer Connect.
Haz clic en Continuar.
Haz clic en Entiendo y continúo para aceptar compartir tu token de OAuth de GitHub con Developer Connect y almacenarlo en Secret Manager.
Accede a GitHub si se te solicita.
Haz clic en Autorizar Developer Connect para permitir que la app de Google Developer Connect acceda a tu cuenta de GitHub.
Si no ves esta solicitud, significa que ya se otorgó la autorización en esta cuenta.
Si seleccionaste Habilitar una conexión que cumpla con la residencia de datos, se te solicitará que crees una app de GitHub.
Proporciona un nombre para esta app de GitHub.
Haz clic en Crear app de GitHub.
Selecciona el destino en el que deseas instalar la app (tu cuenta de GitHub o una organización).
Selecciona los repositorios para los que deseas instalar la app de GitHub o Todos los repositorios y haz clic en Instalar.
Selecciona los repositorios que deseas vincular para esta conexión y haz clic en Aceptar.
Haz clic en Vincular.
GitHub crea un token y Developer Connect lo almacena en tu Google Cloud proyecto como un secreto de Secret Manager. Para obtener más información sobre la administración de secretos, consulta Cómo ver los detalles de los secretos.
Si habilitaste la residencia de datos, ahora tienes una app de GitHub que puedes administrar haciendo clic en Administrar instalación en la página Detalles de la conexión.
Configura la conexión
Los siguientes pasos son obligatorios si no activaste la casilla de verificación Habilitar una conexión que cumpla con la residencia de datos.
Otorga permisos en tu cuenta de GitHub y vincula los repositorios con las siguientes instrucciones. Las solicitudes que ves en tu navegador web dependen de si la cuenta de GitHub ya tiene instalada la app de GitHub de Developer Connect.
En el diálogo de Developer Connect, completa los siguientes pasos:
Si ves una lista de cuentas de GitHub, instala la app y vincula los repositorios completando estos pasos:
Elige la cuenta de GitHub que deseas usar.
Selecciona uno o más repositorios a los que deseas otorgar acceso.
Si ves una solicitud para volver a usar una instalación de app existente, elige dónde configurar la app completando estos pasos:
Haz clic en Cuenta de GitHub para ver las cuentas que tienen instalada la app de Google Developer Connect. Si ves la cuenta que deseas usar, elígela haciendo clic en Confirmar.
Si no ves la cuenta que deseas usar, haz lo siguiente:
Elige Instalar la app de GitHub en otra cuenta de GitHub y haz clic en Confirmar.
Sigue los pasos de GitHub para permitir la instalación de la app.
Selecciona uno o más repositorios a los que deseas otorgar acceso.
Cuando se cierre el diálogo, se completará la instalación de la app.
Una vez que se crea la conexión, aparece la página Vincular repositorios.
Completa los siguientes pasos para vincular repositorios a tu conexión:
En la lista de repositorios disponibles, selecciona los que deseas usar.
Haz clic en Aceptar.
Haz clic en Vincular.
Tu conexión se agrega a la página Conexiones y los vínculos de tu repositorio se agregan a la página Repositorios en la Google Cloud consola. Puedes agregar más vínculos a las conexiones existentes en cualquier momento.
Si estás configurando Gemini Code Assist, continúa el proceso siguiendo los pasos que se indican en Configura y usa la personalización de código de Gemini Code Assist.
gcloud
Las siguientes tareas requieren algunas acciones en tu navegador web.
Para iniciar una conexión, completa los siguientes pasos:
Ejecuta el
gcloud developer-connect connections createcomando para crear una conexión a GitHub:gcloud developer-connect connections create CONNECTION_NAME \ --location=REGION \ --github-config-app=APP_TYPE --git-proxy-config-enabledReemplaza lo siguiente:
- CONNECTION_NAME: Es el nombre de tu conexión.
- REGION: Es la región de tu conexión.
APP_TYPE: Es el tipo de app que se instalará en GitHub. Uno de los siguientes:
FIREBASEpara usar con Firebase App HostingDATAFORMpara usar con DataformGEMINI_CODE_ASSISTpara usar con Gemini Code AssistDEVELOPER_CONNECTpara usar con todo lo demás--git-proxy-config-enabled: Es una marca opcional que permite que Developer Connect actúe como un proxy para las llamadas de Git a GitHub. Esta función se encuentra en vista previa.
Se crea un nombre de conexión.
Para terminar de crear la conexión, instala la app de GitHub de Developer Connect. Ejecuta el siguiente comando para obtener el URI para la instalación de la app:
gcloud developer-connect connections describe CONNECTION_NAME \ --location=REGIONReemplaza lo siguiente:
- CONNECTION_NAME: Es el nombre de tu conexión.
- REGION: Es la región de tu conexión.
Developer Connect muestra un vínculo para completar los siguientes pasos en una ventana del navegador. Cópielo.
Abre el vínculo en un navegador web.
Haz clic en Entiendo y continúo para aceptar compartir tu token de OAuth de GitHub con Developer Connect y almacenarlo en Secret Manager.
Accede a GitHub si se te solicita.
Haz clic en Autorizar Developer Connect para permitir que la app de Google Developer Connect acceda a tu cuenta de GitHub.
Si no ves esta solicitud, significa que ya se otorgó la autorización en esta cuenta.
GitHub crea un token y Developer Connect lo almacena en tu Google Cloud proyecto como un secreto de Secret Manager. Para obtener más información sobre la administración de secretos, consulta Cómo ver los detalles de los secretos.
Si habilitaste una conexión que cumpla con la residencia de datos, ahora tienes una app de GitHub que puedes administrar haciendo clic en Administrar instalación en la página Detalles de la conexión.
Configura la conexión
Otorga permisos en tu cuenta de GitHub y vincula los repositorios con las siguientes instrucciones. Las solicitudes que ves en tu navegador web dependen de si la cuenta de GitHub ya tiene instalada la app de GitHub de Developer Connect.
En el diálogo de Developer Connect, completa los siguientes pasos:
Si ves una lista de cuentas de GitHub, instala la app y vincula los repositorios completando estos pasos:
Elige la cuenta de GitHub que deseas usar.
Selecciona uno o más repositorios a los que deseas otorgar acceso.
Si ves una solicitud para volver a usar una instalación de app existente, elige dónde configurar la app completando estos pasos:
Haz clic en Cuenta de GitHub para ver las cuentas que tienen instalada la app de Google Developer Connect. Si ves la cuenta que deseas usar, elígela haciendo clic en Confirmar.
Si no ves la cuenta que deseas usar, haz lo siguiente:
Elige Instalar la app de GitHub en otra cuenta de GitHub y haz clic en Confirmar.
Sigue los pasos de GitHub para permitir la instalación de la app.
Selecciona uno o más repositorios a los que deseas otorgar acceso.
Cuando se cierre el diálogo, se completará la instalación de la app.
Verifica la conexión
Para verificar la creación de tu conexión de GitHub, ejecuta el siguiente comando:
gcloud developer-connect connections describe CONNECTION_NAME \
--location=REGION
Reemplaza lo siguiente:
- CONNECTION_NAME: Es el nombre de tu conexión.
- REGION: Es la región de tu conexión.
Developer Connect muestra un estado en el campo installationState. Si el valor de este campo es COMPLETE, se completó la instalación de la app.
De lo contrario, Developer Connect muestra un URI para volver a la configuración en el navegador.
Una vez que se complete la conexión, elige qué repositorios vincular siguiendo las instrucciones que se indican en Agrega vínculos de repositorios a conexiones existentes.
Agrega vínculos de repositorios a conexiones existentes
Una vez que establezcas una conexión a GitHub, podrás vincularla a los repositorios. Puedes repetir estos pasos más adelante para vincular repositorios adicionales según sea necesario.
Para crear vínculos de repositorios en una conexión de GitHub existente, selecciona una de las siguientes opciones:
Console
Abre la página Repositorios en la Google Cloud consola.
Haz clic en Vincular repositorio.
Se abrirá el panel Vincular repositorios de Git.
En la lista de conexiones, elige una conexión.
Haz clic en Continuar.
En la lista de repositorios, selecciona los repositorios a los que deseas vincularte.
Haz clic en Crear.
Developer Connect crea los vínculos de repositorios y los muestra en la Google Cloud consola.
gcloud
Ejecuta el siguiente comando:
gcloud developer-connect connections git-repository-links create REPO_NAME \
--clone-uri=REPO_URI \
--connection=CONNECTION_NAME \
--location=REGION
Reemplaza lo siguiente:
- REPO_NAME: Es el nombre de tu repositorio.
- REPO_URI: Es el vínculo a tu repositorio de GitHub.
Por ejemplo,
https://github.com/cloud-build/test-repo.git. - CONNECTION_NAME: Es el nombre de tu conexión.
- REGION: Es la región de tu conexión.
Developer Connect crea los vínculos de repositorios.
Para mostrar los repositorios vinculados, ejecuta el
developer-connect connections git-repository-links list comando.
Si estás configurando Gemini Code Assist, continúa el proceso siguiendo los pasos que se indican en Configura y usa la personalización de código de Gemini Code Assist.
Uso compartido de datos
Es posible que el contenido de los Google Cloud recursos vinculados a esta conexión se transfiera a GitHub. Esta declaración se aplica a todos los recursos existentes y futuros que usen esta conexión. Para dejar de compartir información con GitHub, borra las conexiones de Developer Connect en la Google Cloud consola o gcloud CLI y revoca el acceso en GitHub.
¿Qué sigue?
- Termina de configurar la personalización de código de Gemini Code Assist.
- Obtén información sobre cómo Gemini Code Assist te ayuda a acelerar el desarrollo de software.
- Explora otras integraciones disponibles a través de Developer Connect.