Skip to content

npltr62/OC_projet6

Repository files navigation

Projet 6 @Openclassroom @Administrateurinfrastructure&cloud

Il s'agit d'un script permettant d'automatiser les taches de la vie courante d'un site wordpress distant depuis un serveur ftp, à savoir :

  1. l'installation
  2. la sauvegarde
  3. la restauration
  4. la programmation d'une sauvegarde

Pré-requis

Utiliser sudo sans mot de passe Au préalable, il s'agit d'avoir distinctement 2 serveurs

  • un serveur FTP connu dans known_host pour la connexion sftp
  • un serveur web basé indiferement sous Debian ou RedHat Le serveur web

Installation

Télécharger archive du projet avec curl curl -L https://github.com/npltr62/OC_projet6/archive/master.tar.gz | tar xz

ou avec wget wget -c https://github.com/npltr62/OC_projet6/archive/master.tar.gz -O - | tar xz

Démarrage

Remplir le fichier de configuration config.yaml le démarrage se déroule en local et il est IMPORTANT de conserver l'intégrité du répertoire afin de garantir le bon déroulement du script. exemple: Executez la commande np@np:~/OC_projet6 python3 script.py.

Choix possibles :

Choix Intitulé Description
1 install wordpress Permet d'initialiser un site wordpress :
  1. Télécharger les packets nécessaires
  2. Installer une base de donnée
  3. Lier la base de donnée sql à Wordpress
2 backup and upload to ftp server Backup du site wordpress et upload vers le serveur ftp:
  1. Création (si non présent) d'un répertoire backup dans le répertoire personnel
  2. Copie du dossier wordpress dans le répertoire backup
  3. Dump de la base de donnée wordpress dans répertoire backup
  4. Mise en archive tar.gz du répertoire backup
  5. Upload de l'archive tar.gz vers le serveur ftp
3 hardreset Wordpress Supprime totalement le site wordpress:
  1. Suppression des fichiers du répertoire html dont le dossier Wordpress
  2. Drop de la base de donnée wordpress
4 restore last backup Importe le backup (configuré dans le yaml) et le réinjecte dans la base de donnée:
  1. Download de l'archive tar.gz
  2. Décompression de l'archive et copie du répertoire Wordpress
  3. Restore de la base de donnée Wordpress
5 run cronjob Programme l'éxécution d'un shell backup_upload.sh à une heure/fréquence indiquée dans le fichier yaml ;
backup_upload.sh adopte le même comportement que le choix 2

Fabriqué avec

exemples :

  • Python - Python
  • distro - Module Python de détermination de l'OS et sa distribution
  • yaml - Module d'analyse et de génération de code YAML

Auteur

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published