Crie repositórios
Este documento mostra como trabalhar com repositórios no BigQuery, incluindo as seguintes tarefas:
- Criar repositórios
- Eliminar repositórios
- Partilhar repositórios
- Associar opcionalmente um repositório do BigQuery a um repositório de terceiros
Antes de começar
- 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.
-
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
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. 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
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Criar e gerir repositórios partilhados:
Proprietário do código (
roles/dataform.codeOwner
) -
Criar e eliminar espaços de trabalho em repositórios partilhados:
Editor de código (
roles/dataform.codeEditor
) -
Criar, modificar e controlar versões de ficheiros em espaços de trabalho em repositórios partilhados:
Editor de código (
roles/dataform.codeEditor
) -
Veja espaços de trabalho e os respetivos ficheiros em repositórios partilhados:
Visualizador de código (
roles/dataform.codeViewer
) -
Criar e gerir repositórios privados, incluindo todas as ações com espaços de trabalho e ficheiros no repositório privado:
Code Creator (
roles/dataform.codeCreator
) Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, clique na pasta Repositórios.
No editor, clique em Adicionar repositório.
No painel Criar repositório, no campo ID do repositório, introduza um ID exclusivo.
Os IDs só podem incluir números, letras, hífenes e sublinhados.
Na lista pendente Região, selecione uma região do BigQuery para armazenar o repositório e o respetivo conteúdo. Selecione a região do BigQuery mais próxima da sua localização.
Para ver uma lista das regiões do BigQuery disponíveis, consulte o artigo Localizações do BigQuery Studio. A região do repositório não tem de corresponder à localização dos conjuntos de dados do BigQuery.
Clique em Criar.
No seu fornecedor de Git, faça o seguinte:
Azure DevOps Services
- Nos Azure DevOps Services, crie uma chave SSH privada.
- Carregue a chave SSH pública para o seu repositório dos Azure DevOps Services.
Bitbucket
- No Bitbucket, crie uma chave SSH privada.
- Carregue a chave SSH pública para o seu repositório do Bitbucket.
GitHub
- No GitHub, verifique se existem chaves SSH.
- Se não tiver chaves SSH existentes ou quiser usar uma nova chave, crie uma chave SSH privada.
- Carregue a chave pública de SSH do GitHub para o seu repositório do GitHub.
GitLab
- No GitLab, crie uma chave SSH privada.
- Carregue a chave pública de SSH do GitLab para o seu repositório do GitLab.
No Secret Manager, crie um segredo e cole a sua chave SSH privada como o valor secreto. A sua chave SSH privada deve ser armazenada num ficheiro semelhante a
~/.ssh/id_ed25519
. Atribua um nome ao segredo para o poder encontrar no futuro.Conceda acesso ao segredo à sua conta de serviço do Dataform predefinida.
A sua conta de serviço do Dataform predefinida está no seguinte formato:
service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Conceda a
roles/secretmanager.secretAccessor
função à conta de serviço.Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda a pasta Repositórios.
Selecione o repositório do BigQuery que quer associar ao repositório remoto.
No editor, selecione o separador Configuração.
Clique em Associar ao Git.
No painel Ligar ao repositório remoto, selecione o botão de opção SSH.
No campo URL do repositório Git remoto, introduza o URL do repositório Git remoto, que termina com
.git
.O URL do repositório Git remoto tem de estar num dos seguintes formatos:
- URL absoluto:
ssh://git@{host_name}[:{port}]/{repository_path}
,port
é opcional. - URL semelhante a SCP:
git@{host_name}:{repository_path}
.
- URL absoluto:
No campo Nome do ramo remoto predefinido, escreva o nome do ramo principal do repositório Git remoto.
No menu pendente Segredo, selecione o segredo que criou e que contém a chave privada de SSH.
No campo Valor da chave do anfitrião público de SSH, escreva a chave do anfitrião público do seu fornecedor do Git.
Azure DevOps Services
O valor da chave pública do anfitrião SSH tem de estar no formato de um ficheiro
known_hosts
. O valor tem de conter um algoritmo e uma chave pública codificados no formatobase64
, mas sem o nome do anfitrião nem o IP, no seguinte formato:ALGORITHM BASE64_KEY_VALUE
Para obter a chave de anfitrião pública dos Azure DevOps Services, execute o comando
ssh-keyscan -t rsa ssh.dev.azure.com
no terminal.Bitbucket
O valor da chave pública do anfitrião SSH tem de estar no formato de um ficheiro
known_hosts
. O valor tem de conter um algoritmo e uma chave pública codificados no formatobase64
, mas sem o nome do anfitrião nem o IP, no seguinte formato:ALGORITHM BASE64_KEY_VALUE
Para obter a chave de anfitrião pública do Bitbucket, consulte o artigo Configurar SSH.
GitHub
O valor da chave pública do anfitrião SSH tem de estar no formato de um ficheiro
known_hosts
. O valor tem de conter um algoritmo e uma chave pública codificados no formatobase64
, mas sem o nome do anfitrião nem o IP, no seguinte formato:ALGORITHM BASE64_KEY_VALUE
Para obter a chave de anfitrião pública do GitHub, consulte o artigo Impressões digitais da chave SSH do GitHub.
GitLab
O valor da chave pública do anfitrião SSH tem de estar no formato de um ficheiro
known_hosts
. O valor tem de conter um algoritmo e uma chave pública codificados no formatobase64
, mas sem o nome do anfitrião nem o IP, no seguinte formato:ALGORITHM BASE64_KEY_VALUE
Para obter a chave de anfitrião pública do GitLab, consulte as entradas de SSH
known_hosts
.Clique em Ligar.
No seu fornecedor de Git, faça o seguinte:
GitHub
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:
Selecione o acesso ao repositório apenas para repositórios selecionados e, de seguida, selecione o repositório ao qual quer estabelecer ligação.
Conceder acesso de leitura e escrita aos conteúdos do repositório.
Defina um tempo de validade do token adequado às suas necessidades.
- Para um token de acesso pessoal clássico do GitHub, faça o seguinte:
Conceda ao BigQuery a autorização
repo
.Defina um tempo de validade do token adequado às suas necessidades.
Se a sua organização usar o Início de sessão único (SSO) de SAML, autorize o token.
GitLab
No GitLab, crie um token de acesso pessoal do GitLab.
Dê um nome ao token
dataform
; este passo é obrigatório.Conceda ao BigQuery as autorizações
api
,read_repository
ewrite_repository
.Defina um tempo de validade do token adequado às suas necessidades.
No Secret Manager, crie um segredo que contenha o token de acesso pessoal do seu repositório remoto.
Conceda acesso ao segredo à sua conta de serviço do Dataform predefinida.
A sua conta de serviço do Dataform predefinida está no seguinte formato:
service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Conceda a
roles/secretmanager.secretAccessor
função à conta de serviço.Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda a pasta Repositórios.
Selecione o repositório do BigQuery que quer associar ao repositório remoto.
No editor, selecione o separador Configuração.
Clique em Associar ao Git.
No painel Associar a repositório remoto, selecione o botão de opção HTTPS.
No campo URL do repositório Git remoto, introduza o URL do repositório Git remoto, que termina com
.git
.O URL do repositório Git remoto não pode conter nomes de utilizador nem palavras-passe.
No campo Nome do ramo remoto predefinido, escreva o nome do ramo principal do repositório Git remoto.
No menu pendente Segredo, selecione o segredo que criou e que contém o token de acesso pessoal.
Clique em Ligar.
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda a pasta Repositórios.
Selecione o repositório do BigQuery cuja associação quer editar.
No editor, selecione o separador Configuração.
Na página do repositório, clique em Editar associação do Git.
Edite as definições de ligação.
Clique em Atualizar.
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, clique na pasta Repositórios.
No painel Repositórios Git, selecione o repositório que quer partilhar.
Clique na opção
Ações e, de seguida, clique em Partilhar.No painel Partilhar autorizações, clique em Adicionar utilizador/grupo.
No painel Adicionar utilizador/grupo, no campo Novos principais, escreva um ou mais nomes de utilizadores ou grupos, separados por vírgulas.
No campo Função, escolha a função a atribuir aos novos responsáveis.
Clique em Guardar.
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, clique na pasta Repositórios.
No painel Repositórios Git, selecione o repositório que quer eliminar.
Clique na opção
Ações e, de seguida, em Eliminar.Clique em Eliminar.
- Saiba como criar espaços de trabalho.
Funções necessárias
Para receber as autorizações de que precisa para trabalhar com repositórios e espaços de trabalho, peça ao seu administrador que lhe conceda as seguintes funções do IAM em repositórios e espaços de trabalho:
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.
Os diretores que têm a função de editor de código num repositório podem editar todos os espaços de trabalho no repositório.
Os repositórios privados que criar continuam visíveis para os responsáveis que têm as funções de administrador do BigQuery ou administrador do BigQuery Studio ao nível do projeto. Estes principais podem partilhar o seu repositório privado com outros utilizadores.
Crie um repositório
Para criar um repositório do BigQuery, siga estes passos:
Associe a um repositório de terceiros
Esta secção mostra-lhe como associar um repositório do BigQuery a um repositório remoto. Depois de associar os repositórios, pode realizar ações do Git nos ficheiros nos espaços de trabalho contidos no repositório. Por exemplo, extrair atualizações do repositório remoto e enviar alterações para o repositório remoto.
Recomendamos que crie um repositório do BigQuery dedicado para cada repositório remoto ao qual se liga. Atribua ao repositório do BigQuery um nome semelhante ao do repositório remoto para ajudar a tornar o mapeamento claro.
Pode associar um repositório remoto através de HTTPS ou SSH. A associação de um repositório do BigQuery a um repositório remoto pode falhar se o repositório remoto não estiver aberto à Internet pública, por exemplo, se estiver atrás de uma firewall. A tabela seguinte indica os fornecedores de Git suportados e os métodos de ligação disponíveis para os respetivos repositórios:
Fornecedor de Git | Método de ligação |
---|---|
Azure DevOps Services | SSH |
Bitbucket | SSH |
GitHub | SSH ou HTTPS |
GitLab | SSH ou HTTPS |
Ligue um repositório remoto através de SSH
Para associar um repositório remoto através de SSH, tem de gerar uma chave SSH e um segredo do Secret Manager. A chave SSH consiste numa chave SSH pública e numa chave SSH privada. Tem de partilhar a chave SSH pública com o seu fornecedor do Git e criar um segredo do Secret Manager com a chave SSH privada. Em seguida, partilhe o segredo com a sua conta de serviço predefinida do BigQuery.
O BigQuery usa o segredo com a chave SSH privada para iniciar sessão no seu fornecedor Git e confirmar alterações em nome dos utilizadores. O BigQuery faz estes commits através do endereço de email do utilizador, para que possa saber quem fez cada commit. Google Cloud
Para associar um repositório remoto a um repositório do BigQuery através de SSH, siga estes passos:
Associe um repositório remoto através de HTTPS
Para associar um repositório remoto através de HTTPS, tem de criar um segredo do Secret Manager com um token de acesso pessoal e partilhar o segredo com a sua conta de serviço predefinida do BigQuery.
Em seguida, o BigQuery usa a chave de acesso para iniciar sessão no seu fornecedor do Git e confirmar as alterações em nome dos utilizadores. O BigQuery faz estes commits através do endereço de email do utilizador, para que possa saber quem fez cada commit. Google Cloud
Para associar um repositório remoto a um repositório do BigQuery através de HTTPS, siga estes passos:
Edite a associação ao repositório remoto
Para editar uma associação entre um repositório do BigQuery e um repositório Git remoto, siga estes passos:
Partilhe um repositório
Para partilhar um repositório, siga estes passos:
Elimine um repositório
Para eliminar um repositório e todo o respetivo conteúdo, siga estes passos: