|
Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official. |
|
Esta é uma documentação não divulgada para Admission Controller 1.34-dev. |
Publique políticas no Artifact Hub
Artifact Hub é um site onde os usuários podem encontrar, instalar e publicar pacotes e configurações para CNCF projetos.
As políticas SUSE Security Admission Controller podem ser publicadas no Artifact Hub e tornadas descobríveis para o amplo público de usuários do CNCF.
|
O Artifact Hub é uma plataforma de agregação de conteúdo e não hospeda realmente os artefatos que são publicados nele. O Artifact Hub exige que você hospede fisicamente repositórios de imagens de contêiner em um registro de contêiner ou em um servidor web. Consulte a seção distributing policies para mais informações sobre como hospedar suas políticas. |
Este documento foca nos passos necessários para tornar uma política Admission Controller descobrível no Artifact Hub.
Prepare seu repositório Git
O Artifact Hub rastreia repositórios Git em busca de arquivos de metadados especiais.
Existem diferentes tipos de layouts que o repositório Git pode ter. Todos eles estão documentados em detalhes na documentação oficial do Artifact Hub.
O Artifact Hub é flexível e permite que você organize seu código dessas maneiras:
-
Tenha um repositório Git dedicado ao Artifact Hub: este repositório não conterá nenhum código-fonte de política. Será uma coleção dos arquivos YAML necessários pelo Artifact Hub.
-
Adicione um diretório do Artifact Hub no repositório Git que contém a fonte da sua política. Esta é uma iteração da abordagem anterior, focando apenas em uma política, aquela que está definida no repositório Git. Essa abordagem permite manter várias versões da política publicadas no Artifact Hub.
-
Adicione os arquivos
artifacthub-pkg.ymleartifacthub-repo.ymlà raiz do repositório Git que contém o código-fonte da política. Essa abordagem é a mais simples. A única limitação é que apenas a versão mais recente da política será visível no Artifact Hub.
A última abordagem é utilizada em nossos modelos oficiais de política. O repositório Git que é criado inclui o arquivo artifacthub-repo.yml, e nossas ações do GitHub geram e enviam o artifacthub-pkg.yml para um branch artifacthub para o Artifact Hub consumir.
Etapas de Publicação
Antes de publicar uma política no Artifact Hub, você deve criar uma conta lá.
Antes de publicar a política, certifique-se de que seu repositório Git tenha o layout adequado, com um metadata.yml bem formatado e com as anotações obrigatórias.
Se você quiser fazer isso manualmente, pode criar o arquivo artifacthub-pkg.yml fazendo um kwctl scaffold artifacthub (com a versão >= 1.23). Este comando obtém o metadata.yml no caminho atual e gera um artifacthub-pkg.yml. O artifacthub-pkg.yml contém campos como version:, createdAt:, que precisam corresponder a um formato específico e estar atualizados. O formato do artifacthub-pkg.yml é descrito aqui.
Se você usar nossas ações do GitHub >= v4.0.0, o fluxo de trabalho de lançamento pode ser configurado com a entrada artifacthub: true. Se configurado assim, após um lançamento bem-sucedido (depois que a política foi construída, assinada e enviada com sucesso), nossas ações do GitHub têm um último trabalho que gera o artifacthub-pkg.yml para você, em seguida, faz o commit e envia as alterações para o branch artifacthub. Os arquivos canônicos são sempre aqueles no branch main. Para o comportamento de lançamentos anteriores de nossas ações do GitHub, consulte as versões da documentação anteriores à 1.23.
Por fim, certifique-se de que sua política esteja publicada dentro de um registro de contêiner ou em um servidor web.
|
Neste momento, o conteúdo do arquivo |
Uma vez que tudo esteja no lugar, faça login no Artifact Hub e vá para o seu plano de controle.
Decida se deseja publicar a política como um usuário ou sob uma organização do Artifact Hub à qual você pertence. Isso é feito escolhendo o "contexto do painel de controle" correto.
Em seguida, pressione o botão "Adicionar" e preencha o formulário:
-
Escolha "Admission Controller políticas" como tipo.
-
Digite um "Nome" e "Nome de exibição" de sua escolha.
-
Digite a URL do seu repositório Git.
-
Digite
artifacthubcomo o branch a ser rastreado.
Finalmente, pressione o botão "Adicionar". Isso o levará de volta à página "Repositórios", onde você verá seu repositório recém-criado.
Cada repositório possui vários campos de informação. Encontre a propriedade "ID" do repositório que você acabou de criar e copie-a.
Volte para o seu repositório Git e edite o artifacthub-repo.yml. Certifique-se de que a chave repositoryID encontrada dentro do documento tenha o valor que você acabou de copiar da página da web do Artifact Hub.
|
O formato do arquivo Agora é um bom momento para fazer algumas personalizações adicionais a este arquivo. |
Uma vez que você tenha terminado as alterações, faça o commit do arquivo artifacthub-repo.yml atualizado e faça o push. Durante a próxima varredura, o Artifact Hub encontrará este arquivo e adicionará o "Publicador Verificado" distintivo ao seu repositório do Artifact Hub.
Mantendo o Artifact Hub em Sincronização
Não se esqueça de atualizar o conteúdo do arquivo artifacthub-pkg.yml toda vez que você lançar uma nova versão da sua política. Por exemplo, você deve atualizar o campo io.kubewarden.policy.version (que geralmente corresponde à tag de política OCI), e qualquer outra anotação que você deseja alterar.
|
O conteúdo do arquivo |