Crea una instancia y accede a ella

Crea una instancia de Secure Source Manager y accede a su interfaz web para prepararte para crear repositorios y otorgar acceso a los usuarios.

Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.

  3. Si usas un proveedor de identidad externo (IdP), primero debes acceder a gcloud CLI con tu identidad federada.

  4. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  5. Create or select 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 (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Secure Source Manager API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable securesourcemanager.googleapis.com
  8. Install the Google Cloud CLI.

  9. Si usas un proveedor de identidad externo (IdP), primero debes acceder a gcloud CLI con tu identidad federada.

  10. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  11. Create or select 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 (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  12. Verify that billing is enabled for your Google Cloud project.

  13. Enable the Secure Source Manager API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable securesourcemanager.googleapis.com
  14. Instala el componente beta de Google Cloud CLI:
    gcloud components install beta
  15. Roles requeridos

    Para obtener los permisos que necesitas para crear una instancia de Secure Source Manager, pídele a tu administrador que te otorgue el rol de IAM Propietario de la instancia (roles/securesourcemanager.instanceOwner) en el proyecto Google Cloud .

    Los roles de Secure Source Manager no aparecen en la consola de Google Cloud hasta que se otorgan a un principal. Para otorgar un rol de Secure Source Manager por primera vez, consulta Otorga y revoca roles de IAM.

    Crea una instancia

    1. Ejecuta el siguiente comando para crear una instancia llamada my-instance en la ubicación us-central1. Es posible que se te solicite que te autentiques en gcloud CLI.

      gcloud beta source-manager instances create my-instance \
          --region=us-central1
      

      Aquí:

      • my-instance es el nombre de la instancia.
      • us-central1 es la región en la que crearás la instancia.

      Se inicia una operación de larga duración para crear una instancia. El resultado es similar al siguiente:

      Create request issued for [my-instance].
      done: false
      metadata:
        '@type': type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata
        apiVersion: v1
        createTime: '2023-02-27T20:57:52.315609549Z'
        requestedCancellation: false
        target: projects/PROJECT_ID/locations/us-central1/instances/my-instance
        verb: create
      name: projects/PROJECT_ID/locations/us-central1/operations/operation-1234567894561-5ec69948c0f2b-60dd727f-a9b97a2e
      

      Aquí:

      • projects/PROJECT_ID/locations/us-central1/operations/operation-1234567894561-5ec69948c0f2b-60dd727f-a9b97a2e es el OPERATION_NAME.
      • PROJECT_ID es el ID del proyecto.

      La creación de la instancia puede tardar hasta 60 minutos.

    2. Ten en cuenta el OPERATION_NAME, ya que lo necesitarás para verificar el estado de la operación.

    3. Para verificar el estado de la operación create, ejecuta el siguiente comando:

      gcloud beta source-manager operations describe OPERATION_NAME \
          --region=us-central1
      

      Reemplaza lo siguiente:

      • OPERATION_NAME por el nombre de la operación de la respuesta del comando create.

      Cuando la instancia esté lista, la respuesta será similar a la siguiente:

      {
      "name": "projects/PROJECT_ID/locations/us-central1/operations/operation-123456789012-5ec69948c0f2b-60dd727f-a9b97a2e",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata",
        "createTime": "2022-11-01T14:31:32.420469714Z",
        "endTime": "2022-11-01T14:48:34.140378114Z",
        "target": "projects/PROJECT_ID/locations/us-central1/instances/my-instance",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.securesourcemanager.v1.Instance",
        "name": "projects/PROJECT_ID/locations/us-central1/instances/my-instance",
        "createTime": "2022-11-01T14:31:32.416413630Z",
        "updateTime": "2022-11-01T14:31:32.416413630Z"
        },
        "state": "ACTIVE",
        "hostConfig": {
          "html": "my-instance-098765432109.us-central1.sourcemanager.dev",
          "api": "my-instance-098765432109-api.us-central1.sourcemanager.dev",
          "gitHttp": "my-instance-098765432109-git.us-central1.sourcemanager.dev"
        }
      }
      }
      

      Aquí:

      • my-instance-098765432109.us-central1.sourcemanager.dev es la URL HTML de la instancia.
      • PROJECT_ID es el ID del proyecto.
    4. Copia la URL de HTML del comando de estado de verificación creado correctamente. Necesitarás esta URL para acceder a la instancia a través de un navegador web.

    Accede a una instancia

    Después de crear la instancia, puedes acceder a ella a través de su interfaz web con un navegador.

    1. Para obtener la URL HTML de tu instancia, vuelve a ejecutar el siguiente comando:

         gcloud beta source-manager operations describe OPERATION_NAME \
          --region=us-central1
      
    2. Copia la URL HTML de la respuesta correcta del comando gcloud beta source-manager operations describe en la barra de direcciones del navegador.

    3. Aparecerá una pantalla de OAuth 2.0 en la que se te preguntará si quieres otorgarle acceso a sourcemanager.dev a tu cuenta de Google Cloud .

    4. Haz clic en el botón Permitir.

    5. Se abrirá la interfaz web de Secure Source Manager. Puedes crear y ver repositorios, y todos los problemas y solicitudes de extracción asociados desde la interfaz web.

    Limpia

    Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que se usaron en esta página, borra el proyecto de Google Cloud que tiene los recursos.

      Delete a Google Cloud project:

      gcloud projects delete PROJECT_ID

    ¿Qué sigue?