Cluster de tests toutcasser

Lâchez le chat noir

TeDomum et le collectif ACIDES disposent d’un cluster de tests nommé affectueusement « toutcasser ». Tous les contributeurs à l’écosystème ont un accès complet à ce cluster de test pour… tout casser !

Comment accéder à toutcasser

Toutcasser est disponible uniquement en IPv6, vous devez donc disposer d’IPv6 sur votre terminal pour l’utiliser.

D’abord installez kubectl (disponible dans la plupart des distributions), mais également kubelogin pour l’authentification Hiboo, lequel devrait installer un binaire nommé kubectl-oidc_login.

Puis exécutez le script suivant, qui modifiera votre configuration kubeconfig :

export CLUSTER=toutcasser
export API=https://k8s.toutcasser.net
export ISSUER=https://auth.tedomum.net/sso/oidc/d9ea03a4-5e80-42bb-a1f8-e88e92448284
export CLIENTID=9uiW7tYFKPozuzGNqqpHplBF
export SECRET=kWjK52REjXXboYt2AJBAGRzMBVmEpVNSGmCtKcNoWOXm6L5C

kubectl config set-cluster $CLUSTER --server=$API
kubectl config set-credentials $CLUSTER --exec-api-version=client.authentication.k8s.io/v1beta1 --exec-command=kubectl --exec-arg=oidc-login --exec-arg=get-token --exec-arg=--oidc-issuer-url=$ISSUER --exec-arg=--oidc-client-id=$CLIENTID --exec-arg=--oidc-client-secret=$SECRET
kubectl config set-context $CLUSTER --cluster=$CLUSTER --user=$CLUSTER

Cela crée un contexte nommé toutcasser, un cluster et une authentification du même nom, configurés pour accéder au cluster par son endpoint d’API sur k8s.toutcasser.net. Enfin lorsque c’est prêt, venez demander poliment un accès sur l’un de nos salons techniques, nous en créerons sans difficulté.

Pourquoi un cluster de tests

Nous avions initialement prévu des accès de tests peu privilégiés sur notre cluster de production. Cette démarche a deux limites :

L’intérêt d’un cluster de tests bien industrialisé, c’est qu’il est explicitement fait pour tout casser, et pouvoir être réinstancié en quelques minutes sans effort humain. Ainsi même les personnes les moins formées ou les plus timides peuvent jouer, y-compris sur les composants les plus critiques.

Configuration de développement

Vous pouvez activer le pre-commit hook avec pre-commit install.