All checks were successful
AI Code Review / ai-review (pull_request) Successful in 6s
53 lines
1.7 KiB
Bash
53 lines
1.7 KiB
Bash
#!/bin/zsh
|
|
# in case of $'\r': command not found error, run command below first
|
|
# sed -i 's/\r$//' ./bootstrap.sh
|
|
|
|
CLUSTER="${1:?Usage: ./bootstrap.sh <cluster> (upc-dev|upc-prod|aks-dev|aks-prod|eks-dev|eks-prod|gke-dev|gke-prod)}"
|
|
|
|
echo "running $0 for cluster: ${CLUSTER}..."
|
|
|
|
# Source cluster config
|
|
eval $(yq -r 'to_entries[] | "export \(.key)=\"\(.value)\""' "clusters/${CLUSTER}.yaml")
|
|
|
|
echo "Bootstrapping cluster: ${clusterName} (${CLUSTER})..."
|
|
|
|
############################################################
|
|
# Bootstrap #
|
|
############################################################
|
|
Bootstrap()
|
|
{
|
|
ArgoCd
|
|
# Gitea
|
|
}
|
|
|
|
|
|
############################################################
|
|
# Gitea #
|
|
############################################################
|
|
Gitea()
|
|
{
|
|
echo "Installing secret..."
|
|
kubectl apply -f private/gitea-repo-main.yaml
|
|
kubectl apply -f private/main.key
|
|
}
|
|
|
|
############################################################
|
|
# ArgoCd #
|
|
############################################################
|
|
ArgoCd()
|
|
{
|
|
# install argocd
|
|
echo "Installing ArgoCD..."
|
|
helm upgrade --install argocd argo-cd \
|
|
--repo https://argoproj.github.io/argo-helm \
|
|
--namespace argocd --create-namespace \
|
|
--values infra/values/base/argocd-values.yaml \
|
|
--values "infra/values/${CLUSTER}/argocd-values.yaml" \
|
|
--set notifications.context.clusterName="${clusterName}" \
|
|
--timeout 60s --atomic
|
|
|
|
kubectl apply -f "_app-of-apps-${CLUSTER}.yaml" -n argocd
|
|
}
|
|
|
|
# Bootstrap
|