homelab/orchestration/ansible/scripts/bootstrap-control-node.sh
Dan V deb6c38d7b chore: commit homelab setup — deployment, services, orchestration, skill
- Add .gitignore: exclude compiled binaries, build artifacts, and Helm
  values files containing real secrets (authentik, prometheus)
- Add all Kubernetes deployment manifests (deployment/)
- Add services source code: ha-sync, device-inventory, games-console,
  paperclip, parts-inventory
- Add Ansible orchestration: playbooks, roles, inventory, cloud-init
- Add hardware specs, execution plans, scripts, HOMELAB.md
- Add skills/homelab/SKILL.md + skills/install.sh to preserve Copilot skill
- Remove previously-tracked inventory-cli binary from git index

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-09 08:10:32 +02:00

25 lines
826 B
Bash
Executable file

#!/usr/bin/env bash
set -euo pipefail
if ! command -v python3 >/dev/null 2>&1; then
echo "python3 is required"
exit 1
fi
if ! command -v pip3 >/dev/null 2>&1; then
echo "pip3 is required"
exit 1
fi
python3 -m pip install --user --upgrade pip
python3 -m pip install --user "ansible>=9.0.0" "jmespath" "netaddr"
ANSIBLE_GALAXY="${HOME}/Library/Python/$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')/bin/ansible-galaxy"
if [ -x "${ANSIBLE_GALAXY}" ]; then
"${ANSIBLE_GALAXY}" collection install community.general
else
ansible-galaxy collection install community.general
fi
echo "Bootstrap complete. Add this to PATH if needed:"
echo " export PATH=\"$HOME/Library/Python/$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')/bin:$PATH\""