Devenir traducteur pour la documentation kubernetes

Tout commence un jour quand Archy sur le slack de K8s Canada partage un lien vers le repository Github du site web de Kubernetes:

« You know French ? Want to become contributor to Kubernetes ?
Help to improve/review k8s docs ».

Traduire la documentation Kubernetes en français ?

La documentation Kubernetes est disponible sur le site principal https://kubernetes.io/ et la traduction française sur : https://kubernetes.io/fr/; vous remarquerez après avoir cliqué sur quelques liens que la traduction n’est pas complète – voyons comment améliorer cela !

Contribuer à la documentation Kubernetes

Pour commencer, je ne disposais que d’un lien vers une PR existante; j’ai proposé mon aide et Rémy m’a indiqué comment démarrer :

@anthonydahanne Parfait :) On recherche toujours de nouveaux contributeurs :) Si tu es chaud, je te conseille de regarder les deux documents utile. Le first step pour contribuer (https://docs.google.com/presentation/d/1D7PaazwoWSS7Kus2wGU-MTFw5hCxjhdpCdAR7WWGf5Y/edit#slide=id.g338ac0a8b6_0_48 ) et voici notre document de suivi, tu peux ajouter ton compte GitHub (https://docs.google.com/document/d/1TWBtGxz1GbKgKnfcEV98hRQviGbMNOU4JzjgY2qobuc/edit#) Est ce que tu peux nous rejoindre sur le slack Kubernetes sur le canal #kubernetes-docs-fr ?

https://github.com/kubernetes/website/pull/13434#issuecomment-497696715

Signer le CLA

Après avoir pris connaissance du document, le plus important était de signer le CLA (Contributor License Agreement) du projet Kubernetes – je l’ai fait à titre individuel, mais il est aussi possible de le faire en tant qu’employé d’une compagnie.

Rejoindre le canal slack #kubernetes-docs-fr

Ceci étant fait, j’ai rejoint le canal slack #kubernetes-docs-fr après m’être inscrit sur le compte slack du projet Kubernetes via cette url : https://slack.k8s.io/ ; c’est ici que l’on peut discuter et partager le statut d’une traduction en cours.

Cloner le repo git de la documentation Kubernetes

La première étape est bien entendue de rapatrier le code source de la documentation Kubernetes : toutes les traductions y sont incluses; pour rajouter une nouvelle traduction, il suffit de copier un fichier disponible en langue anglaise vers la même arborescence sous content/fr :

Pour pouvoir y contribuer, il faudra aussi le « forker », voici à quoi ressemble ma configuration git pour ce projet :

Outillage suggéré pour commencer l’aventure

Même s’il existe une liste de PRs de traductions : https://github.com/kubernetes/website/pulls?q=is%3Apr+is%3Aopen+label%3Alanguage%2Ffr , un des défis est de ne pas « se marcher sur les pieds » autrement dit ne pas travailler sur un document déjà en cours de traduction!

find_pr.py

En rejoignant le canal slack, un des contributeurs à la traduction française, Christophe, me suggéra d’utiliser ce script (en fait il est aussi disponible dans le repo git de la documentation) afin de retrouver les documents déjà en cours de traduction (pour rechercher s’il y a déjà des Pull Request ouvertes concernant un fichier)

Avant de pouvoir l’utiliser, vous devrez vous créer un jeton (token) Github :

Après avoir généré le jeton, il suffit de l’exporter dans votre shell :

export GITHUB_TOKEN=xxxx

Ensuite, vous devrez avoir un environnement Python correctement configuré sur votre machine

Sous Mac, j’ai installé Python avec Homebrew et j’ai ensuite ajouté les modules Python nécessaires :

$ brew install python

$ pip install click requests jinja2

Si on regarde l’aide :

Il est facile de l’utiliser :

Utiliser un environnement de développement (IDE) avec support Markdown et un dictionnaire français

Utilisant IntelliJ IDEA au quotidien, j’ai recherché un dictionnaire français, et en déroulant le fil de discussion suivant, j’ai téléchargé ce dictionnaire, que j’ai ensuite ajouté à mon IDE :

Ajouter un dictionnaire de français à IntelliJ IDEA
La magie d’un IDE qui parle français !

Tester ses changements au site Web de Kubernetes en local

Une fois que vous êtes fin prêts avec vos changements, vous pouvez les tester localement, comme expliqué dans le Readme du projet :

Vous pouvez alors admirer vos changements depuis http://localhost:1313 (si votre Docker for Desktop a bindé le port 1313 sur localhost)

Conclusion

Traduire la documentation d’un projet aussi riche que Kubernetes est certainement un travail de longue haleine, mais je pense que chaque contribution compte : que vous soumettiez votre PR ou que vous commentiez des PRs existantes, la communauté appréciera !