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 :
- elle ne permet pas de tester sereinement l’infrastructure elle-même ;
- elle ne décomplexe pas les plus timides.
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
.