#!/bin/bash

# Vérifier et installer les dépendances
DEPENDENCIES=("gzip" "curl" "jq")
for package in "${DEPENDENCIES[@]}"; do
    if ! command -v $package &> /dev/null; then
        echo "$package n'est pas installé. Installation en cours..."
        if [ -x "$(command -v apt-get)" ]; then
            apt-get update && apt-get install -y $package
        elif [ -x "$(command -v yum)" ]; then
            yum install -y $package
        elif [ -x "$(command -v dnf)" ]; then
            dnf install -y $package
        else
            echo "Aucun gestionnaire de paquets compatible trouvé."
            exit 1
        fi
    fi
done

# Vérifier et créer le répertoire /etc/docker-manager
if [ -d "/etc/docker-manager" ]; then
    echo "Le répertoire /etc/docker-manager existe. Exécution de la commande uninstall..."
    /etc/docker-manager/docker-manager uninstall
else
    echo "Création du répertoire /etc/docker-manager..."
    mkdir -p /etc/docker-manager
fi

# Vérifier la dernière version du programme docker-manager
echo "Vérification de la dernière version de docker-manager..."
LATEST_VERSION_URL="https://cdn.fkl.sh/updates/docker-manager/linux-amd64.json"
LATEST_VERSION=$(curl -s $LATEST_VERSION_URL | jq -r '.Version')

echo "La dernière version est $LATEST_VERSION"

# Télécharger et décompresser le fichier .gz
DOWNLOAD_URL="https://cdn.fkl.sh/updates/docker-manager/$LATEST_VERSION/linux-amd64.gz"
TARGET_FILE="/etc/docker-manager/docker-manager"

echo "Téléchargement de la dernière version..."
curl -sfL $DOWNLOAD_URL -o /tmp/docker-manager.gz
if [ $? -ne 0 ]; then
    echo "Erreur lors du téléchargement. $(curl -sL --connect-timeout 1 --max-time 1 $DOWNLOAD_URL)"
    rm -f /tmp/docker-manager.gz
    exit 1
fi


# Décompresser le fichier
echo "Décompression du fichier..."
gzip -d /tmp/docker-manager.gz -f

# Déplacer le binaire et le rendre executable
echo "Déplacement du binaire et rendu exécutable..."
mv /tmp/docker-manager $TARGET_FILE
chmod +x $TARGET_FILE

# Lancer la commande d'installation
echo "Lancement de la commande d'installation..."
$TARGET_FILE install

echo "Installation terminée. connectez vous a http://localhost:4000 pour accéder à votre dashboard."
