#!/bin/bash # Script pour patcher le projet ArgoCD 'dev' pour autoriser les Endpoints et le repository set -e NAMESPACE="${1:-argocd-ops}" PROJECT="${2:-dev}" echo "=== Patch du projet ArgoCD '$PROJECT' ===" echo "Namespace: $NAMESPACE" echo "" # Vérifier que le projet existe if ! kubectl get appproject "$PROJECT" -n "$NAMESPACE" &>/dev/null; then echo "❌ Erreur: Le projet '$PROJECT' n'existe pas dans '$NAMESPACE'" exit 1 fi echo "📋 Configuration actuelle du projet:" kubectl get appproject "$PROJECT" -n "$NAMESPACE" -o jsonpath='{.spec}' | jq . 2>/dev/null || kubectl get appproject "$PROJECT" -n "$NAMESPACE" -o yaml | grep -A 20 "^spec:" echo "" # Patcher le projet echo "🔧 Application du patch..." kubectl patch appproject "$PROJECT" -n "$NAMESPACE" --type merge -p ' { "spec": { "sourceRepos": ["https://git.gkdomaine.fr/kubernetes/argocd.git", "*"], "namespaceResourceWhitelist": [ { "group": "", "kind": "Endpoints" } ] } } ' echo "" echo "✅ Patch appliqué avec succès !" echo "" echo "📋 Vérification:" kubectl get appproject "$PROJECT" -n "$NAMESPACE" -o jsonpath='{.spec.sourceRepos}' && echo "" kubectl get appproject "$PROJECT" -n "$NAMESPACE" -o jsonpath='{.spec.namespaceResourceWhitelist}' && echo ""