Le besoin de Cloud Workstations
Le passage au travail à distance a incité la communauté des développeurs à rechercher de nouvelles façons de collaborer et de relever les défis de la productivité. Les modèles de configuration locale traditionnels entraînent souvent une dérive de la configuration, provoquant des problèmes de «*fonctionnement sur ma machine*» qui érodent la productivité des développeurs. De plus, la mise en place d'un nouveau projet peut prendre des jours ou des semaines, une grande partie de ce temps étant consacrée à la mise en place de l'environnement de développement.
Google Cloud Workstations relève ces défis en fournissant une solution gérée pour la création et la gestion des environnements de développement. Il permet aux administrateurs de configurer une ou plusieurs configurations de poste de travail, en définissant un modèle pour les environnements de leur équipe. Les développeurs peuvent ensuite créer des postes de travail à la demande en sélectionnant simplement parmi les configurations auxquelles ils ont accès. Cela garantit la cohérence entre les environnements, donnant aux développeurs l'assurance qu'ils utilisent la bonne version des outils et des bibliothèques. Et Google d'assurer qu'avec son outil « mettre à jour ou corriger des centaines de milliers d'environnements de développement est aussi simple que de mettre à jour la configuration de leur poste de travail et de laisser Cloud Workstations gérer les mises à jour ».
Google explique que Cloud Workstations s’adresse aux besoins variés des équipes technologiques des entreprises. Les développeurs peuvent accéder à des environnements de développement puissants, sécurisés et personnalisables depuis n’importe où, en utilisant un navigateur, un EDI local ou un terminal, avec le support de nombreux outils et bibliothèques populaires. Les administrateurs et les équipes plate-forme peuvent facilement provisionner, mettre à l’échelle, gérer et sécuriser les environnements de développement pour leurs équipes de développement, en automatisant les tâches quotidiennes et en favorisant une plus grande efficacité et sécurité.
Cloud Workstations permet :
- d'améliorer la sécurité des environnements de développement en étendant la posture de sécurité aux EDI avec des mécanismes de sécurité centralisés, mais configurables, basés sur les meilleures pratiques du secteur. Mitiger l’exfiltration en empêchant le stockage du code source localement ;
- d'augmenter la productivité des développeurs avec des outils personnalisés. Améliorer la productivité des développeurs avec des environnements de développement sécurisés et rapides accessibles via un navigateur ou un EDI local à tout moment et depuis n’importe où, tout en prenant en charge plusieurs IDE populaires et des outils de développement personnalisables ;
- de simplifier l’intégration des nouveaux développeurs et des développeurs distants. Intégrer plus rapidement les développeurs, quel que soit leur lieu de travail, avec des environnements de développement basés sur le cloud, tout en garantissant la reproductibilité et la cohérence grâce à des environnements définis par conteneur.
Environnements de développement cohérents optimisés pour les besoins de votre équipe
Envoyé par Google
« Vous pouvez également démarrer votre propre image de conteneur ou utiliser des images de conteneur externes, à condition qu'elles soient basées sur Linux », indiquent les documents. Ils sont conçus pour être éphémères. « Les postes de travail s'exécutent sur des machines virtuelles Compute Engine éphémères qui sont supprimées lorsque les postes de travail sont arrêtés, auquel cas toutes les données d'exécution des postes de travail sont supprimées avec la machine virtuelle », confirment les documents. Il existe également une option pour un répertoire personnel persistant.
Malgré leur nom, les Google Cloud Workstations sont conçues comme une offre hybride. La configuration de base consiste à coder dans un navigateur Web, exécutant Code-OSS, plutôt que l'expérience à distance complète de quelque chose comme Microsoft DevBoxes. Matt Ellis, developer advocate pour le compte de JetBrains, a fait remarquer à l'édition 2022 de Cloud Next qu'il ne s'agissait pas d'un bureau à distance, notant que « les solutions de bureau à distance nécessitent un aller-retour complet pour chaque pression de touche ». Le concept de JetBrains est que l'EDI s'exécute localement, bien que la plupart de ses fonctionnalités s'exécutent sur la machine distante, grâce à un élément appelé JetBrains Gateway.
Le rapprochement avec JetBrains signifie que les seuls EDI préfigurés sont les EDI Code-OSS de Microsoft ou les EDI de JetBrains tels que IntelliJ IDEA, PyCharm, CLion, PhpStorm et Rider. On a l'impression que Google vise à offrir un écosystème de développeurs alternatif à Microsoft et GitHub ; pourtant, la popularité de VS Code le rend difficile à éviter. Bien que la version du navigateur dans une Cloud Workstation soit Code - OSS, VS Code lui-même peut également être utilisé via sa prise en charge du développement à distance via SSH. Il y a un certain avantage à utiliser VS Code plutôt que Code-OSS, car il permet d'accéder au marché officiel de l'extension VS Code, plutôt qu'au plus petit registre Open VSX qui prend en charge les « éditeurs compatibles avec le code VS ».
Sécurité et conformité renforcées
Cloud Workstations étend les politiques et mécanismes de sécurité similaires utilisés pour les services de production basés sur le cloud aux postes de travail des développeurs. Il s'intègre à BeyondCorp Enterprise, permettant des politiques d'accès basées sur le contexte avec Context Aware Access. Cela permet d'éviter les fuites de code ou d'autres propriétés intellectuelles lors du téléchargement, de la copie, du collage, de l'impression, etc., grâce aux fonctionnalités de protection contre les menaces et les données.
Les autres fonctionnalités de sécurité incluent la prise en charge des clefs de chiffrement gérées par le client (CMEK), la politique de conservation des disques persistants et la prise en charge améliorée du VPC (Virtual Private Cloud) partagé. Ces fonctionnalités facilitent l'amélioration de la sécurité des environnements de développement, en donnant aux administrateurs le contrôle sur les clefs utilisées pour protéger les disques persistants utilisés par les postes de travail de leurs développeurs.
Envoyé par Google
Et vous ?
Quels sont les avantages de Cloud Workstations par rapport à d’autres solutions de développement à distance ?
Quels sont les défis que vous rencontrez actuellement avec vos environnements de développement locaux ou distants ?
Comment Cloud Workstations peut-il vous aider à respecter les exigences de conformité et de sécurité de votre entreprise ?
Quels sont les EDI ou les outils de développement que vous utilisez ou que vous aimeriez utiliser avec Cloud Workstations ?
Avez-vous déjà essayé Cloud Workstations ou envisagez-vous de l’essayer prochainement ?