Repositórios de livro de receitas - AWS OpsWorks

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Repositórios de livro de receitas

Importante

O AWS OpsWorks Stacks serviço chegou ao fim da vida útil em 26 de maio de 2024 e foi desativado para clientes novos e existentes. É altamente recomendável que os clientes migrem suas cargas de trabalho para outras soluções o mais rápido possível. Se você tiver dúvidas sobre migração, entre em contato com a AWS Support equipe no AWS re:POST ou por meio do Premium AWS Support.

Seus livros de receita personalizados devem ser armazenados em um repositório online, seja um arquivo como um .zip ou um gerente de controle de fonte como Git. Uma pilha pode ter apenas um repositório de livro de receitas personalizado, mas o repositório pode conter qualquer número de livros de receita. Quando você instala ou atualiza os livros de receitas, o AWS OpsWorks Stacks instala o repositório inteiro em um cache local em cada uma das instâncias da pilha. Quando uma instância precisa, por exemplo, executar uma ou mais receitas, ela usa o código do cache local.

A seguir veja a descrição de como estruturar seu repositório de livro de receitas, que depende do tipo. O texto em itálico nas ilustrações representa nomes de diretório e arquivo definidos pelo usuário, incluindo o nome do repositório ou arquivo.

Gerente do controle de fonte

AWS OpsWorks O Stacks é compatível com os seguintes gerenciadores de controle de origem:

  • Pilhas do Linux: Git e Subversion

  • Pilhas do Windows: Git

Veja a seguir a estrutura de diretório e arquivo necessários:

Estrutura obrigatória para repositórios de livros de receita SCM
  • Os diretórios dos livros de receita devem ser todos de excelente nível.

Arquivo

AWS OpsWorks O Stacks é compatível com os seguintes arquivos:

  • Pilhas do Linux: arquivos zip, gzip, bzip2 ou tarball, armazenados no Amazon S3 ou em um site (arquivamento HTTP).

    AWS OpsWorks O Stacks não suporta arquivos tar não compactados.

  • Pilhas do Windows: arquivos zip e tgz (tar compactados em gzip), armazenados no Amazon S3.

Veja a seguir o diretório necessário e estrutura de arquivo, que dependem se você está executando uma pilha do Linux ou Windows. A estrutura do livro de receitas é a mesma para os repositórios de SCM, então é representada por três-pontos (...).

Estrutura obrigatória para arquivamentos
  • Pilhas do Linux: os diretórios dos livros de receitas devem estar contidos em um diretório raiz.

  • Pilhas do Windows: os livros de receita devem estar no topo de nível do arquivo.

    Se tiver apenas um livro de receitas, você pode omitir opcionalmente o diretório do livro de receitas e colocar os seus arquivos em nível superior. Nesse caso, o AWS OpsWorks Stacks obtém o nome do livro de receitas do metadata.rb.

Cada diretório de livro de receitas tem pelo menos um e geralmente todos desses diretórios e arquivos padrão a seguir, que devem usar nomes padrão:

  • attributes: os arquivos de atributos do livro de receitas.

  • recipes: os arquivos de receita do livro de receitas.

  • templates: os arquivos modelo do livro de receitas.

  • outro: diretórios opcionais definidos pelo usuário que contêm outros tipos de arquivos, como definições ou especificações.

  • metadata.rb: os metadados do livro de receitas.

    Para Chef 11.10 e posterior, se suas receitas dependerem de outros livros de receitas, você deve incluir declarações de depends correspondentes no arquivo de seu livro de receitas de metadata.rb. Por exemplo, se o seu livro de receitas inclui uma receita com a instrução include_recipe anothercookbook::somerecipe, o arquivo metadata.rb do livro de receitas deve incluir a seguinte linha: depends "anothercookbook". Para obter mais informações, consulte Sobre metadados do livro de receitas.

Os modelos devem estar em um subdiretório do diretório templates, que contém pelo menos um e opcionalmente múltiplos subdiretórios. Esses subdiretórios podem, opcionalmente, ter subdiretórios também.

  • Os modelos geralmente têm um subdiretório default, que contém os arquivos de modelo que Chef usa por padrão.

  • other representa subdiretórios opcionais que podem ser usados para modelos específicos de sistemas operacionais.

  • Chef usa automaticamente o modelo do subdiretório apropriado, com base em convenções de nome que são descritas em Especificidade do arquivo. Por exemplo, para os sistemas operacionais Linux e , você pode colocar modelos específicos de sistema operacional em subdiretórios nomeados amazonamazon ou ubuntuubuntu, respectivamente.

Os detalhes de como lidar com livros de receita personalizados dependem de seu tipo de repositório preferido.

Para usar um arquivo
  1. Implemente seu livro de receitas usando a estrutura de pasta mostrada na seção anterior.

  2. Crie um arquivo comprimido e carregue-o para um bucket Amazon S3 ou site.

    Se você atualizar seus livros de receita, deve criar e carregar um novo arquivo de armazenamento. O conteúdo entregue aos buckets do Amazon S3 pode conter conteúdo do cliente. Para obter mais informações sobre a remoção de dados confidenciais, consulte Como faço para esvaziar um bucket do S3? ou Como faço para excluir um bucket do S3?.

Para usar um SCM
  1. Configure um repositório de Git ou Subversion usando a estrutura mostrada anteriormente.

  2. Opcionalmente, use os recursos de controle da versão para implementar diversas ramificações ou versões.

    Se você atualizar seus livros de receitas, poderá fazer isso em uma nova ramificação e apenas OpsWorks direcionar para usar a nova versão. Também é possível especificar versões marcadas em particular. Para obter detalhes, consulte Especificação de um repositório de livro de receitas personalizado.

Instalação de livros de receitas personalizadosdescreve como fazer com que o AWS OpsWorks Stacks instale seu repositório de livros de receitas nas instâncias da pilha.

Importante

Depois de atualizar os livros de receitas existentes no repositório, você deve executar o comando update_cookbooks stack para direcionar o AWS OpsWorks Stacks a atualizar o cache local de cada instância online. Para ter mais informações, consulte Executa comandos de pilha.