# NetBox Ansible Deployment Makefile .PHONY: help install-collections deploy update backup check-syntax encrypt-vault decrypt-vault help: ## Show this help message @echo "NetBox Ansible Deployment" @echo "========================" @echo "" @echo "Available commands:" @awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf " %-20s %s\n", $$1, $$2}' $(MAKEFILE_LIST) install-collections: ## Install required Ansible collections ansible-galaxy collection install -r requirements.yml deploy: ## Deploy NetBox (requires vault password) ansible-playbook -i inventory/hosts.yml playbooks/deploy-netbox.yml --ask-vault-pass update: ## Update NetBox ansible-playbook -i inventory/hosts.yml playbooks/update-netbox.yml backup: ## Backup NetBox ansible-playbook -i inventory/hosts.yml playbooks/backup-netbox.yml check-syntax: ## Check Ansible playbook syntax ansible-playbook -i inventory/hosts.yml playbooks/deploy-netbox.yml --syntax-check ansible-playbook -i inventory/hosts.yml playbooks/update-netbox.yml --syntax-check ansible-playbook -i inventory/hosts.yml playbooks/backup-netbox.yml --syntax-check encrypt-vault: ## Encrypt vault file ansible-vault encrypt group_vars/netbox/vault.yml decrypt-vault: ## Decrypt vault file ansible-vault decrypt group_vars/netbox/vault.yml edit-vault: ## Edit encrypted vault file ansible-vault edit group_vars/netbox/vault.yml dry-run: ## Run playbook in check mode (dry run) ansible-playbook -i inventory/hosts.yml playbooks/deploy-netbox.yml --check --ask-vault-pass test-connection: ## Test connection to hosts ansible netbox -i inventory/hosts.yml -m ping