Criar repositórios

Este documento mostra como trabalhar com repositórios no BigQuery, incluindo as seguintes tarefas:

  • Como criar repositórios
  • Como excluir repositórios
  • Compartilhamento de repositórios
  • Opcionalmente, conecte um repositório do BigQuery a um repositório de terceiros

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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery and Dataform APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery and Dataform APIs.

    Enable the APIs

Funções exigidas

Para receber as permissões necessárias para trabalhar com repositórios e espaços de trabalho, peça ao administrador para conceder a você os seguintes papéis do IAM:

  • Criar e gerenciar repositórios compartilhados: Proprietário do código (roles/dataform.codeOwner)
  • Criar e excluir espaços de trabalho em repositórios compartilhados: Editor de código (roles/dataform.codeEditor)
  • Crie, modifique e controle arquivos de versão em espaços de trabalho em repositórios compartilhados: Editor de código (roles/dataform.codeEditor)
  • Acessar espaços de trabalho e os arquivos deles em repositórios compartilhados: Visualizador de código (roles/dataform.codeViewer)
  • Crie e gerencie repositórios particulares, incluindo todas as ações com espaços de trabalho e arquivos no repositório particular: Criador de código (roles/dataform.codeCreator)

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.

Os principais que têm a função de editor de código em um repositório podem editar todos os espaços de trabalho no repositório.

Os repositórios privados que você cria ainda são visíveis para os administradores que receberam as funções de administrador do BigQuery ou do BigQuery Studio no nível do projeto. Esses princípios podem compartilhar seu repositório particular com outros usuários.

Criar um repositório

Para criar um repositório do BigQuery, siga estas etapas:

  1. No Console do Google Cloud, acesse a página BigQuery.

    Ir para o BigQuery

  2. No painel Explorer, clique na pasta Repositories.

  3. No editor, clique em Adicionar repositório.

  4. No painel Criar repositório, no campo ID do repositório, digite um ID exclusivo.

    Os IDs só podem incluir números, letras, hifens e sublinhados.

  5. Na lista suspensa Região, selecione uma região do BigQuery para armazenar o repositório e o conteúdo dele. Selecione a região do BigQuery mais próxima do seu local.

    Para conferir uma lista de regiões disponíveis do BigQuery, consulte Locais do BigQuery Studio. A região do repositório não precisa corresponder ao local dos seus conjuntos de dados do BigQuery.

  6. Clique em Criar.

Conectar a um repositório de terceiros

Esta seção mostra como conectar um repositório do BigQuery a um repositório remoto. Depois de conectar os repositórios, você pode realizar ações do Git nos arquivos nos espaços de trabalho contidos no repositório. Por exemplo, extrair atualizações do repositório remoto e enviar alterações para ele.

Recomendamos criar um repositório do BigQuery dedicado para cada repositório remoto conectado. Dê ao repositório do BigQuery um nome semelhante ao repositório remoto para ajudar a esclarecer o mapeamento.

É possível conectar um repositório remoto por HTTPS ou SSH. A tabela a seguir lista os provedores do Git com suporte e os métodos de conexão disponíveis para os repositórios:

Provedor do git Método de conexão
Serviços de DevOps do Azure SSH
Bitbucket SSH
GitHub SSH ou HTTPS
GitLab SSH ou HTTPS

Conectar um repositório remoto por SSH

Para conectar um repositório remoto por SSH, você precisa gerar uma chave SSH e um secret do Secret Manager. A chave SSH consiste em uma chave pública e uma privada. Você precisa compartilhar a chave SSH pública com seu provedor do Git e criar um secret do Secret Manager com a chave SSH privada. Em seguida, compartilhe o segredo com sua conta de serviço padrão do BigQuery.

O BigQuery usa o segredo com a chave SSH privada para fazer login no seu provedor do Git e confirmar as alterações em nome dos usuários. O BigQuery faz essas confirmações usando o endereço de e-mail Google Cloud do usuário para que você possa saber quem fez cada confirmação.

Para conectar um repositório remoto a um repositório do BigQuery por SSH, siga estas etapas:

  1. No seu provedor do Git, faça o seguinte:

    Serviços de DevOps do Azure

    1. No Azure DevOps Services, crie uma chave SSH privada.
    2. Faça upload da chave SSH pública no repositório dos Serviços de DevOps do Azure.

    Bitbucket

    1. No Bitbucket, crie uma chave SSH privada.
    2. Faça upload da chave SSH pública no seu repositório do Bitbucket.

    GitHub

    1. No GitHub, verifique se há chaves SSH.
    2. Se você não tiver chaves SSH ou quiser usar uma nova, crie uma chave SSH privada.
    3. Faça upload da chave SSH pública do GitHub no seu repositório do GitHub.

    GitLab

    1. No GitLab, crie uma chave SSH privada.
    2. Faça upload da chave SSH pública do GitLab no seu repositório do GitLab.
  2. No Secret Manager, crie um secret e cole sua chave SSH privada como o valor do secret. Sua chave SSH privada precisa ser armazenada em um arquivo semelhante a ~/.ssh/id_ed25519. Dê um nome ao secret para encontrá-lo no futuro.

  3. Conceda acesso ao secret à sua conta de serviço padrão do Dataform.

    A conta de serviço padrão do Dataform está neste formato:

    service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
    
  4. Conceda o papel roles/secretmanager.secretAccessor à conta de serviço.

  5. No Console do Google Cloud, acesse a página BigQuery.

    Ir para o BigQuery

  6. No painel Explorer, abra a pasta Repositories.

  7. Selecione o repositório do BigQuery que você quer conectar ao repositório remoto.

  8. No editor, selecione a guia Configuração.

  9. Clique em Conectar com o Git.

  10. No painel Conectar ao repositório remoto, selecione o botão de opção SSH.

  11. No campo URL do repositório Git remoto, digite o URL do repositório Git remoto, terminando com .git.

    O URL do repositório Git remoto precisa estar em um dos seguintes formatos:

    • URL absoluto: ssh://git@{host_name}[:{port}]/{repository_path}, port é opcional.
    • URL semelhante ao SCP: git@{host_name}:{repository_path}.
  12. No campo Default remote branch name, digite o nome da ramificação principal do repositório Git remoto.

  13. No menu suspenso Secret, selecione o secret que você criou e que contém a chave privada SSH.

  14. No campo SSH public host key value, digite a chave pública do host do seu provedor de Git.

    Serviços de DevOps do Azure

    O valor da chave pública do host SSH precisa estar no formato de um arquivo known_hosts. O valor precisa conter um algoritmo e uma chave pública codificada no formato base64, mas sem o nome de host ou IP, no seguinte formato:

    ALGORITHM BASE64_KEY_VALUE
    

    Para recuperar a chave de host pública do Azure DevOps Services, execute o comando ssh-keyscan -t rsa ssh.dev.azure.com no terminal.

    Bitbucket

    O valor da chave pública do host SSH precisa estar no formato de um arquivo known_hosts. O valor precisa conter um algoritmo e uma chave pública codificada no formato base64, mas sem o nome de host ou IP, no seguinte formato:

    ALGORITHM BASE64_KEY_VALUE
    

    Para recuperar a chave de host pública do Bitbucket, consulte Configurar o SSH.

    GitHub

    O valor da chave pública do host SSH precisa estar no formato de um arquivo known_hosts. O valor precisa conter um algoritmo e uma chave pública codificada no formato base64, mas sem o nome de host ou IP, no seguinte formato:

    ALGORITHM BASE64_KEY_VALUE
    

    Para recuperar a chave pública do host do GitHub, consulte Impressões digitais da chave SSH do GitHub.

    GitLab

    O valor da chave pública do host SSH precisa estar no formato de um arquivo known_hosts. O valor precisa conter um algoritmo e uma chave pública codificada no formato base64, mas sem o nome de host ou IP, no seguinte formato:

    ALGORITHM BASE64_KEY_VALUE
    

    Para recuperar a chave pública do host do GitLab, consulte Entradas known_hosts do SSH.

  15. Clique em Conectar.

Conectar um repositório remoto por HTTPS

Para conectar um repositório remoto por HTTPS, crie um secret do Secret Manager com um token de acesso pessoal e compartilhe o secret com sua conta de serviço padrão do BigQuery.

O BigQuery usa o token de acesso para fazer login no seu provedor do Git e confirmar as mudanças em nome dos usuários. O BigQuery faz essas confirmações usando o endereço de e-mail Google Cloud do usuário para que você possa saber quem fez cada confirmação.

Para conectar um repositório remoto a um repositório do BigQuery pelo HTTPS, siga estas etapas:

  1. No seu provedor do Git, faça o seguinte:

    GitHub

    1. No GitHub, crie um token de acesso pessoal detalhado ou um token de acesso pessoal clássico.

      • Para um token de acesso pessoal do GitHub detalhado, faça o seguinte:
      1. Selecione o acesso a repositórios apenas para repositórios selecionados e selecione o repositório que você quer conectar.

      2. Conceda acesso de leitura e gravação ao conteúdo do repositório.

      3. Defina um tempo de expiração de token adequado às suas necessidades.

      • Para um token de acesso pessoal clássico do GitHub, faça o seguinte:
      1. Conceda a permissão repo ao BigQuery.

      2. Defina um tempo de expiração de token adequado às suas necessidades.

    2. Se a sua organização usa o Logon único (SSO) SAML, autorize o token.

    GitLab

    1. No GitLab, crie um token de acesso pessoal do GitLab.

    2. Nomeie o token como dataform. Isso é obrigatório.

    3. Conceder ao BigQuery as permissões api, read_repository e write_repository.

    4. Defina um tempo de expiração de token adequado às suas necessidades.

  2. No Secret Manager, crie um secret com o token de acesso pessoal do repositório remoto.

  3. Conceda acesso ao secret à sua conta de serviço padrão do Dataform.

    A conta de serviço padrão do Dataform está neste formato:

    service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
    
  4. Conceda o papel roles/secretmanager.secretAccessor à conta de serviço.

  5. No Console do Google Cloud, acesse a página BigQuery.

    Ir para o BigQuery

  6. No painel Explorer, abra a pasta Repositories.

  7. Selecione o repositório do BigQuery que você quer conectar ao repositório remoto.

  8. No editor, selecione a guia Configuração.

  9. Clique em Conectar com o Git.

  10. No painel Conectar ao repositório remoto, selecione o botão de rádio HTTPS.

  11. No campo URL do repositório Git remoto, digite o URL do repositório Git remoto, terminando com .git.

    O URL do repositório Git remoto não pode conter nomes de usuário ou senhas.

  12. No campo Default remote branch name, digite o nome da ramificação principal do repositório Git remoto.

  13. No menu suspenso Secret, selecione o secret que você criou e que contém o token de acesso pessoal.

  14. Clique em Conectar.

Editar a conexão do repositório remoto

Para editar uma conexão entre um repositório do BigQuery e um repositório remoto do Git, siga estas etapas:

  1. No Console do Google Cloud, acesse a página BigQuery.

    Ir para o BigQuery

  2. No painel Explorer, abra a pasta Repositories.

  3. Selecione o repositório do BigQuery com a conexão que você quer editar.

  4. No editor, selecione a guia Configuração.

  5. Na página do repositório, clique em Editar conexão do Git.

  6. Editar as configurações de conexão.

  7. Clique em Atualizar.

Compartilhar um repositório

Para compartilhar um repositório, siga estas etapas:

  1. No Console do Google Cloud, acesse a página BigQuery.

    Ir para o BigQuery

  2. No painel Explorer, clique na pasta Repositories.

  3. No painel Git Repositories, selecione o repositório que você quer compartilhar.

  4. Clique na opção Ações e em Compartilhar.

  5. No painel Compartilhar permissões, clique em Adicionar usuário/grupo.

  6. No painel Adicionar usuário/grupo, no campo Novos principais, digite um ou mais nomes de usuários ou grupos, separados por vírgulas.

  7. No campo Função, escolha a função a ser atribuída aos novos principais.

  8. Clique em Salvar.

Excluir um repositório.

Para excluir um repositório e todo o conteúdo dele, siga estas etapas:

  1. No Console do Google Cloud, acesse a página BigQuery.

    Ir para o BigQuery

  2. No painel Explorer, clique na pasta Repositories.

  3. No painel Git Repositories, selecione o repositório que você quer excluir.

  4. Clique na opção Ações e em Excluir.

  5. Clique em Excluir.

A seguir