Criar e acessar uma instância

Crie uma instância do Secure Source Manager e acesse a interface da Web dela para se preparar para criar repositórios e conceder acesso aos usuários.

Antes de começar

  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. Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.

  4. Para inicializar a gcloud CLI, execute o seguinte 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. Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.

  10. Para inicializar a gcloud CLI, execute o seguinte 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. Instale o componente beta da Google Cloud CLI:
    gcloud components install beta
  15. Funções exigidas

    Para receber as permissões necessárias para criar uma instância do Secure Source Manager, peça ao administrador para conceder a você o papel do IAM de Proprietário da instância (roles/securesourcemanager.instanceOwner) no projeto Google Cloud .

    As funções do Secure Source Manager não aparecem no console do Google Cloud até que sejam concedidas a um principal. Para conceder um papel do Secure Source Manager pela primeira vez, consulte Conceder e revogar papéis do IAM.

    Criar uma instância

    1. Execute o comando a seguir para criar uma instância chamada my-instance no local us-central1. Talvez seja necessário fazer a autenticação na CLI gcloud.

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

      Em que:

      • my-instance é o nome da instância;
      • us-central1 é a região onde você está criando a instância.

      Uma operação de longa duração para criar instância é iniciada. A resposta será semelhante a esta:

      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
      

      Em que:

      • projects/PROJECT_ID/locations/us-central1/operations/operation-1234567894561-5ec69948c0f2b-60dd727f-a9b97a2e é o OPERATION_NAME.
      • PROJECT_ID é o ID do projeto;

      A criação da instância leva até 60 minutos.

    2. Anote o OPERATION_NAME, porque você vai precisar dele para verificar o status da operação.

    3. Verifique o status da operação create executando o seguinte comando:

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

      Substitua:

      • OPERATION_NAME com o nome da operação da resposta do comando create.

      Quando a instância estiver pronta, a resposta será semelhante a esta:

      {
      "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"
        }
      }
      }
      

      Em que:

      • my-instance-098765432109.us-central1.sourcemanager.dev é o URL HTML da instância.
      • PROJECT_ID é o ID do projeto;
    4. Copie o URL HTML do comando de verificação de status criado. Você vai precisar desse URL para acessar a instância em um navegador da Web.

    Acessar uma instância

    Depois que a instância for criada, acesse-a pela interface da Web usando um navegador.

    1. Para acessar o URL HTML da sua instância, execute o seguinte comando novamente:

         gcloud beta source-manager operations describe OPERATION_NAME \
          --region=us-central1
      
    2. Copie o URL HTML da resposta bem-sucedida do comando gcloud beta source-manager operations describe na barra de endereço do navegador.

    3. Uma tela do OAuth 2.0 vai aparecer perguntando se você quer dar acesso à sua conta do Google Cloud para o sourcemanager.dev.

    4. Clique no botão Permitir.

    5. A interface da Web do Secure Source Manager é aberta. É possível criar e visualizar repositórios e todos os problemas e solicitações de pull associados na interface da Web.

    Limpar

    Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, exclua o projeto do Google Cloud e os recursos.

      Delete a Google Cloud project:

      gcloud projects delete PROJECT_ID

    A seguir