Étape 12 : Mettre à jour le livre de recettes pour utiliser JSON personnalisé - AWS OpsWorks

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Étape 12 : Mettre à jour le livre de recettes pour utiliser JSON personnalisé

Important

Le AWS OpsWorks Stacks service a atteint sa fin de vie le 26 mai 2024 et a été désactivé tant pour les nouveaux clients que pour les clients existants. Nous recommandons vivement aux clients de migrer leurs charges de travail vers d'autres solutions dès que possible. Si vous avez des questions sur la migration, contactez l' AWS Support équipe sur AWS Re:Post ou via le AWS Support Premium.

Mettez à jour votre livre de recettes en ajoutant une recette qui fait référence au JSON personnalisé stocké sur l'instance.

Vous pouvez spécifier des informations au format JSON personnalisé chaque fois que vous créez, mettre à jour ou clonez une pile, ou lorsque vous exécutez une commande de pile ou de déploiement. Cela est utile, par exemple, pour rendre une petite portion invariable de données accessible à vos recettes sur l'instance au lieu d'obtenir ces données à partir d'une base de données. Pour plus d’informations, consultez Utilisation du JSON personnalisé.

Pour cette procédure pas à pas, vous allez utiliser JSON personnalisé pour fournir des informations fictives à propos d'une facture client. Le JSON personnalisé est décrit ultérieurement dans cette étape.

Pour mettre à jour le livre de recettes sur l'instance et exécuter la nouvelle recette
  1. Sur votre ordinateur local, dans le sous-répertoire recipes du répertoire opsworks_cookbook_demo, créez un fichier nommé custom_json.rb qui contient le code de recette suivant :

    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']}' **********")

    Cette recette affiche des messages dans le journal relatifs aux valeurs du JSON personnalisé.

  2. Depuis le terminal ou l'invite de commande, utilisez la commande tar pour créer une nouvelle version du fichier opsworks_cookbook_demo.tar.gz, qui contient le répertoire opsworks_cookbook_demo et son contenu chargé.

  3. Chargez le fichier opsworks_cookbook_demo.tar.gz mis à jour dans votre compartiment S3.

  4. Suivez les procédures décrites dans Étape 5 : Mettre à jour le livre de recettes sur l'instance et exécuter la recette pour mettre à jour le livre de recettes sur l'instance et exécuter la recette. Dans la procédure « Pour exécuter la recette », pour Recipes to execute (Recettes à exécuter), tapez opsworks_cookbook_demo::custom_json. Pour Advanced (Avancé), Custom Chef JSON (JSON Chef personnalisé), tapez le JSON personnalisé suivant :

    { "customer-id": "0123", "invoice-number": "9876", "line-items": { "line-1": "tractor", "line-2": "passenger car", "line-3": "trailer" } }
Pour tester la recette
  1. Avec la page Running command execute_recipes (Exécution de la commande execute_recipes) affichée à partir des procédures précédentes, pour cookbooks-demo1, pour Log (Journal), choisissez show (afficher). La page de journal execute_recipes s'affiche.

  2. Faites défiler le journal pour trouver les entrées similaires aux entrées suivantes :

    [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' **********

    Ces entrées affichent les informations du JSON personnalisé saisies dans la zone Advanced (Avancé), Custom Chef JSON (JSON Chef personnalisé).

À l'étape suivante, vous allez mettre à jour le livre de recettes pour obtenir des informations provenant des sacs de données, qui sont des ensembles de paramètres de pile que AWS OpsWorks Stacks stocke sur chaque instance.