Si aún no has creado tu instancia de Secure Source Manager, consulta el artículo Crear una instancia de Secure Source Manager para empezar.
Antes de empezar
- Crea una instancia de Secure Source Manager o solicita acceso a una. Para obtener más información, consulta Crear una instancia de Gestor de fuentes seguras.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Instala el componente
beta
Google Cloud CLI:gcloud components install alpha
Roles obligatorios
Para obtener los permisos que necesitas para crear un repositorio, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos:
-
Rol Creador de repositorios de instancias de Secure Source Manager (
roles/securesourcemanager.instanceRepositoryCreator
) en la instancia de Secure Source Manager -
Rol Creador de repositorios de Secure Source Manager (
roles/securesourcemanager.repoCreator
) en el proyecto de instancia
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Para obtener información sobre cómo conceder roles de Secure Source Manager, consulta los artículos Control de acceso con gestión de identidades y accesos y Conceder acceso a instancias a los usuarios.
Crear un repositorio
Interfaz web
-
Para acceder a la instancia de Secure Source Manager a través de su interfaz web, copie la siguiente URL en la barra de direcciones de su navegador.
INSTANCE_ID-PROJECT_NUMBER.LOCATION.sourcemanager.dev
Haz los cambios siguientes:
- INSTANCE_ID con el nombre de la instancia.
- PROJECT_NUMBER con el número de proyecto de la instancia. Google Cloud Para obtener información sobre cómo identificar proyectos, consulta el artículo Identificar proyectos.
- LOCATION con la región de la instancia.
Si es necesario, autentícate con tus credenciales de Secure Source Manager.
Haz clic en el icono + Crear repositorio, situado en la parte superior derecha del menú de navegación.
Rellena los detalles del repositorio:
ID de repositorio: introduce un nombre para el repositorio.
Descripción: opcional. Descripción del repositorio.
Inicializar repositorio: opcional. Selecciona esta opción si quieres inicializar el repositorio y añadir los archivos .gitignore, license y README.
.gitignore: opcional. Elige los archivos que no quieras monitorizar con las plantillas del menú desplegable.
license: opcional. Selecciona una licencia de Creative Commons en el menú desplegable.
Rama predeterminada: nombre de la rama predeterminada.
Haz clic en Enviar.
gcloud
Crea un repositorio con gcloud CLI ejecutando el siguiente comando:
gcloud alpha source-manager repos create REPOSITORY_ID \ --region=LOCATION \ --project=PROJECT_ID \ --instance=INSTANCE_ID \ --description=DESCRIPTION \ --default-branch=BRANCH \ --gitignores=GITIGNORES \ --license=LICENSE \ --readme=README
Haz los cambios siguientes:
REPOSITORY_ID
con el nombre del repositorio.LOCATION
por la región en la que quieras crear el repositorio. Para obtener información sobre las ubicaciones admitidas, consulta Ubicaciones.PROJECT_ID
por el ID del proyecto de la instancia de Secure Source Manager en la que quieras crear el repositorio.INSTANCE_ID
con el ID de la instancia en la que vas a crear el repositorio. Para enumerar las instancias de Secure Source Manager de tu proyecto, consulta Listar y ver instancias.DESCRIPTION
con una descripción del repositorio. Esta información es opcional y se puede omitir.BRANCH
con el nombre de rama predeterminado. Es opcional y se puede omitir. Si no se define ningún nombre, el nombre de la rama predeterminada esmain
.GITIGNORES
con una lista separada por comas de nombres de plantillas .gitignore. Esta información es opcional y se puede omitir. Para ver la lista completa de plantillas disponibles, consulta la referencia de configuración de inicialización de repositorios.LICENSE
con el nombre de la plantilla de licencia para aplicarla a tu repositorio. Esta información es opcional y se puede omitir. Para ver la lista completa de plantillas de licencia disponibles, consulta la referencia de configuración de inicialización del repositorio.README
condefault
para crear un archivo README a partir de la plantilla predeterminada. Esta información es opcional y se puede omitir. Si se omite, no se creará ningún archivo README.
API
Crea un repositorio mediante una llamada REST ejecutando el siguiente comando:
curl \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://securesourcemanager.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/repositories?repository_id=REPOSITORY_ID \ -d '{"instance": "projects/PROJECT_ID/locations/REGION/instances/INSTANCE_ID"}'
Haz los cambios siguientes:
REGION
es la región de tu instancia de Secure Source Manager. Para obtener información sobre las ubicaciones admitidas, consulta Ubicaciones.INSTANCE_ID
es el ID de tu instancia de Secure Source Manager.PROJECT_ID
es el ID de proyecto de tu instancia de Secure Source Manager. Consulta el artículo sobre cómo identificar proyectos para saber dónde encontrar el ID de tu proyecto.REPOSITORY_ID
es el nombre de tu repositorio.
Se pueden especificar valores adicionales mediante la marca de datos HTTP POST,
-d'{}'
como inicializar el repositorio, añadir un archivo específico.gitignore
o licencias. Consulta la documentación de referencia para obtener más información.Si quieres que la salida sea legible, puedes enviarla a JSON mediante
json_pp
.Por ejemplo:
curl \ -X POST \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://securesourcemanager.googleapis.com/v1/projects/my-project-id/locations/us-central1/repositories?repository_id=my-repo \ -d '{"instance": "projects/my-project-id/locations/us-central1/instances/prod-test-instance", "initialConfig":{"defaultBranch":"main"}}' | json_pp
La respuesta será similar a la siguiente:
{ "name": "operations/266bf4c7-13fe-11ed-be24-da823b7355d0", "metadata": { "@type": "type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata", "createTime": "2022-08-04T14:02:59.810496928Z", "endTime": "2022-08-04T14:03:00.558354528Z", "target": "projects/654987321654/locations/us-central1/repositories/my-repo", "verb": "create", "apiVersion": "v1" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.securesourcemanager.v1.Repository", "name": "projects/my-project-id/locations/us-central1/repositories/my-repo", "instance": "projects/654987321654/locations/us-central1/instances/prod-test-instance", "createTime": "2022-08-04T14:03:00Z", "uris": { "html": "https://prod-test-instance-654987321654.us-central1.sourcemanager.dev/my-project-id/my-repo", "gitHttps": "https://prod-test-instance-654987321654-git.us-central1.sourcemanager.dev/my-project-id/my-repo.git" } }
Donde:
654987321654
es el número de proyecto del repositorio.my-project-id
es el ID del proyecto del repositorio.my-repo
es elREPOSITORY_ID
que has definido en el comando create. El campouris
contiene las URLs para acceder al repositorio a través del navegador web o mediante el acceso HTTPS del protocolo Git.
Accede a tu nuevo repositorio con el URI HTML de la respuesta. La revisión de código, el seguimiento de problemas y las solicitudes de extracción se admiten en la interfaz web de Secure Source Manager.
El repositorio se crea en tu instancia de Secure Source Manager.
El rol de administrador de repositorio (roles/securesourcemanager.repoAdmin
) se te asigna cuando creas un repositorio. El nuevo permiso de gestión de identidades y accesos puede tardar hasta 2 minutos en propagarse, por lo que, si aparece un error de permisos al intentar acceder al repositorio después de crearlo, espera unos minutos y vuelve a intentarlo.
Los repositorios que has creado se muestran en la interfaz web de Secure Source Manager, en la página Mis repositorios.
Siguientes pasos
- Conceder acceso a repositorios a los usuarios
- Usa la gestión de código fuente de Git con Secure Source Manager.
- Lista y vista de repositorios en la interfaz web de Secure Source Manager.