

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 12: atualizar o livro de receitas para usar JSON personalizado
<a name="gettingstarted-cookbooks-custom-json"></a>

**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](https://repost.aws/) ou por meio do Premium [AWS Support](https://aws.amazon.com/support).

Atualize seu livro de receitas adicionando uma receita que faz referência a JSON personalizado armazenado na instância.

É possível especificar informações em formato JSON personalizado sempre que criar, atualizar ou clonar uma pilha ou quando executar um comando de implantação ou pilha. Isso é útil, por exemplo, para disponibilizar uma porção pequena e inalterável de dados para as receitas na instância ao invés de receber esses dados de um banco de dados. Para obter mais informações, consulte [Usar JSON personalizado](workingstacks-json.md). 

Para esta demonstração, será necessário usar JSON personalizado para fornecer informações fictícias sobre uma fatura de cliente. O JSON personalizado será descrito posteriormente nesta etapa.

**Para atualizar o livro de receitas na instância e executar a nova receita**

1. Na sua estação de trabalho local, no subdiretório `recipes`, no diretório `opsworks_cookbook_demo`, crie um arquivo chamado `custom_json.rb` que contenha o seguinte código de receita: 

   ```
   Chef::Log.info("********** For customer '#{node['customer-id']}' invoice '#{node['invoice-number']}' **********")
   Chef::Log.info("********** Invoice line number 1 is a '#{node['line-items']['line-1']}' **********")
   Chef::Log.info("********** Invoice line number 2 is a '#{node['line-items']['line-2']}' **********")
   Chef::Log.info("********** Invoice line number 3 is a '#{node['line-items']['line-3']}' **********")
   ```

   Essa receita exibe mensagens no registro sobre os valores no JSON personalizado.

1. 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.

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

1. 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](gettingstarted-cookbooks-copy-cookbook.md). No processo "Para executar a receita", para **Recipes to execute (Receitas para executar)**, digite **opsworks\$1cookbook\$1demo::custom\$1json**. Para **Advanced**, **Custom Chef JSON**, digite o seguinte JSON personalizado:

   ```
   {
     "customer-id": "0123",
     "invoice-number": "9876",
     "line-items": {
       "line-1": "tractor",
       "line-2": "passenger car",
       "line-3": "trailer"
     }
   }
   ```

**Para testar a receita**

1. Com a página **Running command execute\$1recipes** sendo exibida a partir dos procedimentos anteriores, para **cookbooks-demo1** e **Log**, escolha **show**. A página de log **execute\$1recipes** é exibida.

1. Role para baixo no registro para encontrar entradas semelhante ao seguinte:

   ```
   [2015-11-14T14:18:30+00:00] INFO: ********** For customer '0123' invoice '9876' **********
   [2015-11-14T14:18:30+00:00] INFO: ********** Invoice line number 1 is a 'tractor' **********
   [2015-11-14T14:18:30+00:00] INFO: ********** Invoice line number 2 is a 'passenger car' **********
   [2015-11-14T14:18:30+00:00] INFO: ********** Invoice line number 3 is a 'trailer' **********
   ```

   Essas entradas exibem informações do JSON personalizado que foram digitadas na caixa **Advanced**, **Custom Chef JSON**.

Na [próxima etapa](gettingstarted-cookbooks-data-bags.md), você atualizará o livro de receitas para obter informações dos pacotes de dados, que são coleções de configurações de pilha que o OpsWorks Stacks armazena em cada instância.