#!/bin/bash # Simple Production Deployment Script # Usage: ./deploy.sh set -e SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" INFRA_DIR="$(dirname "$SCRIPT_DIR")" cd "$INFRA_DIR" echo "🚀 Deploying to production..." echo "📍 Infrastructure directory: $INFRA_DIR" echo "" # Check if vault password file exists if [[ ! -f ".vault_pass" ]]; then echo "❌ Vault password file not found: .vault_pass" echo " Create this file with your Ansible Vault password" exit 1 fi # Run deployment playbook ansible-playbook \ -i inventories/production/hosts.yml \ playbooks/deploy-rsync-based.yml \ --vault-password-file .vault_pass echo "" echo "✅ Deployment complete!" echo "🔍 Check status:" echo " ansible web_servers -i inventories/production/hosts.yml -m shell -a 'docker ps' --vault-password-file .vault_pass"