

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.

# Création d'un WordPress CodeDeploy bundle
<a name="gui-ex-create-wp-package"></a>

La section fournit un exemple de création d'un bundle de déploiement d'applications.

1. Téléchargez WordPress, extrayez les fichiers et créez un. répertoire /scripts.

   Commande Linux :

   ```
   wget https://github.com/WordPress/WordPress/archive/master.zip
   ```

   Windows : collez `https://github.com/WordPress/WordPress/archive/master.zip` le fichier dans une fenêtre de navigateur et téléchargez le fichier zip.

   Créez un répertoire temporaire dans lequel assembler le package.

   Linux :

   ```
   mkdir /tmp/WordPress
   ```

   Windows : Créez un répertoire WordPress « », vous utiliserez le chemin du répertoire ultérieurement.

1. Extrayez la WordPress source dans le répertoire WordPress « » et créez un fichier. répertoire /scripts.

   Linux :

   ```
   unzip master.zip -d /tmp/WordPress_Temp
   cp -paf /tmp/WordPress_Temp/WordPress-master/* /tmp/WordPress
   rm -rf /tmp/WordPress_Temp
   rm -f master
   cd /tmp/WordPress
   mkdir scripts
   ```

   Windows : Accédez au répertoire « WordPress » que vous avez créé et créez-y un répertoire « scripts ».

   Si vous êtes dans un environnement Windows, veillez à définir le type de rupture des fichiers de script sur Unix (LF). Dans Notepad \+\+, il s'agit d'une option en bas à droite de la fenêtre.

1. Créez le fichier CodeDeploy **appspec.yml** dans le WordPress répertoire (si vous copiez l'exemple, vérifiez l'indentation, chaque espace compte). IMPORTANT : Assurez-vous que le chemin « source » est correct pour copier les WordPress fichiers (dans ce cas, dans votre WordPress répertoire) vers la destination prévue (/var/www/html/WordPress). Dans l'exemple, le fichier appspec.yml se trouve dans le répertoire contenant les WordPress fichiers, donc seul «/» est nécessaire. De plus, même si vous avez utilisé une AMI RHEL pour votre groupe Auto Scaling, laissez la ligne « os : linux » telle quelle. Exemple de fichier appspec.yml :

   ```
   version: 0.0
   os: linux
   files:
     - source: /
       destination: /var/www/html/WordPress
   hooks:
     BeforeInstall:
       - location: scripts/install_dependencies.sh
         timeout: 300
         runas: root
     AfterInstall:
       - location: scripts/config_wordpress.sh
         timeout: 300
         runas: root
     ApplicationStart:
       - location: scripts/start_server.sh
         timeout: 300
         runas: root
     ApplicationStop:
       - location: scripts/stop_server.sh
         timeout: 300
         runas: root
   ```

1. Créez des scripts de fichiers bash dans le WordPress . répertoire /scripts.

   Commencez `config_wordpress.sh` par créer avec le contenu suivant (si vous préférez, vous pouvez modifier directement le fichier wp-config.php).
**Note**  
Remplacez {{DBName}} par la valeur indiquée dans la RFC HA Stack (par exemple,`wordpress`).  
Remplacez {{DB\_MasterUsername}} par la `MasterUsername` valeur indiquée dans la RFC HA Stack (par exemple,`admin`).  
Remplacez {{DB\_MasterUserPassword}} par la `MasterUserPassword` valeur indiquée dans la RFC HA Stack (par exemple,`p4ssw0rd`).  
{{DB\_ENDPOINT}}Remplacez-le par le nom DNS du point de terminaison dans les sorties d'exécution de la HA Stack RFC (par exemple,`srt1cz23n45sfg.clgvd67uvydk.us-east-1.rds.amazonaws.com`). Vous pouvez le trouver dans l'[GetRfc](https://docs.aws.amazon.com/managedservices/latest/ApiReference-cm/API_GetRfc.html)opération (CLI : get-rfc --rfc-id RFC\_ID) ou dans la page de détails de la RFC de la console AMS pour la RFC HA Stack que vous avez précédemment soumise.

   ```
   #!/bin/bash
   chmod -R 755 /var/www/html/WordPress
   cp /var/www/html/WordPress/wp-config-sample.php /var/www/html/WordPress/wp-config.php
   cd /var/www/html/WordPress
   sed -i "s/database_name_here/{{DBName}}/g" wp-config.php
   sed -i "s/username_here/{{DB_MasterUsername}}/g" wp-config.php
   sed -i "s/password_here/{{DB_MasterUserPassword}}/g" wp-config.php
   sed -i "s/localhost/{{DB_ENDPOINT}}/g" wp-config.php
   ```

1. Dans le même répertoire, créez `install_dependencies.sh` avec le contenu suivant :

   ```
   #!/bin/bash
   yum install -y php
   yum install -y php-mysql
   yum install -y mysql
   service httpd restart
   ```
**Note**  
Le protocole HTTPS est installé dans les données utilisateur au lancement afin de permettre aux bilans de santé de fonctionner dès le départ.

1. Dans le même répertoire, créez `start_server.sh` avec le contenu suivant :
   + Pour les instances Amazon Linux, utilisez ceci :

     ```
     #!/bin/bash
     service httpd start
     ```
   + Pour les instances RHEL, utilisez ceci (les commandes supplémentaires sont des politiques qui autorisent SELINUX à accepter) : WordPress

     ```
     #!/bin/bash
     setsebool -P  httpd_can_network_connect_db 1
     setsebool -P  httpd_can_network_connect 1
     chcon -t httpd_sys_rw_content_t /var/www/html/WordPress/wp-content -R
     restorecon -Rv /var/www/html
     service httpd start
     ```

1. Dans le même répertoire, créez `stop_server.sh` avec le contenu suivant :

   ```
   #!/bin/bash
   service httpd stop
   ```

1. Créez le bundle zip.

   Linux :

   ```
   $ cd /tmp/WordPress
   $ zip -r wordpress.zip .
   ```

   Windows : Accédez à votre répertoire WordPress « », sélectionnez tous les fichiers et créez un fichier zip. N'oubliez pas de le nommer wordpress.zip.