Rafael Gómez Olmedo, Raquel Toscano Marchena. https://github.com/MasterCloudApps-Projects/your-race
Your Race is a DevOps PoC (Proof of concept) for building an scalable platform for managing entry assignment in highly demanded races, like the New York City Marathon or 101 Km de Ronda (Spain).
In this repository you will find:
Java 17, Maven, npm, Artillery, Docker, Docker compose, kubectl, Minikube, Helm, PostgreSQL cli.
Check out information in Local Dev Setup for local development setup.
minikube start \
--cpus 4 --memory 16g \
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo add stable https://charts.helm.sh/stable
helm repo update
helm install prometheus prometheus-community/prometheus
Reference: [1]
kubectl apply -f k8s/manifests-operator/
minikube addons enable metrics-server
minikube addons enable istio-provisioner
minikube addons enable istio
cd k8s
curl -L https://istio.io/downloadIstio | sh -
cd istio-1.15.3
export PATH=$PWD/bin:$PATH
istioctl install --set profile=demo -y
kubectl label namespace default istio-injection=enabled
kubectl apply -f k8s/istio/
export INGRESS_PORT=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="http2")].nodePort}')
export INGRESS_HOST=$(minikube ip)
echo "http://$INGRESS_HOST:$INGRESS_PORT"
cd performance
artillery run artillery{XXX}Test.yml
jmeter > Test Plan.jmx
Import Dashboard:
Console:
http://localhost/togglz-console/index
Feature toggle list:
Checkout step-by-step walkthrough in How to run a test.
In How to generate data for Testing you can find out how to generate test data.
https://docs.google.com/document/d/17cHzdHlvV2ujh2DzF1rlHlmz_qfKArxPLsnF-EycibQ/edit?usp=sharing
https://docs.google.com/presentation/d/1F3jRpaACY1rKTt9T7lfJ5u6ywyYn1eU1fU61MXd-buE/edit?usp=sharing