Déploiement Blog Hugo

| ~ 1 min | 159 mots

Pour déployer facilement mon blog avec hugo en auto-hébergé tout en gardant le code sur gitlab, j’utilise la méthode suivante :

Voici ainsi le type de script que j’ai ainsi utilisé, le principe est de récupérer le dernier artefact de gitlab et ensuite de le déployer dans le dossier /var/www/public :

#!/bin/bash

# CONFIG
ARCHIVE_PATH="/tmp/artifacts.zip"
PROJECT_NUMBER="YOURPROJECTNUMBER"
DEST_PATH="/var/www/"
GITLAB_ACCESS_TOKEN="YOURTOKEN"
GITLAB_INSTANCE="YOURINSTANCE"
BRANCH="YOUR BRANCHE"
JOB_NAME="pages"

# DEPLOY
set -e
curl --location --header "PRIVATE-TOKEN: $GITLAB_ACCESS_TOKEN" "https://$GITLAB_INSTANCE/api/v4/projects/$PROJECT_NUMBER/jobs/artifacts/$BRANCH/download?job=$JOB_NAME" --output "$ARCHIVE_PATH"
sudo rm -R "$DEST_PATH/public"
sudo unzip "$ARCHIVE_PATH" -d "$DEST_PATH"
sudo chown -R www-data:www-data "$DEST_PATH/public"
rm "$ARCHIVE_PATH"

Il suffit alors d’attendre que la CI passe et soit validé côté gitlab pour pouvoir appliquer le script. 😀