Add phase-1 Ansible foundation and validation scaffolding
This commit is contained in:
@@ -41,7 +41,8 @@ dummy_value_for_key() {
|
||||
local key="$1"
|
||||
case "$key" in
|
||||
*EMAIL* ) echo "dummy@example.com" ;;
|
||||
*USER*|*USERNAME* ) echo "dummy-user" ;;
|
||||
*DB_USER* ) echo "dummyuser" ;;
|
||||
*USERNAME*|*USER* ) echo "dummy-user" ;;
|
||||
*DOMAIN* ) echo "example.lan.ddnsgeek.com" ;;
|
||||
*TZ ) echo "Australia/Brisbane" ;;
|
||||
*URL* ) echo "https://example.lan.ddnsgeek.com" ;;
|
||||
@@ -49,7 +50,6 @@ dummy_value_for_key() {
|
||||
*PASSWORD*|*PASS*|*TOKEN*|*SECRET*|*KEY*|*JWT* ) echo "dummy-${key,,}" ;;
|
||||
*FINGERPRINT* ) echo "0000000000000000000000000000000000000000" ;;
|
||||
*DB_NAME* ) echo "dummydb" ;;
|
||||
*DB_USER* ) echo "dummyuser" ;;
|
||||
*NAME* ) echo "dummy-name" ;;
|
||||
*ADDRESS* ) echo "dummy" ;;
|
||||
* ) echo "dummy-value" ;;
|
||||
@@ -120,3 +120,35 @@ reconcile_file_based_secrets
|
||||
echo "== Dummy secret reconciliation complete =="
|
||||
echo "stack env: $STACK_ENV"
|
||||
jq -r '.file_based_secrets[].path' "$INVENTORY_JSON" | sed 's/^/file secret: /'
|
||||
|
||||
|
||||
REPO_ROOT="${CODEX_REPO_DIR:-$PWD}"
|
||||
ANSIBLE_DIR="$REPO_ROOT/infrastructure/ansible"
|
||||
ANSIBLE_CONFIG="$ANSIBLE_DIR/ansible.cfg"
|
||||
ANSIBLE_COLLECTIONS_REQ="$ANSIBLE_DIR/collections/requirements.yml"
|
||||
ANSIBLE_INVENTORY="$ANSIBLE_DIR/inventory/hosts.yml"
|
||||
ANSIBLE_PING_PLAYBOOK="$ANSIBLE_DIR/playbooks/ping.yml"
|
||||
|
||||
if [[ -f "$ANSIBLE_COLLECTIONS_REQ" ]]; then
|
||||
echo "== Refresh Ansible collections (bootstrap) =="
|
||||
ansible-galaxy collection install -r "$ANSIBLE_COLLECTIONS_REQ" -p "$ANSIBLE_DIR/collections" || true
|
||||
fi
|
||||
|
||||
if command -v ansible >/dev/null 2>&1; then
|
||||
echo "== Ansible bootstrap validation =="
|
||||
ANSIBLE_CONFIG="$ANSIBLE_CONFIG" ansible --version | head -n 1 || true
|
||||
|
||||
if command -v ansible-lint >/dev/null 2>&1; then
|
||||
ansible-lint --version || true
|
||||
fi
|
||||
|
||||
if [[ -f "$ANSIBLE_INVENTORY" ]]; then
|
||||
ANSIBLE_CONFIG="$ANSIBLE_CONFIG" \
|
||||
ansible-inventory -i "$ANSIBLE_INVENTORY" --list > /dev/null || true
|
||||
fi
|
||||
|
||||
if [[ -f "$ANSIBLE_PING_PLAYBOOK" && -f "$ANSIBLE_INVENTORY" ]]; then
|
||||
ANSIBLE_CONFIG="$ANSIBLE_CONFIG" \
|
||||
ansible-playbook -i "$ANSIBLE_INVENTORY" "$ANSIBLE_PING_PLAYBOOK" --syntax-check || true
|
||||
fi
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user