#!/bin/bash

echo "=== Deploy PostgreSQL Replica bằng Ansible ==="

cd playbooks

# Kiểm tra Ansible
if ! command -v ansible-playbook &> /dev/null; then
    echo "Lỗi: Ansible chưa được cài đặt"
    exit 1
fi

# Kiểm tra kết nối cluster
echo "Kiểm tra kết nối đến cluster..."
ansible postgres_cluster -i inventory.ini -m ping

if [ $? -ne 0 ]; then
    echo "Lỗi: Không thể kết nối đến cluster VMs"
    echo "Hãy chắc chắn cluster đã được khởi động: ./deploy-cluster.sh"
    exit 1
fi

echo "Triển khai PostgreSQL Master-Replica..."
ansible-playbook -i inventory.ini deploy-postgres-replica.yml

if [ $? -eq 0 ]; then
    echo ""
    echo "✓ PostgreSQL Master-Replica đã được triển khai thành công!"
    echo ""
    echo "Master Server:"
    echo "  Host: 192.168.56.50:5432 (localhost:5433)"
    echo "  User: postgres / Password: postgres123"
    echo "  Database: testdb"
    echo ""
    echo "Replica Server:"
    echo "  Host: 192.168.56.51:5432 (localhost:5434)"
    echo "  User: postgres / Password: postgres123"
    echo "  Database: testdb (read-only)"
    echo ""
    echo "Replication User: replicator / Password: replica123"
else
    echo "✗ Lỗi triển khai PostgreSQL Replica"
    exit 1
fi

cd ..