Skip to main content

Restringindo o acesso aos tipos de máquina

Você pode definir restrições sobre os tipos de máquinas que os usuários podem escolher ao criarem os codespaces na sua organização.

Quem pode usar esse recurso?

To manage access to machine types for the repositories in an organization, you must be an owner of the organization.

As organizações com os planos do GitHub Team e do GitHub Enterprise podem pagar pelo uso de membros e colaboradores do GitHub Codespaces. Depois, essas organizações podem acessar configurações e políticas para gerenciar codespaces pagos pela organização. Para obter mais informações, confira "Como escolher quem tem a propriedade e paga pelos codespaces em sua organização" e "Planos do GitHub."

Visão geral

Normalmente, ao criar um codespace, você tem uma escolha de especificações para a máquina que executará seu codespace. Você pode escolher o tipo de máquina que melhor se adapte às suas necessidades. Para obter mais informações, confira "Como criar um codespace para um repositório".

Se você pagar para usar o GitHub Codespaces, a escolha do tipo de computador vai afetar a sua cobrança. O custo de computação de um codespace é proporcional ao número de núcleos de processador no tipo de computador escolhido. Por exemplo, o custo de computação de usar um codespace por uma hora em um computador de 16 núcleos é oito vezes maior que em um computador de dois núcleos. Para saber mais sobre preço, confira "Sobre o faturamento do GitHub Codespaces".

Como proprietário da organização, você deverá configurar restrições sobre os tipos de máquina disponíveis. Por exemplo, se o trabalho na sua organização não exigir energia de computação ou espaço de armazenamento significativo, você poderá remover as máquinas com muitos recursos da lista de opções que as pessoas podem escolher. Faça isso definindo uma ou mais políticas nas configurações dos GitHub Codespaces da organização.

Comportamento quando você define uma restrição de tipo de máquina

Se houver codespaces que não estão mais em conformidade com uma política que você definiu, esses codespaces continuarão operando até que sejam interrompidos ou atinjam o tempo limite. Quando o usuário tentar retomar o codespace, será mostrada uma mensagem informando que o tipo de computador selecionado não é mais permitido nessa organização e solicitando que ele escolha um tipo de computador alternativo.

Se você remover mais tipos de máquina de especificação exigidos pela configuração de GitHub Codespaces para um repositório individual na organização, não será possível criar um codespace para esse repositório. Quando alguém tentar criar um codespace, verá uma mensagem dizendo que não há tipos de máquina válidos disponíveis que atendam aos requisitos da configuração de GitHub Codespaces do repositório.

Observação: qualquer pessoa que possa editar o arquivo de configuração devcontainer.json em um repositório pode definir uma especificação mínima para os computadores que podem ser usados para os codespaces desse repositório. Para obter mais informações, confira "Definindo uma especificação mínima para máquinas de codespaces".

Se a configuração de uma política para tipos de máquina impedir que as pessoas usem GitHub Codespaces para um repositório em particular, há duas opções:

  • É possível ajustar suas políticas para remover especificamente as restrições do repositório afetado.
  • Qualquer pessoa que tenha um codespace ao qual nao tem mais acesso devido à nova política, pode exportar o seu codespace para um branch. Esta branch conterá todas as alterações feitas no codespace. Será possível abrir um novo codespace nesse branch com um tipo de máquina compatível ou trabalhar localmente neste branch. Para obter mais informações, confira "Exportando alterações para um branch".

Definindo políticas específicas da organização e do repositório

Ao criar uma política, você define se ela se aplica a todos os repositórios da organização ou apenas a repositórios específicos. Se você definir uma política para toda a organização, todas as políticas que você definir para repositórios individuais devem estar dentro da restrição definida no nível da organização. A adição de políticas torna a escolha de máquinas mais restritiva.

Por exemplo, você poderia criar uma política para toda a organização que restringisse os tipos de máquina a 2 ou 4 núcleos. Em seguida, você pode definir uma política para o Repositório A que o restrinja a apenas máquinas com 2 núcleos. Definir uma política para o Repositório A que o restringiu a máquinas com 2, 4, ou 8 núcleos resultariam em uma escolha de máquinas com apenas 2 ou 4 núcleos, porque a política de toda a organização impede o acesso a máquinas com 8 núcleos.

Se você adicionar uma política para toda a organização, você deverá configurá-la para a maior escolha de tipos de máquina que estarão disponíveis para qualquer repositório na sua organização. Em seguida, você pode adicionar políticas específicas ao repositório para restringir ainda mais a escolha.

Observação: políticas de codespaces só se aplicam a codespaces pagos por sua organização. Se alguém criar um codespace para um repositório na sua organização por conta própria, o codespace não será associado a essas políticas. Para obter mais informações, confira "Como escolher quem tem a propriedade e paga pelos codespaces em sua organização".

Adicionar uma política para limitar os tipos de máquina disponíveis

  1. No canto superior direito do GitHub.com, selecione sua foto do perfil e em Suas organizações.

    Captura de tela do menu suspenso na imagem de perfil do @octocat. "Suas organizações" está contornado em laranja escuro.

  2. Ao lado da organização, clique em Configurações.

  3. Na seção "Código, planejamento e automação" da barra lateral, selecione Codespaces e clique em Políticas.

  4. Na página "Políticas de codespaces", clique em Criar Política.

  5. Insira um nome para sua nova política.

  6. Clique em Adicionar restrição e escolha Tipos de computadores.

  7. Clique em para editar a restrição e, em seguida, limpe a seleção de todos os tipos de computador que você não deseja que estejam disponíveis.

    Captura de tela da lista suspensa "Valores permitidos" com opções para quatro tipos de computador. As opções de computadores de 2 núcleos e 4 núcleos estão selecionadas.

  8. Clique fora da caixa de diálogo para fechá-la.

  9. Por padrão, a política é definida para ser aplicada a todos os repositórios. Se você quiser que ela se aplique somente a alguns dos repositórios na sua organização, clique em Todos os repositórios e em Repositórios selecionados no menu suspenso.

    Captura de tela do menu suspenso de seleção de repositório, mostrando as opções "Todos os repositórios" e "Repositórios selecionados".

    Observação: se você estiver adicionando uma restrição a uma política existente que já contém a restrição "Máximo de codespaces por usuário", não poderá aplicar a política aos repositórios selecionados. Isso ocorre porque a restrição "Máximo de coderspaces por usuário" sempre se aplica a todos os repositórios na organização.

    Com a opção Repositórios selecionados marcada:

    1. Clique em .

      Captura de tela do ícone de configurações (um símbolo de engrenagem) à esquerda de um botão denominado "Repositórios selecionados".

    2. Selecione os repositórios aos quais você quer que esta política seja aplicada.

    3. Na parte inferior da lista de repositórios, clique em Selecionar repositórios.

      Captura de tela de uma lista de repositórios, cada um com uma caixa de seleção. Três repositórios são selecionados.

  10. Para adicionar outra restrição à política, clique em Adicionar restrição e escolha outra restrição. Para obter informações sobre outras restrições, confira:

  11. Depois de concluir a adição de restrições à política, clique em Salvar.

A política será aplicada a todos os codespaces que podem ser cobrados da sua organização. A restrição de tipo de computador também é aplicada a codespaces existentes quando alguém tenta reiniciar um codespace interrompido ou reconectar-se a um codespace ativo.

Editando uma política

Você pode excluir ou editar uma política existente. Por exemplo, você talvez queira adicionar restrições a ou removê-las de uma política.

  1. Exibir a página "Políticas de codespaces". Para obter mais informações, confira "Como adicionar uma política para limitar os tipos de computadores disponíveis".
  2. Clique no nome da política que você deseja editar.
  3. Ao lado da restrição "Tipos de computadores", clique em .
  4. Faça as alterações necessárias e clique em Salvar.

Excluindo uma política

  1. Exibir a página "Políticas de codespaces". Para obter mais informações, confira "Como adicionar uma política para limitar os tipos de computadores disponíveis".

  2. Clique em à direita da política que você deseja excluir.

    Captura de tela de uma política com o botão Excluir (um ícone de lixeira) realçado com uma estrutura de tópicos laranja escura.

Leitura adicional