#!/bin/bash # Script pour générer un token Gitea et configurer Hermes # Usage: ./get_gitea_token.sh set -e echo "🔑 Génération d'un token Gitea pour Hermes..." # Créer l'inventaire cat > ~/Work/Arcodange/factory/inventory.ini << 'EOF' [gitea] gitea.arcodange.lab ansible_host=192.168.1.202 ansible_user=git [gitea:vars] ansible_ssh_private_key_file=~/.ssh/id_rsa_arcodange EOF # Créer le playbook cat > ~/Work/Arcodange/factory/get_token.yml << 'EOF' - name: Générer un token Gitea pour Hermes hosts: localhost connection: local gather_facts: true vars: gitea_user_name: arcodange gitea_token_name: hermes-{{ ansible_date_time.iso8601 }} gitea_token_scopes: "write:repository,write:user" gitea_token_fact_name: gitea_api_token gitea_base_url: "https://gitea.arcodange.lab" tasks: - name: Inclure le role gitea_token include_role: name: .claude/worktrees/focused-dirac-151213/ansible/arcodange/factory/roles/gitea_token - name: Afficher le token généré debug: var: gitea_api_token when: gitea_api_token is defined and gitea_api_token != 'deleted' - name: Sauvegarder le token dans un fichier temporaire copy: content: "{{ gitea_api_token }}" dest: /tmp/gitea_token.txt when: gitea_api_token is defined and gitea_api_token != 'deleted' EOF # Exécuter le playbook echo "📜 Exécution du playbook Ansible..." cd ~/Work/Arcodange/factory ansible-playbook -i inventory.ini get_token.yml # Récupérer le token depuis le fichier temporaire if [ -f /tmp/gitea_token.txt ]; then TOKEN=$(cat /tmp/gitea_token.txt) echo "✅ Token généré avec succès !" # Configurer Hermes echo "🛠 Configuration de Hermes..." hermes config set gitea.token "$TOKEN" hermes config set gitea.base_url "https://gitea.arcodange.lab" hermes config set gitea.username "arcodange" # Nettoyer rm -f /tmp/gitea_token.txt rm -f inventory.ini rm -f get_token.yml echo "✨ Configuration terminée !" echo "Token stocké dans la configuration Hermes." else echo "⚠️ Impossible de récupérer le token. Vérifie que :" echo " 1. Le serveur Gitea est accessible" echo " 2. La clé SSH est configurée (~/.ssh/id_rsa_arcodange)" echo " 3. L'utilisateur 'git' a les permissions nécessaires" fi