Ce rôle est chargé de créer la structure nécessaire pour le déploiement automatique.

Tags internes

  • autodeploy : Exécuter l’ensemble des opérations de la tâche ;
  • deploy-structure : Créer les fichiers et dossiers ;
  • deploy-acl : Mettre en place les autorisations supplémentaires ;

Traitements spécifiques du jeu de tâches

Afin de permettre de filtrer les configuration de déploiement lorsque l’on souhaite limiter l’exécution (comme avec les tags), le nom de la variable à fournir est différentes de celle attendue.

Variable côté jeu de tâches Variable côté rôle
managed_deployments deployments
Calculé nfs_mountpoints

En supplément de ces configurations manuelles, les définitions de l’ensemble des Virtual Host sont converties en déploiement lorsque nécessaire. Ainsi les vhosts peuvent être étendus avec les configurations pour le déploiement. Détails de la conversion.

Variables à fournir

Variable Type Requis Défaut Description
deployments Liste d’objets deployment Non Liste vide Déploiements à mettre en place
deploy_resources_path Chaîne Non Vide Dossier, relatif au playbook sous lequel sont les scripts
nfs_mountpoints Liste de chemins Non Liste vide Liste des chemins des points de montage NFS

Type deployment

Propriété Type Requis Défaut Description
name Identifiant Oui Identifiant du déploiement
user Identifiant Oui Utilisateur effectuant le déploiement
group Identifiant Oui Groupe de l’utilisateur
release_folder Chemin Oui Emplacement du dossier des sorties
install_link Chemin Oui Emplacement du lien vers la version courante
read_users Liste de chaînes Non Liste vide Utilisateurs qui doivent avoir accès en lecture
release_script Chemin Non Script de déploiement de la sortie
script_name Chemin Non Nom du script une fois mis en place

Conversion Vhost en Déploiement

Détail de la conversion des champs de Virtual Host en champs de déploiement.

Les types de base sont définis dans BaseVhosts.

Filtrage vhost

La conversion n’est effectuée que si l’un des deux champs deploy_release_script ou deploy_structure est défini.

Propriété Type Requis Défaut
deploy_release_script Chemin Non Chaîne vide
deploy_structure Booléen Non Faux

Conversion vhost

Type vhost_base vers deployment.

Propriété Application Type source Source Détails
name Propriété Virtual Host vhost_name
user Propriété Virtual Host vhost_user
group Propriété Virtual Host vhost_group
release_folder Calculé vhosts_base_dir + vhost_name + “releases” Chemin du dossier releases dans le Virtual Host
install_link Calculé vhosts_base_dir + vhost_name + “app” Chemin du lien de la version courante dans le Virtual Host
read_users Fixe [“www-data”] C’est toujours l’utilisateur Apache qui peut lire aussi
release_script Propriété Virtual Host deploy_release_script Nouvelle propriété équivalente
script_name Fixe “extract-to-release-and-set-current.sh” Nom du script dans le dossier releases
Propriété Virtual Host deploy_structure Nouvelle propriété