Toolverse
Wszystkie skille

terraform-azurerm-set-diff-analyzer

autor: github

Odróżnij rzeczywiste zmiany od fałszywych różnic w planach Terraform dla Azure

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Autor
github
Kategoria
DevOps
Wyświetlenia
31

O skillu

Narzędzie analizuje wyjście terraform plan w formacie JSON dla zasobów Azure, aby zidentyfikować fałszywe różnice spowodowane zmianami kolejności w atrybutach typu Set. Terraform porównuje elementy Set po pozycji, a nie po kluczu — dodanie lub usunięcie jednego elementu powoduje, że wszystkie elementy wyglądają na zmienione. Ta umiejętność filtruje szum i pokazuje tylko rzeczywiste zmiany w zasobach takich jak Application Gateway, Load Balancer, Firewall, Front Door i NSG.

Jak używać

  1. Upewnij się, że masz zainstalowany Python 3.8 lub nowszy. Jeśli Python nie jest dostępny, zainstaluj go za pomocą menedżera pakietów (apt install python3, brew install python3) lub ze strony python.org.

  2. Wygeneruj plik planu Terraform w formacie JSON, uruchamiając terraform plan -out=plan.tfplan, a następnie terraform show -json plan.tfplan > plan.json. Polecenie zapisze strukturę planu do pliku plan.json.

  3. Uruchom skrypt analizy, wpisując python scripts/analyze_plan.py plan.json. Skrypt przeanalizuje plik i wyświetli listę rzeczywistych zmian, odfiltrując fałszywe różnice spowodowane zmianami kolejności elementów w atrybutach Set.

  4. Przejrzyj wynik — zobaczysz tylko zmiany, które faktycznie wpłyną na zasoby Azure. Jeśli terraform plan pokazywał wiele zmian, ale dodałeś lub usunąłeś tylko jeden element, narzędzie wykaże, które różnice są fałszywe.

  5. W przypadku błędu "python: command not found" użyj python3 zamiast python. Jeśli pojawi się ModuleNotFoundError, upewnij się, że masz Python 3.8+ — skrypt używa tylko biblioteki standardowej.

Podobne skille