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á.
Etapa 16: atualizar o livro de receitas para usar livros de receitas da comunidade
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
Finalmente, atualize o livro de receitas para usar a funcionalidade fornecida em um livro de receitas externo fornecido pela comunidade Chef. O livro de receitas externo que você usará para esta demonstração está disponível no Chef Supermarket
Quando um livro de receitas depende de outro livro de receitas, é necessário especificar uma dependência no outro livro de receitas. Para declarar e gerenciar dependências do livro de receitas, recomendamos que você use uma ferramenta chamada Berkshelf. Para obter mais informações sobre como instalar o Berkshelf na sua estação de trabalho local, consulte Sobre o Berkshelf
Depois de instalar o Berkshelf, siga estes procedimentos para declarar a dependência do livro de receitas e crie uma receita que chama o recurso no livro de receitas externo:
Para declarar a dependência de do livro de receitas
-
Na estação de trabalho local, no diretório
opsworks_cookbook_demo
, adicione a seguinte linha no final do arquivometadata.rb
:depends "application", "5.0.0"
Isso declara uma dependência em um livro de receitas chamado
application
, versão 5.0.0. -
Na raiz do diretório
opsworks_cookbook_demo
, execute o seguinte comando: O período no final do comando é intencional.berks init .
O Berkshelf cria uma série de pastas e arquivos que você poderá usar posteriormente para cenários mais avançados. O único arquivo que precisamos para esta demonstração é o arquivo chamado
Berksfile
. -
Adicione a seguinte linha no final do arquivo
Berksfile
:cookbook "application", "5.0.0"
Isso informa ao Berkshelf que você deseja usar o livro de receitas do aplicativo, versão 5.0.0
, obtido por download pelo Berkshelf no Chef Supermarket. -
No terminal ou prompt de comando, execute o seguinte comando a partir da raiz do diretório
opsworks_cookbook_demo
:berks install
O Berkshelf criará uma lista de dependências para o seu livro de receitas e para o livro de receitas do aplicativo. O Berkshelf usará essa lista de dependências no próximo procedimento.
Para atualizar o livro de receitas na instância e executar a nova receita
-
No subdiretório
recipes
, no diretórioopsworks_cookbook_demo
, crie um arquivo chamadodependencies_demo.rb
que contenha o seguinte código:application "Install NetHack" do package "nethack.x86_64" end
Essa receita depende do recurso do aplicativo do livro de receitas do aplicativo para instalar o popular jogo de aventura baseado em texto NetHack na instância. (É possível substituir qualquer outro nome do pacote que quiser, desde que o pacote já está disponível para o gerenciador de pacote na instância.)
-
Execute o comando a seguir na raiz de
opsworks_cookbook_demo
:berks package
Berkshelf usa a lista de dependências do procedimento anterior para criar um arquivo chamado
cookbooks-
, que contém o diretóriotimestamp
.tar.gzopsworks_cookbook_demo
e o conteúdo dele atualizado, incluindo os livros de receitas dependentes do livro de receitas. Renomeie esse arquivo paraopsworks_cookbook_demo.tar.gz
. -
Carregue o arquivo
opsworks_cookbook_demo.tar.gz
renomeado e atualizado no bucket do S3. -
Para atualizar o livro de receitas na instância e para executar a nova receita, siga as instruções em Etapa 5: atualizar o livro de receitas na instância e executar a receita. No processo "Para executar a receita", para Recipes to execute (Receitas para executar), digite
opsworks_cookbook_demo::dependencies_demo
. -
Depois de executar a receita, faça o login na instância e, em seguida, digite
nethack
no prompt de comando para iniciar a reprodução. (Para obter mais informações sobre o jogo, consulte NetHacke o NetHackGuia .)
Na próxima etapa, você pode limpar os AWS recursos que você usou para este passo a passo. Essa próxima etapa é opcional. Talvez você queira continuar usando esses AWS recursos à medida que continua aprendendo mais sobre AWS OpsWorks as pilhas. No entanto, manter esses AWS recursos disponíveis pode resultar em algumas cobranças contínuas em sua AWS conta. Se quiser manter esses AWS recursos disponíveis para uso posterior, você concluiu este passo a passo e pode pular para. Próximas etapas