Etapa 8: atualizar o livro de receitas para criar e copiar arquivos - 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á.

Etapa 8: atualizar o livro de receitas para criar e copiar arquivos

Importante

O AWS OpsWorks Stacks não está mais aceitando novos clientes. Os clientes atuais poderão usar o console do OpsWorks, a API, a CLI e os recursos do CloudFormation normalmente até 26 de maio de 2024, quando serão descontinuados. Para se preparar para essa transição, recomendamos que você transfira suas pilhas para o AWS Systems Manager o mais rápido possível. Para obter mais informações, consulte AWS OpsWorks Stacks Perguntas frequentes sobre o fim da vida útil e Como migrar seus aplicativos AWS OpsWorks Stacks para o Application Manager AWS Systems Manager.

Atualize seu livro de receitas, adicionando uma receita que adiciona dois arquivos à instância. O primeiro recurso na receita cria um arquivo completamente com código de receita. Isso é semelhante a executar os comandos cat, echo ou touch no Linux ou os comandos echo ou fsutil no Windows. Essa técnica é útil para alguns arquivos, pequenos ou simples. O segundo recurso na receita copia um arquivo no livro de receitas para outro diretório na instância. Isso é semelhante a executar o comando cp no Linux ou o comando copy no Windows. Essa técnica é útil para muitos arquivos, grandes ou complexos.

Antes de iniciar esta etapa, complete Etapa 7: atualizar o livro de receita para criar um diretório para certificar-se de que o diretório pai dos arquivos já existe.

Para atualizar o livro de receitas na instância e executar a nova receita
  1. Na estação de trabalho local, no diretório opsworks_cookbook_demo, crie um subdiretório chamado files.

  2. No subdiretório files, crie um arquivo chamado hello.txt com o seguinte texto: Hello, World!

  3. No subdiretório recipes, no diretório opsworks_cookbook_demo, crie um arquivo chamado create_files.rb com o seguinte código. Para obter mais informações, acesse o arquivo e cookbook_file.

    file "Create a file" do content "<html>This is a placeholder for the home page.</html>" group "root" mode "0755" owner "ec2-user" path "/tmp/create-directory-demo/index.html" end cookbook_file "Copy a file" do group "root" mode "0755" owner "ec2-user" path "/tmp/create-directory-demo/hello.txt" source "hello.txt" end

    O recurso file cria um arquivo no caminho especificado. O recurso cookbook_file copia o arquivo do diretório files recém-criado no livro de receitas (o Chef espera encontrar um subdiretório de nome padrão chamado files de onde ele pode copiar arquivos) para outro diretório na instância.

  4. No terminal ou no prompt de comando, use o comando tar para criar uma nova versão do arquivo opsworks_cookbook_demo.tar.gz, que contém o diretório opsworks_cookbook_demo e o conteúdo atualizado.

  5. Carregue o arquivo opsworks_cookbook_demo.tar.gz atualizado no bucket do S3.

  6. 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::create_files.

Para testar a receita
  1. Faça login na instância, se ainda não tiver feito.

  2. No prompt de comando, execute os seguintes comandos, um de cada vez, para confirmar que os novos arquivos foram adicionados:

    sudo cat /tmp/create-directory-demo/index.html sudo cat /tmp/create-directory-demo/hello.txt

    O conteúdo dos arquivos é exibido:

    <html>This is a placeholder for the home page.</html> Hello, World!

Na próxima etapa, você irá atualizar o livro de receitas para executar um comando na instância.