

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 8 : Mettre à jour le livre de recettes pour créer et copier des fichiers
<a name="gettingstarted-cookbooks-create-file"></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.

Mettez à jour votre livre de recettes en ajoutant une recette qui ajoute deux fichiers à l'instance. La première ressource de la recette crée intégralement un fichier avec le code de la recette. Cette action est similaire à l'exécution des commandes Linux **cat**, **echo** ou **touch**, ou des commandes Windows **echo** ou **fsutil**. Cette technique est utile pour quelques fichiers simples ou petits. La deuxième ressource de la recette copie un fichier du livre de recettes sur un autre répertoire de l'instance. Cette action est similaire à l'exécution de la commande Linux **cp** ou de la commande Windows **copy**. Cette technique est utile dans le cas de fichiers nombreux, volumineux ou complexes.

Avant de démarrer cette étape, complétez [Étape 7 : Mettre à jour le livre de recettes pour créer un répertoire](gettingstarted-cookbooks-create-directory.md) pour vous assurer que répertoire parent des fichiers existe déjà.

**Pour mettre à jour le livre de recettes sur l'instance et exécuter la nouvelle recette**

1. Sur votre ordinateur local, dans le répertoire `opsworks_cookbook_demo`, créez un sous-répertoire nommé `files`. 

1. Dans le sous-répertoire `files`, créez un fichier nommé `hello.txt` avec le texte suivant : **Hello, World\$1** 

1. Dans le sous-répertoire `recipes` du répertoire `opsworks_cookbook_demo`, créez un fichier nommé `create_files.rb` avec le code suivant. Pour plus d'informations, consultez [file](https://docs.chef.io/resource_file.html) et [cookbook\$1file](https://docs.chef.io/resource_cookbook_file.html).

   ```
   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
   ```

   La ressource `file` crée un fichier dans le chemin d'accès spécifié. La ressource `cookbook_file` copie le fichier depuis le répertoire `files` que vous venez de créer dans le livre de recettes (Chef s'attend à trouver un sous-répertoire standard nommé `files` depuis lequel il peut copier les fichiers) vers un autre répertoire sur l'instance.

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

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

1. Suivez les procédures décrites dans [Étape 5 : Mettre à jour le livre de recettes sur l'instance et exécuter la recette](gettingstarted-cookbooks-copy-cookbook.md) 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\$1cookbook\$1demo::create\$1files**.

**Pour tester la recette**

1. Connectez-vous à l'instance, si vous le n'avez pas déjà fait.

1. A l'invite de commande, exécutez les commandes suivantes, une à la fois, afin de confirmer que les nouveaux fichiers ont été ajoutés :

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

   Le contenu du fichier s'affiche :

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

Dans l'[étape suivante](gettingstarted-cookbooks-run-command.md), vous allez mettre à jour le livre de recettes pour exécuter une commande sur l'instance.