#!/bin/bash set -ex # ===================================================================== # OPTIONAL — MicroK8s setup/reset steps (only use when doing a hard reset) # ===================================================================== # sudo microk8s reset --destroy-storage # sudo snap remove microk8s # sudo snap install microk8s --classic # sudo microk8s enable dns rbac hostpath-storage host-access metrics-server ingress # # # Rebuild kubeconfig for your local user (optional) # microk8s kubectl config view --raw > ~/.kube/config # chmod 600 ~/.kube/config # sudo usermod -aG microk8s $USER # sudo chown -f -R $USER ~/.kube NAMESPACE="arc-systems" RUNNER_NAME="mealcraft-runners" # # ===================================================================== # # Remove previous ARC installation (safe even if missing) # # ===================================================================== # helm uninstall arc -n "${NAMESPACE}" || true # helm uninstall "${RUNNER_NAME}" -n "${NAMESPACE}" || true # echo "=== Installing ARC Scale Set Controller ===" # helm install arc \ # --namespace "${NAMESPACE}" \ # --create-namespace \ # oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set-controller # echo "=== Installing MealCraft Runner Scale Set (NO Docker-in-Docker) ===" # helm install "${RUNNER_NAME}" \ # --namespace "${NAMESPACE}" \ # --create-namespace \ # --set runnerScaleSetName="${RUNNER_NAME}" \ # --set githubConfigUrl="https://github.com/MealCraft" \ # --set githubConfigSecret.name="github-secret" \ # --set githubConfigSecret.github_token="$GITHUB_PAT" \ # --set dockerInDockerEnabled=false \ # --set containerMode.type="runner" \ # --set runnerLabels[0]="mealcraft" \ # oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set # # ===================================================================== # # RBAC — IMPORTANT # # Grants permissions to the exact ARC runner SA detected earlier. # # ===================================================================== echo "=== Applying RBAC for all ARC runners + Traefik ===" microk8s kubectl apply -f - <