IDE as a Service Philippe Charrière @k33g_org Horacio Gonzalez @LostInBrittany

Qui sommes nous?

Qui sommes nous ? Horacio Gonzalez: Espagnol perdu en Bretagne Head of DevRel @OVHcloud Philippe Charrière: TAM @ GitLab & Side Projects’ Gardener 🌸🌺🌼 “Free DevRel” for beloved products

Gitpod Heroes 🍊🦸 https://www.gitpod.io/community/heroes

Comment on est tombés sur GitPod Deux chemins vers la même destination…

GitLab WebIDE 🥰 https://github.com/microsoft/monaco-editor

Theia-ide, TypeFox 🤔

Gitpod 😮

Gitpod 💖 GitLab

Vous avez un workshop à préparer… Félicitations Horacio De : Big Conference organization@bigconference.com À : Horacio Gonzalez horacio.gonzalez@gmail.com Salut Horacio ! Nous sommes heureux de vous annoncer que votre atelier “Apprendre les composants Web en deux heures” a été accepté à la Grande Conférence 2021. Comme nous sommes une conférence hybride, vous aurez 50 participants physiquement dans la salle et 200 participants à distance. L’intégration est essentielle dans cette configuration, assurez-vous que les participants puissent facilement créer un environnement de travail en quelques minutes, même avec un mauvais réseau ou de vieux ordinateurs.

🖐 ¡Hola Horacio! https://github.com/LostInBrittany/stencil-beers

2022 A-t-on réellement besoin d’un laptop à 6000€ ?

Laissez moi vous raconter une histoire… Your next project From: Boss boss@mycompany.com To: Developer dev@mycompany.com Hi Developer! Next Monday you will begin a new project with Big Customer. You will be in a team building a system with a distributed architecture, using Redis & MariaDB storage, Go Python and Java applications, RabbitMQ event bus, … And here you have your new laptop, a good one this time, it has 8 GB RAM!

Les containers ont changé le jeu On peut utiliser dans son portable la même archi qu’en prod

Même pour des architectures complexes

Mais un laptop reste un laptop… Et tous ces containers bouffent beaucoup de RAM et CPU

Sans parler du temps et effort L’installation et la configuration ne sont pas si simples…

Dans l’idéal je voudrais un IDEaaS Integrated Development Environment as a Service

C’est là que Philippe m’a parlé de GitPod

Un IDE complet dans un onglet Un IDE sur le Web 🌍 ● Eclipse Theia → VS Code ● Remote ● Workspaces

Il est plus qu’un IDE Un IDE n’est qu’un élément constitutif de un environnement de dev basé sur le cloud

Sans avoir besoin d’un laptop surpuissant ● Low cost ultraportable laptop ● Chromebook ● iPad / Tablette Android*

  • L’expérience est encore un peu décevante dans certains cas…

Les projets GitPod se basent sur Git Il peut se connecter sur : ● N’importe quelle version de GitPod: ○ GitLab ○ GitHub ○ BitBucket ● Versions on-premises ou open source ○ Votre propre dépôt Git privé

Gitpod - comment y accéder ? Gitpod.io ou Gitpod self hosted Partir dʼun dépôt Git Ajout de https://gitpod.io/# Extension navigateur Gitlab integration

Anatomie d’un projet GitPod ● Une image 🐳 Docker par défaut : gitpod/workspace-full ● Deux fichiers 📝 de configuration : .gitpod.dockerfile .gitpod.yml

Projects & Workspaces ● Un workspace est un environnement 🐳 Docker complet ● Des workspaces multiples pour chaque projet ○ Par exemple pour des branches ou des commits spécifiques ● Les workspaces sont peuvent être partagés ● Communication possible entre workspaces

Combien ça coûte ? ● SaaS version ● Free Professional Open Source plan: no limit (public projects) ● Self hosted (K8S) Open Source (Free) et Pro (29€)

Pourquoi Gitpod plutôt que CodeSpace ?

Pourquoi GitPod plutôt que CodeSpace ? ○ ○ ○ ○ ○ ○ Plus de ressources machine (cpu & ram) Disponible pour GitLab, BitBucket, GitHub Open source Self-Hosted possible (GCP, AWS, K8S) SnapShots PreBuilds

Installation de GitPod Open Source Vous n’avez besoin que de Kubernetes…

Bonnes et mauvaises raisons Bonnes raisons d’utiliser GitPod Open Source : ● Je ne peux pas utiliser un SaaS avec mon code source ○ Ça veut aussi dire pas de GitHub, GitLab or BitBucket… Mauvaises raisons d’utiliser GitPod Open Source: ● Je suis radin et je ne veux pas payer le SaaS ○ Héberger GitPod vous coûtera du temps et de l’argent

Pas trop compliqué à installer Mais vous avez besoin de connaître Kubernetes…

Choisissez plutôt une solution managée Vous utilisez le cluster, l’opérateur s’occupe des soucis

K3S sur une VM… ou avec CiVo Pas besoin de cluster Kubernetes

Pourquoi ? Mais avec des démos

👋 Hello World 🌍 https://gitlab.com/k33g_org/tnt2022/readme.md

Vous avez un workshop à préparer… Félicitations Horacio De : Big Conference organization@bigconference.com À : Horacio Gonzalez horacio.gonzalez@gmail.com Salut Horacio ! Nous sommes heureux de vous annoncer que votre atelier “Apprendre les composants Web en deux heures” a été accepté à la Grande Conférence 2021. Comme nous sommes une conférence hybride, vous aurez 50 participants physiquement dans la salle et 200 participants à distance. L’intégration est essentielle dans cette configuration, assurez-vous que les participants puissent facilement créer un environnement de travail en quelques minutes, même avec un mauvais réseau ou de vieux ordinateurs.

🖐 ¡Hola Horacio! https://github.com/LostInBrittany/stencil-beers

🖐 Hello Philippe La nouvelle équipe arrive lundi De : Patron boss@mycompany.com À : Chef de projet pm@mycompany.com Salut chef de projet ! Votre équipe Shiny Project arrivera lundi prochain. Vous aurez 15 développeurs dans l’équipe, et ils doivent être productifs dès le premier jour. Un lot de 15 ordinateurs portables et 3 serveurs a été envoyé par DHL à votre bureau, veuillez vous assurer qu’ils sont installés et fonctionnent d’ici lundi matin. Passe un bon weekend! https://gitlab.com/k33g_org/tnt2022/prometheus-metrics-generator

🖐 Hello again, Horacio! Cours sur OVHcloud Managed Kubernetes De : Partenaire training@partner.com À : Horacio Gonzalez horacio.gonzalez@ovhcloud.com Salut Horacio ! Comme expliqué par téléphone, nous aimerions que vous suiviez une formation OVHcloud Managed Kubernetes pour notre organisation. Nous devons être entièrement basés sur le Web, les participants ne pourront rien installer sur leurs ordinateurs (même pas kubectl, helm ou tout autre outil). Les participants n’auront que leurs navigateurs et leurs identifiants API OVHcloud.

Une plateforme prête à utiliser pour K8s https://github.com/LostInBrittany/gitpod4k8s

🖐 Coucou Kristen Coucou Kristen, il faudrait préparer 30 postes de développement Rust & Node.js pour le nouveau projet wasm pour le client Pouillou https://gitlab.com/k33g_org/tnt2022/rust.wasm

🖐 Au fait Philippe, tes side-projects … Au fait Philippe pour tes side-projects, tu utilises aussi GitPod ? amélioration workflow: http://gitlab.com/k33g_org/tnt2022/rust.wasm/-/issues boulot: runners on demand https://gitlab.com/k33g_org/gitlab-cookbook/runners/six-runners-in-docker oss: https://github.com/suborbital/sat

👋 Hey Jane ! Salut Jane, bienvenue chez GitLab, tu vas contribuer au code source d’une application avec une architecture multi nodes, avec du Redis, du PostgreSQL, du Ruby, du Go, du NodeJS, du … … Et voici ton portable avec 8Go de RAM 😉 https://gitlab.com/gitlab-org/gitlab-development-kit/-/blob/main/doc/howto/gitpod.md

⏱ 5 minutes

One more thing… Comme disait le maître

VS Code dans le navigateur pour tout le monde OpenVSCode Server

Projet open source par GitPod Supporté par GitLab, VMware, Uber, SAP, Sourcegraph, SUSE… https://github.com/gitpod-io/openvscode-server/

C’est quoi la différence avec Gitpod? GitPod est plus qu’un IDE

Très simple à déployer docker run -it —init -p 3000:3000 -v “$(pwd):/home/workspace:cached” gitpod/openvscode-server

Conclusion

Bossez léger 😉

Bossez … 😉

Thank you for listening