Helm chart for deploying the core components of the A+ learning management system - A+, mooc-grader and gitmanager - to a Kubernetes cluster.
For local testing with e.g. minikube, you can run with the following:
- Start minikube and enable the ingress addon, if not already enabled:
minikube start; minikube addons enable ingress
- Add the used hostnames to your /etc/hosts file or such, so that they resolve correctly:
echo "$(minikube ip)\taplus.local grader.local gitmanager.local" | sudo tee -a /etc/hosts
- Clone the repository
- Run
helm install -n aplus --create-namespace -f values-minikube-testing.yaml aplus .
to install the chart - Once all the pods are running, perform initial database migrations for A+ and gitmanager
kubectl exec -n aplus -it $(kubectl get po -n aplus -l app=aplus -o name) -c aplus -- python3 manage.py migrate
kubectl exec -n aplus -it $(kubectl get po -n aplus -l app=gitmanager -o name) -c gitmanager -- python3 manage.py migrate
After these steps, browsing to http://aplus.local
takes you to the front page of A+ (with no installed courses, though).