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
- Configure o seu ambiente da CLI do Code Engine.
- Criar e trabalhar com um projeto.
- Escolher uma chave SSH para usar.
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.
-
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.
-
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.
- Depois que o projeto estiver no status Ativo, clique no nome do projeto na página Code Engine Projects.
- Na página Componentes, clique em Segredos e configmaps.
- Na página Segredos e configmaps, clique em Criar para criar seu segredo.
- Na página Criar segredo ou configmap, conclua as etapas a seguir:
- Selecione SSH secret e clique em Avançar.
- Forneça um nome; por exemplo,
mysecret-ssh
. - Inclua a chave privada SSH para esse segredo..
- 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.
Opção | Descrição |
---|---|
--name |
O nome do segredo ssh. Use um nome que seja exclusivo dentro do projeto. Esse valor é necessário.
|
--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,
- Acesse o painel do Code Engine.
- Selecione um projeto (ou crie um).
- Na página de projeto, clique em Construções de imagem.
- Na guia Construção de imagem, clique em Criar.
- 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.
- 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