7 Home
Lephenixnoir edited this page 2020-09-08 10:28:37 +02:00

Installation

Sur Arch : pacman -S pelican

Via pip : pip install --user pelican

Utilisation

Les articles vont dans content (cf ceux déjà existants). Les images dans content/images, les fichiers dans content/files.

On peut facilement faire un lien vers :

  • une image : ![](/images/img.png)
  • un fichier : [mon fichier](/files/fichier.pdf)

Déploiement

On commence par vérifier que tout build bien :

make html
make publish

On peut ensuite vérifier que tout s'affiche correctement, en local :

make serve

Si tout va bien, on pousse sur master :

git add <fichiers>
git commit -m "Un petit message"
git push origin master

Le reste est fait automatiquement dans la CD.

Configuration de la CD

CD : Continuous Delivery (déploiement automatisé)

Script post-receive

Dans la configuration du projet, Déclencheurs git puis post-receive. On se connecte au serveur avec l'utilisateur creativecalc, puis on exécute le script update.sh.

#!/bin/bash

ssh creativecalc@creativecalc.fr "/home/creativecalc/update.sh"

Autoriser Gitea se connecter en SSH

On ajoute la clé publique de l'utilisateur gitea au fichier authorized_keys de creativecalc.

cat /home/gitea/.ssh/id_ed25519.pub >> /home/creativecalc/.ssh/authorized_keys

On ajoute aussi l'utilisateur creativecalc à la liste de ceux qui ont le droit de se connecter par SSH. Vérifier que la ligne AllowUsers dans le fichier /etc/ssh/sshd_config contient bien l'utilisateur creativecalc.

On peut vérifier que tout est ok :

root # su gitea
gitea $ ssh creativecalc@creativecalc.fr
creativecalc $

Configurer le hook

On ajoute le script hook dans /home/creativecalc/.

cat << EOF > update.sh
#!/bin/bash

logfile=$HOME/update.log

echo "=== Started deployment ($(date '+%Y-%m-%d %H:%M:%S')) ===" >> $logfile
cd /home/creativecalc/repository
git pull origin master
make publish OUTPUTDIR=/home/creativecalc/www
echo -e "=== Ended deployment ===\n" >> $logfile
EOF
chmod u+x update.sh

Débugguer la CD

En cas de pépins, aller regarder sur le VPS les logs (/home/creativecalc/update.log).