

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.

# En savoir plus : Explorer le livre de recettes utilisé dans cette procédure pas à pas
<a name="gettingstarted-linux-explore-cookbook"></a>

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

Cette rubrique décrit le livre de recettes utilisé par OpsWorks Stacks pour la procédure pas à pas.

Un *livre de recettes* est un concept Chef. Les livres de recettes sont des fichiers d'archive qui contiennent les informations de configuration, telles que les recettes, les valeurs d'attribut, les fichiers, les modèles, les bibliothèques, les définitions et les ressources personnalisées. Une *recette* est également un concept Chef. Les recettes sont des instructions, écrites avec la syntaxe du langage Ruby, qui spécifient les ressources à utiliser et l'ordre dans lequel ces ressources sont appliquées. Pour plus d'informations, consultez [À propos des livres de recettes](https://docs.chef.io/cookbooks.html) et [À propos des recettes](https://docs.chef.io/recipes.html) sur le site web [Découvrir Chef](https://learn.chef.io/).

Pour voir le contenu du livre de recettes utilisé dans cette procédure pas à pas, extrayez le contenu du fichier [opsworks-linux-demo-cookbooks-nodejs.tar.gz](https://s3.amazonaws.com/opsworks-demo-assets/opsworks-linux-demo-cookbooks-nodejs.tar.gz) dans un répertoire vide de votre poste de travail local. (Vous pouvez également vous connecter à l'instance sur laquelle vous avez déployé le livre de recettes et explorer le contenu du répertoire `/var/chef/cookbooks`.)

Le fichier `default.rb` dans le répertoire `cookbooks/nodejs_demo/recipes` est l'emplacement où le livre de recettes exécute son code : 

```
app = search(:aws_opsworks_app).first
app_path = "/srv/#{app['shortname']}"

package "git" do
  options "--force-yes" if node["platform"] == "ubuntu" && node["platform_version"] == "18.04"
end

application app_path do
  javascript "4"
  environment.update("PORT" => "80")

  git app_path do
    repository app["app_source"]["url"]
    revision app["app_source"]["revision"]
  end

  link "#{app_path}/server.js" do
    to "#{app_path}/index.js"
  end

  npm_install
  npm_start
end
```

Voici ce que fait le fichier :
+ `search(:aws_opsworks_app).first` utilise la recherche Chef pour rechercher des informations sur l'application qui sera déployée sur l'instance. Ces informations incluent des paramètres tels que le nom court de l'application et les détails du référentiel source. Comme une seule application a été déployée dans cette procédure pas à pas, la recherche Chef obtient ces paramètres depuis le premier élément d'information au sein de l'index de recherche `aws_opsworks_app` sur l'instance. Chaque fois qu'une instance est lancée, OpsWorks Stacks stocke ces informations et d'autres informations connexes sous forme d'ensemble de sacs de données sur l'instance elle-même, et vous obtenez le contenu du sac de données via Chef search. Même si vous pouvez coder en dur ces paramètres dans la recette, l'utilisation des conteneurs de données et la recherche Chef constituent une approche plus solide. Pour plus d'informations sur les conteneurs de données, consultez [OpsWorks Référence du sac de données Stacks](data-bags.md). Consultez aussi [À propos des conteneurs de données](https://docs.chef.io/data_bags.html) sur le site web [Découvrir Chef](https://learn.chef.io/). Pour plus d'informations sur la recherche Chef, consultez [À propos de la recherche](https://docs.chef.io/chef_search.html) sur le site web [Découvrir Chef](https://learn.chef.io/).
+ La ressource `package` installe Git sur l'instance.
+ La ressource `application` décrit et déploie les applications web :
  + `javascript`est la version du JavaScript moteur d'exécution à installer.
  + `environment` définit une variable d'environnement.
  + `git` obtient le code source du référentiel et de la branche spécifiés.
  + `app_path` est le chemin d'accès pour cloner le référentiel. Si le chemin n'existe pas sur l'instance, OpsWorks Stacks le crée.
  + `link` crée un lien symbolique.
  + `npm_install` installe le Gestionnaire de package de nœud, le gestionnaire de package par défaut pour Node.js.
  + `npm_start` exécute Node.js.

Bien que OpsWorks Stacks ait créé le livre de recettes utilisé pour cette procédure pas à pas, vous pouvez créer vos propres livres de recettes. Pour savoir comment procéder, consultez [Mise en route : livres de recettes](gettingstarted-cookbooks.md). De même, consultez [À propos des livres de recettes](https://docs.chef.io/cookbooks.html), [À propos des recettes](https://docs.chef.io/recipes.html) et [Découvrir les bases de Chef sur Ubuntu](https://learn.chef.io/modules/learn-the-basics/ubuntu#/) sur le site web [Découvrir Chef](https://learn.chef.io/) et la section « Notre premier livre de recettes Chef » de [Premières étapes avec Chef](http://gettingstartedwithchef.com/first-steps-with-chef.html) sur le site web [Mise en route avec Chef](http://gettingstartedwithchef.com/).