From 949fd6e5645b985d49eefd229b34559e4226c8d1 Mon Sep 17 00:00:00 2001 From: admin-linexos Date: Thu, 28 Nov 2024 11:24:24 +0000 Subject: [PATCH] Actualiser configs_old.sh --- configs.sh | 76 ------------------------------------------ configs_old.sh | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 89 insertions(+), 76 deletions(-) delete mode 100644 configs.sh create mode 100644 configs_old.sh diff --git a/configs.sh b/configs.sh deleted file mode 100644 index 2071ad1..0000000 --- a/configs.sh +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/bash - -# Configuration des variables -ORG="CONFIGS" -BASE_URL="http://10.106.100.152:3001" -API_URL="$BASE_URL/api/v1" -REPO_NAME=$(hostname) -REPO_URL="$BASE_URL/$ORG/$REPO_NAME.git" -REPO_PATH="/etc/gitea/ConfigSysRepo" # Chemin local générique pour cloner les dépôts -BRANCH="main" -TOKEN="94f0bbfab6bb535dfd51e7387cc65fc75faa28f0" -REPO_URL_TOKEN="http://$TOKEN@10.13.1.126:3001/$ORG/$REPO_NAME.git" -HOSTNAME=$(hostname) # Nom de la machine - -echo "Début du script pour $HOSTNAME" - -# Vérifie si le dépôt existe déjà en utilisant l'API de Gitea -response=$(curl -s -o /dev/null -w "%{http_code}" -H "Authorization: token $TOKEN" "$API_URL/repos/$ORG/$REPO_NAME") - -if [ "$response" -ne 200 ]; then - echo "Le dépôt $REPO_NAME n'existe pas. Création du dépôt..." - curl -s -X POST -H "Authorization: token $TOKEN" \ - -H "Content-Type: application/json" \ - -d "{\"name\": \"$REPO_NAME\", \"private\": false}" \ - "$API_URL/orgs/$ORG/repos" - echo "Dépôt $REPO_NAME créé." -else - echo "Le dépôt $REPO_NAME existe déjà." -fi - -# Vérifie si le répertoire du dépôt existe localement et le clone si nécessaire -if [ ! -d "$REPO_PATH/.git" ]; then - echo "Le dépôt n'existe pas localement. Clonage du dépôt..." - git clone "$REPO_URL_TOKEN" "$REPO_PATH" -else - echo "Le dépôt existe déjà localement." -fi - -# Changement dans le répertoire du dépôt -cd "$REPO_PATH" -git checkout $BRANCH -git remote set-url origin $REPO_URL_TOKEN - -# Tente de mettre à jour le dépôt local en cas de modifications distantes -git pull --rebase origin $BRANCH - -# Lecture des chemins des fichiers depuis le fichier de configuration -CONFIG_FILE="/etc/gitea/path_config" # Chemin du fichier de configuration - -if [ ! -f "$CONFIG_FILE" ]; then - echo "Le fichier de configuration $CONFIG_FILE n'existe pas." - exit 1 -fi - -echo "Copie des fichiers de configuration en maintenant l'arborescence..." - -while IFS= read -r file; do - if [ -f "$file" ]; then - DEST_DIR="$REPO_PATH/$(dirname "$file")" - mkdir -p "$DEST_DIR" - echo "Copie de $file vers $DEST_DIR" - cp "$file" "$DEST_DIR" - else - echo "Le fichier $file n'existe pas." - fi -done < "$CONFIG_FILE" - -# Ajout de toutes les modifications, y compris les suppressions -git add -A - -# Git operations -git commit -m "Mise à jour des fichiers de configuration pour $HOSTNAME" -git push origin $BRANCH -echo "Modifications poussées vers le dépôt." - -echo "Fin du script." \ No newline at end of file diff --git a/configs_old.sh b/configs_old.sh new file mode 100644 index 0000000..43112f7 --- /dev/null +++ b/configs_old.sh @@ -0,0 +1,89 @@ +#!/bin/bash + +# Configuration des variables +ORG="CONFIGS" +CLIENT="SFR" # Exemple de client +BASE_URL="https://repolake.alc-crm.com" +API_URL="$BASE_URL/api/v1" +REPO_NAME=$(hostname) +REPO_URL="$BASE_URL/$ORG/$REPO_NAME.git" +REPO_PATH="/etc/gitea/CONFIGS/$REPO_NAME" # Ajusté pour inclure l'organisation correcte +BRANCH="main" +TOKEN="434ac97ae9def5ac02024971582e82dd35f89ee0" +REPO_URL_TOKEN="https://$TOKEN@repolake.alc-crm.com/$ORG/$REPO_NAME.git" +HOSTNAME=$(hostname) + +echo "Début du script pour $HOSTNAME" + +# Vérifie si le dépôt existe déjà via l'API +response=$(curl -s -o /dev/null -w "%{http_code}" -H "Authorization: token $TOKEN" "$API_URL/repos/$ORG/$REPO_NAME") + +if [ "$response" -ne 200 ]; then + echo "Le dépôt $REPO_NAME n'existe pas. Création du dépôt..." + curl -s -X POST -H "Authorization: token $TOKEN" \ + -H "Content-Type: application/json" \ + -d "{\"name\": \"$REPO_NAME\", \"private\": false}" \ + "$API_URL/orgs/$ORG/repos" + echo "Dépôt $REPO_NAME créé." +else + echo "Le dépôt $REPO_NAME existe déjà." +fi + +# Vérifie si le répertoire du dépôt existe localement +if [ ! -d "$REPO_PATH/.git" ]; then + echo "Clonage dans $REPO_PATH..." + git clone "$REPO_URL_TOKEN" "$REPO_PATH" + cd "$REPO_PATH" + git checkout -b $BRANCH + touch .gitkeep + git add .gitkeep + git commit -m "Initial commit" + git push --set-upstream origin $BRANCH +else + echo "Le dépôt existe localement." + cd "$REPO_PATH" + git checkout $BRANCH || git checkout -b $BRANCH +fi + +# Configurer les informations utilisateur Git +if ! git config user.name &>/dev/null; then + git config user.name "admin-linexos" + git config user.email "technique@linexos.fr" +fi + +# Vérifier et corriger l'URL du dépôt distant +git remote set-url origin "$REPO_URL_TOKEN" +echo "URL distante configurée pour : $REPO_URL_TOKEN" +git remote -v # Afficher l'URL distante configurée + +# Pull des mises à jour distantes +git pull --rebase origin $BRANCH + +# Lecture des chemins depuis le fichier de configuration +CONFIG_FILE="/etc/gitea/path_config" + +if [ ! -f "$CONFIG_FILE" ]; then + echo "Le fichier $CONFIG_FILE n'existe pas." + exit 1 +fi + +echo "Copie des fichiers de configuration en maintenant l'arborescence..." + +while IFS= read -r file; do + if [ -f "$file" ]; then + DEST_DIR="$REPO_PATH/$(dirname "$file")" + mkdir -p "$DEST_DIR" + cp "$file" "$DEST_DIR" + echo "Copié $file vers $DEST_DIR" + else + echo "Le fichier $file n'existe pas: $file" + fi +done < "$CONFIG_FILE" + +# Ajout et push des modifications +git add -A +git commit -m "Mise à jour des fichiers de configuration pour $HOSTNAME" +git push origin $BRANCH +echo "Modifications poussées vers le dépôt." + +echo "Fin du script."