IBM Cloud Docs
Acessando repositórios de código privado

Acessando repositórios de código privado

Um repositório de código, como o GitHub ou o GitLab, armazena código-fonte. Com o Code Engine, é possível incluir acesso em um repositório de código privado e, em seguida, fazer referência a esse repositório por meio de sua compilação.

Depois de criar o acesso ao seu repositório de código privado, será possível extrair código do repositório, construí-lo e implementar um app ou tarefa com o IBM Cloud® Code Engine.

Criar acesso ao repositório de código

Ao criar acesso a um repositório de código privado, você estará salvando as credenciais em Code Engine. Essas credenciais são chamadas segredos SSH.

Antes de Iniciar

Escolhendo uma chave SSH para o repositório de código

Tanto para o GitHub como para o GitLab, é possível decidir entre dois tipos de chaves SSH para se conectar ao seu repositório de origem.

  1. Uma chave SSH associada ao repositório de código-fonte; ela tem acesso apenas aos repositórios nos quais a chave SSH é registrada. Esse acesso é somente leitura, por padrão, que é o nível necessário pelo Code Engine para fazer download do código-fonte. É possível selecionar o acesso de gravação, se necessário. Considere escolher esta opção para configurar uma chave SSH com escopo definido para repositórios específicos para controlar o acesso a apenas os repositórios especificados.

  2. Uma chave SSH associada a um usuário, por exemplo, sua própria conta do usuário ou um ID funcional que está disponível em sua organização. Esta chave SSH tem as permissões do repositório da conta de usuário. O Code Engine requer acesso de leitura para download do código-fonte.

    Como a configuração de uma chave SSH com escopo definido para uma conta de usuário fornece acesso à conta completa, é importante estar ciente das implicações de segurança ao escolher esta opção.

Não crie seu arquivo de chave SSH com uma passphrase segura, pois essa ação faz com que o seu comando build falhe.

Incluindo acesso de repositório privado a partir do console

Antes de iniciar, crie um projeto.

  1. Depois que o projeto estiver no status Ativo, clique no nome do projeto na página Code Engine Projects.
  2. Na página Componentes, clique em Segredos e configmaps.
  3. Na página Segredos e configmaps, clique em Criar para criar seu segredo.
  4. Na página Criar segredo ou configmap, conclua as etapas a seguir:
    1. Selecione SSH secret e clique em Avançar.
    2. Forneça um nome; por exemplo, mysecret-ssh.
    3. Inclua a chave privada SSH para esse segredo..
    4. Clique em Criar para criar o segredo.

Agora que o seu segredo foi criado no console, acesse a página Secrets and configmaps (Segredos e mapas de configuração) para visualizar uma lista de segredos e mapas de configuração definidos. É possível aplicar filtros para customizar a lista para atender às suas necessidades

É possível criar um acesso ao construir uma imagem.

Incluindo acesso de repositório privado com a CLI

A partir da versão da CLI 1.42.0, a definição e o trabalho com segredos na CLI são unificados no grupo de comandos secret grupo de comandos. Consulte os comandos ibmcloud ce secret Use a opção --format para especificar a categoria do segredo, como basic_auth, generic, hmac, ssh, tls, ou registry. Embora você possa continuar a usar o repo grupo de comando, aproveite as vantagens do grupo de comando unificado secret grupo de comando unificado. Para criar um segredo para acessar um serviço com uma chave SSH, como para se autenticar em um repositório Git como GitHub ou GitLab,, use o comando ibmcloud ce secret create --format ssh comando. Um segredo SSH também é usado como um segredo de acesso ao repositório Git. Para saber mais sobre como trabalhar com segredos em Code Engine, consulte Trabalho com segredos.

Um segredo SSH contém as credenciais para acessar o repositório privado que contém o código-fonte para criar sua imagem de contêiner. Um segredo SSH também é usado como um segredo de acesso ao repositório Git.

Para criar um segredo SSH com a CLI, use o comando secret create --format ssh. Esse comando requer um nome e um caminho de chave e também permite outros argumentos opcionais como o caminho para o arquivo de hosts conhecidos. Para obter uma lista completa de opções, consulte o comando ibmcloud ce secret create --format ssh.

Por exemplo, o comando a seguir cria um segredo SSH chamado myrepossh para um repositório em github.com que usa sua chave privada SSH pessoal que se encontra no local padrão do sistema.

Mac OS ou Linux®

ibmcloud ce secret create --format ssh --name myrepossh --key-path $HOME/.ssh/id_rsa --known-hosts-path $HOME/.ssh/known_hosts

Windows

ibmcloud ce secret create --format ssh --name myrepossh --key-path "%HOMEPATH%\.ssh\id_rsa" --known-hosts-path "%HOMEPATH%\.ssh\known_hosts"

A tabela a seguir resume as opções que são usadas com o comando repo create neste exemplo. Consulte o comando ibmcloud ce repo create para obter mais informações sobre ele e as opções que ele oferece.

Descrição do comando
Opção Descrição
--name

O nome do segredo ssh. Use um nome que seja exclusivo dentro do projeto. Esse valor é necessário.

  • O nome deve começar e terminar com um caractere alfanumérico minúscula.
    -O nome deve ter 253 caracteres ou menos e pode conter letras minúsculas, números, pontos (.) e hifens (-).
--key-path O caminho local para a chave SSH privada não criptografada. Se você usar a sua chave SSH privada pessoal, esse arquivo geralmente estará localizado em $HOME/.ssh/id_rsa (Mac OS ou Linux) ou em %HOMEPATH%.ssh\id_rsa (Windows). Este valor é necessário.
--known-hosts-path O caminho para os seus arquivos host conhecido. Este valor é um recurso de segurança para assegurar que a chave privada seja usada apenas para autenticar em hosts que você acessou anteriormente, especificamente, os hosts do GitHub ou do GitLab. Este arquivo geralmente está localizado em $HOME/.ssh/known_hosts (Mac OS ou Linux) ou em %HOMEPATH%.ssh\known_hosts (Windows).

Referência a um repositório Git privado em uma construção

É possível fazer referência ao acesso existente ou criar um acesso ao construir uma imagem a partir do console.

Referência a um repositório privado Git em uma construção a partir do console

Para fazer referência ao seu repositório privado Git em uma construção,

  1. Acesse o painel do Code Engine.
  2. Selecione um projeto (ou crie um).
  3. Na página de projeto, clique em Construções de imagem.
  4. Na guia Construção de imagem, clique em Criar.
  5. Para especificar um repositório privado e incluir um acesso, insira a URL no repositório no campo URL de repositório do código e, em seguida, selecione o seu acesso de repositório de código existente ou crie um acesso.
  6. Termine de especificar informações para a sua construção e clique em Concluído.

Para obter mais informações sobre a construção de imagens, consulte Construindo uma imagem de contêiner.

O repositório de código URL deve ser um SSH URL, como git@github.com:IBM/CodeEngine.git, em vez de um HTTPS URL, como https://github.ibm.com/codeengine/ui.

Referenciando um segredo SSH em uma construção com a CLI

Para usar um segredo SSH em uma compilação, use a opção --git-repo-secret ao executar o comando build create ou o comando build update comando. Um segredo SSH também é usado como um segredo de acesso ao repositório Git.

Se você tiver uma construção existente, será possível atualizá-la usando o comando build update,

ibmcloud ce build update --name mybuild --git-repo-secret myrepossh

Se você deseja criar uma nova construção, consulte Criando uma configuração de construção com a CLI.

Próximas etapas para o acesso ao repositório Git

Depois de criar seu segredo SSH para acessar um repositório Git, é possível construir imagens por meio do código-fonte em seu repositório privado. Especifique seu segredo de SSH ao executar o comando build create com a opção --git-repo-secret