Por padrão, o fluxo de trabalho de GitHub Actions para uma configuração de pré-compilação só pode acessar o próprio conteúdo do repositório. Seu projeto pode usar recursos adicionais, localizados em outro lugar, para criar o ambiente de desenvolvimento.
Permitir que um prebuild tenha acesso de leitura a recursos externos
Você pode configurar o acesso de leitura para outros repositórios do GitHub, com o mesmo proprietário do repositório, especificando permissões no arquivo devcontainer.json
usado pela configuração de prebuild. Para obter mais informações, veja "Gerenciando o acesso a outros repositórios em seu codespace".
Observação: você só pode autorizar permissões de leitura dessa forma, e o proprietário do repositório de destino deve ser o mesmo que o proprietário do repositório para o qual você está criando um prebuild. Por exemplo, se você estiver criando uma configuração de prebuild para o repositório do octo-org/octocat
, poderá conceder permissões de leitura para outros repositórios do octo-org/*
se isso for especificado no arquivo devcontainer.json
e desde que você tenha as permissões.
Ao criar ou editar uma configuração de prebuild para um arquivo devcontainer.json
que configura o acesso de leitura para outros repositórios com o mesmo proprietário do repositório, você deverá conceder essas permissões quando clicar em Criar ou Atualizar. Para obter mais informações, confira "Como configurar pré-compilações".
Permitir que um prebuild tenha acesso de gravação a recursos externos
Se o projeto exigir acesso de gravação aos recursos ou se os recursos externos residirem em um repositório com um proprietário diferente do que o do repositório em que você está criando uma configuração de pré-build, use um personal access token para permitir esse acesso.
Você precisará criar uma conta pessoal e usá-la para criar um personal access token (classic) com os escopos adequados.
-
Crie uma nova conta pessoal em GitHub.
Aviso: embora você possa gerar o personal access token (classic) usando a conta pessoal existente, recomendamos expressamente a criação de uma conta com acesso somente aos repositórios de destino necessários para o cenário. Isso porque a permissão
repository
do token de acesso permite acesso em todos os repositórios aos quais a conta tem acesso. Para obter mais informações, confira "Como se inscrever em uma nova conta do GitHub" e "Proteção de segurança do GitHub Actions". -
Dê a nova conta acesso de leitura aos repositórios necessários. Para obter mais informações, confira "Como gerenciar o acesso de uma pessoa a um repositório da organização".
-
Ao entrar na nova conta, crie um personal access token (classic) com o escopo
repo
. Opcionalmente, se o pré-build precisar baixar pacotes do GitHub Container registry, selecione também o escoporead:packages
. Para obter mais informações, confira "Como criar um personal access token".Se a pré-compilação usar um pacote do GitHub Container registry, você deverá conceder o novo acesso à nova conta ao pacote ou configurar o pacote para herdar as permissões de acesso do repositório que você está pré-compilando. Para obter mais informações, confira "Como configurar o controle de acesso e a visibilidade de um pacote".
-
Copie a string do token. Você irá atribuir isto a um segredo de repositório de Codespaces.
-
Efetue novamente o login na conta com acesso de administrador ao repositório.
-
No repositório para o qual você deseja criar o pré-build dos GitHub Codespaces, crie um segredo de repositório do Codespaces chamado
CODESPACES_PREBUILD_TOKEN
, fornecendo o valor do token que já criou e copiou. Para obter mais informações, confira "Como gerenciar segredos criptografados do repositório e da organização para o GitHub Codespaces".
O personal access token será usado para todos os próximos pré-buids criados para o repositório. Ao contrário de outros segredos do repositório do Codespaces, o segredo CODESPACES_PREBUILD_TOKEN
é usado apenas para pré-builds e não estará disponível para uso em codespaces criados por meio do seu repositório.