Go-based network automation with YANG models, gRPC, Ansible, Terraform, and Kubernetes integration. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
29 lines
716 B
Bash
Executable file
29 lines
716 B
Bash
Executable file
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Bootstrap a new Kedge site.
|
|
# Usage: ./bootstrap.sh <cloud|homelab>
|
|
|
|
SITE="${1:?Usage: $0 <cloud|homelab>}"
|
|
|
|
echo "=== Kedge Bootstrap: ${SITE} ==="
|
|
|
|
case "${SITE}" in
|
|
cloud)
|
|
echo "Bootstrapping cloud anchor (overlay only)..."
|
|
cd "$(dirname "$0")/../ansible"
|
|
ansible-playbook -i inventory/hosts.yml playbooks/bootstrap-cloud.yml
|
|
;;
|
|
homelab)
|
|
echo "Bootstrapping homelab (overlay + underlay)..."
|
|
cd "$(dirname "$0")/../ansible"
|
|
ansible-playbook -i inventory/hosts.yml playbooks/bootstrap-homelab.yml
|
|
;;
|
|
*)
|
|
echo "Unknown site type: ${SITE}"
|
|
echo "Usage: $0 <cloud|homelab>"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
echo "=== Bootstrap complete ==="
|