Resolver problemas

Esta página mostra como resolver problemas com o Secure Source Manager.

Mensagem de erro ao criar um repositório

O seguinte erro é apresentado quando tenta criar um repositório:

There was an error while loading /repo/create. Try refreshing the page.

Este problema ocorre quando:

  • A API Secure Source Manager não está ativada no seu projeto.
  • Não tem a função de administrador do repositório no seu projeto nem autorizações para criar repositórios na instância do Secure Source Manager.

Para resolver este problema:

  • Ative a API Secure Source Manager no seu projeto.
  • Peça ao administrador para lhe conceder as seguintes funções:
    • Função de administrador do repositório (roles/securesourcemanager.repoAdmin) no seu projeto.
    • Instance Accessor (roles/securesourcemanager.instanceAccessor) na instância do Secure Source Manager.
    • Instance Repository Creator (roles/securesourcemanager.instanceRepositoryCreator) na instância do Secure Source Manager.

Consulte o artigo Controlo de acesso com a IAM para mais detalhes.

Mensagem de erro ao clonar um repositório num Mac

O seguinte erro é apresentado quando tenta clonar um repositório:

git: 'credential-gcloud.sh' is not a git command.  See 'git --help'.
fatal: Authentication failed for [repo-url]

Este problema ocorre quando:

  • A CLI gcloud está instalada através do Homebrew ou de outra instalação não padrão.
  • git-credential-gcloud.sh não é adicionado ao seu PATH.

Para resolver este problema:

  • Execução source $HOMEBREW_PREFIX/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.zsh.inc
  • Verifique se o git-credential-gcloud.sh está no seu caminho executando o seguinte comando:

    which git-credential-gcloud.sh
    

Os pedidos HTTPS do Git falham com erro de acesso negado ou não autorizado

Quando são tentados comandos Git através de HTTPS, é apresentada uma mensagem de erro de acesso negado ou não autorizado.

Este problema ocorre quando se verifica uma das seguintes situações:

  • O ficheiro de configuração global do Git não tem o auxiliar de autenticação do Secure Source Manager.
  • O repositório de credenciais incorporado do Git está a ser usado em vez de chamar o auxiliar de autenticação do Secure Source Manager para obter uma credencial atualizada.
  • Está a ser usado um auxiliar de credenciais do sistema em vez de chamar o auxiliar de autenticação do Secure Source Manager para obter uma credencial atualizada.
  • É usada uma versão mais antiga da Google Cloud CLI quando interage com repositórios do Secure Source Manager através de HTTPS. O Secure Source Manager requer a versão 395.0.0 ou mais recente da CLI do Google Cloud.

Para resolver este problema:

  1. Execute o seguinte comando para determinar o conteúdo da configuração global do Git.

    git config --list | grep credential
    
  2. Se vir alguma linha semelhante a *credential*.helper=store no macOS ou credential.helper = manager no SO Windows, remova essas linhas e, em seguida, volte a autenticar com gcloud auth login antes de tentar novamente o comando Git.

  3. Se a resposta não incluir credential.https://*.*.sourcemanager.dev.helper=gcloud.sh no macOS ou Linux, ou credential.https://*.*.sourcemanager.dev.helper=gcloud.cmd no Windows, adicione o auxiliar de autenticação do Secure Source Manager à configuração global do Git:

    Linux

    1. Para adicionar o auxiliar de autenticação do Secure Source Manager à configuração global do Git, execute o seguinte comando:

      git config --global credential.'https://*.*.sourcemanager.dev'.helper gcloud.sh
      
    2. Valide se a linha do auxiliar de autenticação foi adicionada à configuração global do Git executando o seguinte comando:

      git config --list | grep credential
      

      O resultado deve incluir credential.https://*.*.sourcemanager.dev.helper=gcloud.sh.

    3. Faça a autenticação executando gcloud auth login.

    4. Execute um comando Git para testar a autenticação.

    Windows

    1. Verifique a versão da CLI gcloud seguindo as instruções de instalação do Git e da CLI Google Cloud.
    2. Para adicionar o auxiliar de autenticação do Secure Source Manager à configuração global do Git, execute o seguinte comando:

      git config --global credential.https://*.*.sourcemanager.dev.helper gcloud.cmd
      
    3. Valide se a linha do auxiliar de autenticação foi adicionada à configuração global do Git executando o seguinte comando:

      git config --list | grep credential
      

      O resultado deve incluir credential.https://*.*.sourcemanager.dev.helper=gcloud.cmd.

    4. Faça a autenticação executando gcloud auth login.

    5. Execute um comando Git para testar a autenticação.

Os pedidos HTTPS do Git falham com um token inválido

É necessário um token OAuth válido como palavra-passe para operações HTTPS do Git. Normalmente, isto é processado pelo Git credential helper, mas também pode funcionar com tokens OAuth gerados através de outras abordagens (por exemplo, credenciais predefinidas da aplicação).

Se um pedido Git for rejeitado devido a um token inválido, significa normalmente que não foi possível extrair informações do utilizador do token recebido. Existem várias causas possíveis para este erro:

  • O seu início de sessão da CLI gcloud pode ter expirado

    Inicie sessão novamente com gcloud auth login.

  • O seu token não tem âmbito suficiente. Espera-se que os tokens OAuth tenham os seguintes âmbitos:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/userinfo.email

    Pode verificar o âmbito do token chamando curl https://oauth2.googleapis.com/tokeninfo?access_token=${TOKEN}

  • Está a usar um token gerado a partir do Workload Identity da frota do GKE:

  • Tem políticas da organização que impedem a utilização de tokens fora de determinados perímetros, por exemplo, o acesso sensível ao contexto:

    O Secure Source Manager não suporta naturalmente o Acesso sensível ao contexto. Contacte o apoio técnico para saber os passos seguintes.

O projeto não é apresentado no seletor de produtos da interface Web

Quando usa o seletor de produtos da interface Web do Secure Source Manager, o seu projeto não aparece.

Este problema ocorre quando tem várias credenciais de início de sessão para o Secure Source Manager.

Para resolver este problema:

  • Limpe os cookies anexando o seguinte ao URL da instância do Secure Source Manager: /_oauth/consent

    Por exemplo, se o URL da sua instância for https://my-instance-098765432123.us-central1.sourcemanager.dev/, introduza https://my-instance-098765432123.us-central1.sourcemanager.dev/_oauth/consent na barra de endereço do navegador e, em seguida, inicie sessão com as credenciais corretas.

O ficheiro de acionadores não aciona compilações

Se as compilações não forem acionadas conforme esperado após o envio do ficheiro de acionadores, pode ter um dos seguintes problemas:

  • O ficheiro de acionadores não está no ramo predefinido. Para resolver este problema, mova o ficheiro de acionadores para o ramo predefinido.
  • O ficheiro de acionadores tem um formato inválido. Este erro é indicado por uma faixa na página do repositório com a mensagem Build triggers configuration error: .... Para corrigir este problema, leia o esquema do ficheiro de acionadores. Quando a configuração do ficheiro de acionadores está correta, a faixa na página do repositório indica Valid build triggers configuration.

Erro de configuração dos acionadores de compilação

Depois de enviar o ficheiro triggers.yaml para o repositório do Secure Source Manager, é apresentado o seguinte erro numa faixa:

Build cannot be created.

Este problema ocorre pelos seguintes motivos:

  • O ficheiro de configuração do Cloud Build tem opções inválidas.
  • O ficheiro de configuração do Cloud Build tem um formato inválido.
  • A conta de serviço do Secure Source Manager não tem as autorizações necessárias para usar a conta de serviço do Cloud Build especificada pelo utilizador.

Para corrigir este problema:

A compilação falha durante a execução

Se uma compilação for acionada com êxito, mas falhar durante a execução, o commit associado tem o estado de commit Falha.

Para resolver problemas de uma compilação com falhas, na página do repositório, junto ao estado do commit com falhas, clique em Detalhes.

O registo de execução do Cloud Build é aberto. Para mais informações sobre a resolução de problemas de compilações no Cloud Build, consulte o artigo Resolva erros de compilação.