summaryrefslogtreecommitdiff
path: root/setup-git-web-interface/installation-gitlab.sh
diff options
context:
space:
mode:
authorertopogo <erwin.t.pombett@gmail.com>2025-11-26 04:02:41 +0100
committerertopogo <erwin.t.pombett@gmail.com>2025-11-26 04:02:41 +0100
commitfb7b2389c33bef903f236f4dd0c0b98dfc0bbbe8 (patch)
treeaa61a9026da508e865ab19b38677be523c961891 /setup-git-web-interface/installation-gitlab.sh
parent0f1ba5af1684cfc64b3ff5374ef95c70df1caac0 (diff)
Feat: Ajout de la configuration Tridactyl (Native Messenger + .tridactylrc) et scripts de maintenance
Diffstat (limited to 'setup-git-web-interface/installation-gitlab.sh')
-rw-r--r--setup-git-web-interface/installation-gitlab.sh120
1 files changed, 120 insertions, 0 deletions
diff --git a/setup-git-web-interface/installation-gitlab.sh b/setup-git-web-interface/installation-gitlab.sh
new file mode 100644
index 0000000..afabb15
--- /dev/null
+++ b/setup-git-web-interface/installation-gitlab.sh
@@ -0,0 +1,120 @@
+#!/bin/bash
+# Script d'installation de GitLab Omnibus sur chillka
+# À exécuter sur chillka en tant que toshiro avec sudo
+
+set -e
+
+echo "=== Installation de GitLab Omnibus sur chillka ==="
+
+# Vérifier les prérequis système
+echo "Vérification des prérequis..."
+
+# Vérifier la RAM disponible
+RAM_AVAILABLE=$(free -g | awk '/^Mem:/{print $7}')
+if [ "$RAM_AVAILABLE" -lt 2 ]; then
+ echo "⚠️ Attention: Moins de 2GB RAM disponible. GitLab nécessite au moins 2GB."
+ read -p "Continuer quand même? (y/N) " -n 1 -r
+ echo
+ if [[ ! $REPLY =~ ^[Yy]$ ]]; then
+ exit 1
+ fi
+fi
+
+# Vérifier l'espace disque
+DISK_AVAILABLE=$(df -BG / | awk 'NR==2 {print $4}' | sed 's/G//')
+if [ "$DISK_AVAILABLE" -lt 4 ]; then
+ echo "⚠️ Attention: Moins de 4GB d'espace disque disponible."
+ read -p "Continuer quand même? (y/N) " -n 1 -r
+ echo
+ if [[ ! $REPLY =~ ^[Yy]$ ]]; then
+ exit 1
+ fi
+fi
+
+# Vérifier que nous sommes sur chillka
+echo "Vérification de l'environnement..."
+if [ ! -d "/var/data/git/repositories" ]; then
+ echo "Erreur: Le répertoire /var/data/git/repositories n'existe pas"
+ exit 1
+fi
+
+# Étape 1: Mettre à jour le système
+echo "Étape 1: Mise à jour du système..."
+sudo apt update
+sudo apt upgrade -y
+
+# Étape 2: Installer les dépendances
+echo "Étape 2: Installation des dépendances..."
+sudo apt install -y curl openssh-server ca-certificates tzdata perl
+
+# Étape 3: Configurer SSH (si nécessaire)
+echo "Étape 3: Configuration SSH..."
+if ! sudo systemctl is-active --quiet sshd; then
+ sudo systemctl enable sshd
+ sudo systemctl start sshd
+fi
+
+# Étape 4: Ajouter le dépôt GitLab
+echo "Étape 4: Ajout du dépôt GitLab..."
+curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
+
+# Étape 5: Demander l'URL externe
+echo ""
+read -p "URL externe pour GitLab (ex: http://chillka ou https://chillka.example.com): " EXTERNAL_URL
+if [ -z "$EXTERNAL_URL" ]; then
+ EXTERNAL_URL="http://chillka"
+ echo "Utilisation de l'URL par défaut: $EXTERNAL_URL"
+fi
+
+# Étape 6: Installer GitLab
+echo "Étape 6: Installation de GitLab (cela peut prendre 10-15 minutes)..."
+sudo EXTERNAL_URL="$EXTERNAL_URL" apt install gitlab-ce -y
+
+# Étape 7: Configurer GitLab pour utiliser le répertoire existant
+echo "Étape 7: Configuration de GitLab..."
+sudo tee -a /etc/gitlab/gitlab.rb > /dev/null <<EOF
+
+# Configuration pour utiliser le répertoire de dépôts existant
+git_data_dirs({
+ "default" => {
+ "path" => "/var/data/git/repositories"
+ }
+})
+EOF
+
+# Étape 8: Reconfigurer GitLab
+echo "Étape 8: Reconfiguration de GitLab (cela peut prendre 5-10 minutes)..."
+sudo gitlab-ctl reconfigure
+
+# Étape 9: Vérifier le statut
+echo "Étape 9: Vérification du statut..."
+sleep 5
+if sudo gitlab-ctl status | grep -q "run:"; then
+ echo "✓ GitLab est démarré avec succès"
+else
+ echo "✗ Erreur: GitLab n'a pas démarré correctement"
+ echo "Vérifiez les logs: sudo gitlab-ctl tail"
+ exit 1
+fi
+
+# Afficher les informations importantes
+echo ""
+echo "=== Installation terminée ==="
+echo ""
+echo "Informations importantes:"
+echo " - URL GitLab: $EXTERNAL_URL"
+echo " - Username initial: root"
+echo " - Mot de passe: À définir lors de la première connexion"
+echo ""
+echo "Prochaines étapes:"
+echo "1. Ouvrir $EXTERNAL_URL dans un navigateur"
+echo "2. Définir le mot de passe root"
+echo "3. Se connecter avec root / [votre mot de passe]"
+echo "4. Créer ou importer le projet config-files-keyvault"
+echo ""
+echo "Commandes utiles:"
+echo " - Statut: sudo gitlab-ctl status"
+echo " - Logs: sudo gitlab-ctl tail"
+echo " - Redémarrer: sudo gitlab-ctl restart"
+echo " - Vérifier: sudo gitlab-rake gitlab:check"
+