• Accueil / Salesforce / Guide de Git…
, Guide de Git (et du contrôle de version) pour les administrateurs Salesforce<span class="wtr-time-wrap after-title"><span class="wtr-time-number">12</span> minutes de lecture</span>

Guide de Git (et du contrôle de version) pour les administrateurs Salesforce12 minutes de lecture


Le contrôle de version est au cœur du processus DevOps moderne pour Salesforce. Les équipes d’administrateurs et de développeurs voient de nombreux avantages clés lorsqu’elles commencent à utiliser le contrôle de version pour le développement et les versions, en particulier autour de la collaboration. Cet article parcourt le bases du contrôle de version basé sur Git, le rôle que joue le contrôle de version dans un processus de publication Salesforce rationalisé, et certains des avantages qui en découlent.

Un autre article, Contrôle de version pour les développeurs Salesforce poursuit en décrivant meilleures pratiques pour les équipes Salesforce cherchant à mettre en œuvre des workflows basés sur la source.

, Guide de Git (et du contrôle de version) pour les administrateurs Salesforce<span class="wtr-time-wrap after-title"><span class="wtr-time-number">12</span> minutes de lecture</span>

Quelle est la particularité de DevOps pour Salesforce ?

Commençons par définir ce que signifie DevOps dans le contexte Salesforce. DevOps, la fusion du développement et des opérations, est un concept assez nouveau dans l’écosystème Salesforce. C’est parce que Salesforce supprime une grande partie de la complexité que vous pourriez trouver sur d’autres plates-formes en gérant tout, de l’hébergement à l’évolutivité et à l’infrastructure pour vous, toutes les opérations backend qui relèvent généralement de la responsabilité d’une équipe d’exploitation.

Les administrateurs Salesforce, en particulier, ont bénéficié de l’approche unique de la plate-forme « des clics et non du code » pour la configuration de l’organisation, car elle leur a donné le pouvoir d’apporter des modifications sans avoir besoin d’outils de développement complexes. En démocratisant le développement et la possibilité d’effectuer des personnalisations de cette manière, Salesforce a également permis aux entreprises d’obtenir un retour sur investissement plus rapide. Cependant, comme effet secondaire, de nombreux outils et processus standard de l’industrie utilisés en dehors de l’écosystème n’ont pas toujours été adoptés rapidement pour Salesforce.

Le processus de gestion des versions relativement simple suivi par la plupart des équipes au début, poussant les changements le long d’un pipeline d’organisations Salesforce, ne fonctionne tout simplement plus. Les équipes se retrouvent à écraser le travail des autres et à passer des heures sur des déploiements sans aucun moyen d’accélérer les choses. DevOps résout ces problèmes, et le contrôle de version est la base de DevOps qui vous permet d’ajouter les éléments suivants à votre processus :

  • Réviser et tester
  • Options d’annulation
  • Répétabilité
  • Automatisation
  • Propriété de l’équipe

Au lieu d’une équipe DevOps dédiée, des équipes d’administrateurs et de développeurs Salesforce exécutent et gèrent elles-mêmes l’ensemble du cycle de développement et de publication. Et si quelqu’un s’inquiète d’avoir à apprendre des outils de développement compliqués, Salesforce DevOps peut être fait avec des clics et non du code !

Le contrôle de version est désormais essentiel pour les équipes Salesforce

Le contrôle de version n’est pas un nouveau concept. En fait, c’est depuis longtemps l’un des principaux outils qui sous-tendent la gestion des versions sur d’autres plates-formes. Mais jusqu’à récemment, les équipes Salesforce étaient à la traîne lorsqu’il s’agissait d’adopter le contrôle de version pour les raisons mentionnées ci-dessus. Cela a changé au cours des dernières années.

Alors que la plate-forme Salesforce a continué à mûrir et à offrir des fonctionnalités plus complexes, il est devenu évident que le contrôle de version est un outil clé nécessaire pour chaque équipe Salesforce. Récemment, l’écosystème a connu une transition vers des flux de travail basés sur la source – et de manière considérable ! Gearset État de Salesforce DevOps 2021 rapport a interrogé plus de 500 professionnels de Salesforce et a constaté qu’un peu moins de 70 % d’entre eux ont déjà intégré le contrôle de version dans leur processus d’une manière ou d’une autre.

Qu’est-ce que le contrôle de version ?

Avant d’explorer pourquoi le contrôle de version est si crucial pour Salesforce DevOps, parcourons simplement un bref résumé de ce qu’est le contrôle de version.

  • Le contrôle de version suit les modifications apportées aux fichiers au fil du temps, qui peut être n’importe quoi, des fichiers texte aux métadonnées Salesforce qui constituent la structure de votre organisation. Il vous donne un historique complet de chaque modification apportée à n’importe quel fichier, à tout moment, par n’importe qui.
  • Il existe de nombreuses variantes de contrôle de version, mais Git est la norme de facto pour Salesforce. Git offre aux équipes la possibilité de séparer plusieurs flux de développement et d’éviter de se marcher sur les pieds en apportant des modifications dans des branches isolées, plutôt que dans des bacs à sable partagés.
  • Git remplace votre organisation de production en tant que source de vérité partagée pour toute votre équipe. Chaque référentiel a une branche « principale » ou « maîtresse », qui contient les dernières versions « prêtes pour la production » de tous les fichiers. En faisant travailler tout le monde à partir de ce point de départ unique, il est facile pour les équipes d’avoir une compréhension commune de ce qui a été examiné.
  • Le contrôle de version vous permet de réviser et d’intégrer les modifications avant la sortie, afin que vous puissiez gérer les conflits à l’avance.

Toutes ces fonctionnalités combinées vous offrent d’énormes avantages par rapport au processus de gestion du changement natif de Salesforce. Ils facilitent grandement la collaboration avec les développeurs et vous offrent un moyen complet de gérer les modifications de chacun au fur et à mesure qu’ils se dirigent vers la production.

Comment les équipes travaillent avec le contrôle de version

Visualiser le contrôle de version est le meilleur moyen de comprendre la terminologie qui l’entoure.

, Guide de Git (et du contrôle de version) pour les administrateurs Salesforce<span class="wtr-time-wrap after-title"><span class="wtr-time-number">12</span> minutes de lecture</span>

Suivi des fichiers dans un dépôt

Dans le contrôle de version, tous vos fichiers de projet – vos métadonnées Salesforce comme les profils, les objets personnalisés et le code Apex personnalisé créé par les développeurs de votre équipe – vivent dans un référentiel ou « repo », qui suit l’historique des modifications de ces fichiers.

Plateformes d’hébergement Git

Normalement, les équipes Salesforce auront un référentiel hébergé de manière centralisée qui agit comme la source de vérité, généralement hébergé sur une plate-forme d’hébergement Git telle que GitHub ou alors GitLab. Les administrateurs et les développeurs peuvent interagir avec le référentiel hébergé de manière centralisée à l’aide d’un système basé sur les clics. Solution DevOps pour Salesforce. Alors que les développeurs travailleront également à partir d’une copie locale du référentiel sur leur ordinateur, des outils DevOps tiers permettent aux administrateurs de gérer les déploiements entre leur système de contrôle de version et leurs différentes organisations Salesforce.

, Guide de Git (et du contrôle de version) pour les administrateurs Salesforce<span class="wtr-time-wrap after-title"><span class="wtr-time-number">12</span> minutes de lecture</span>
Configuration d’un déploiement vers le contrôle de version à l’aide de clics et non de code

Branchement

Lorsque vous allez apporter des modifications à votre sandbox ou créer une nouvelle fonctionnalité dans un environnement de développement, vous commencez par créer une branche distincte, souvent appelée branche « fonctionnalité », à partir de la branche « principale » ou « maître ». Cette branche de fonctionnalité inclura une copie de tous les fichiers présents dans la branche main/master. En créant cette branche de fonctionnalité, vous pouvez en toute sécurité apporter des modifications aux fichiers dans un environnement distinct de celui de vos coéquipiers. Encore une fois, c’est quelque chose que tout le monde peut faire sans avoir à utiliser l’interface de ligne de commande (CLI) d’un développeur si votre équipe a un outil tiers qui prend en charge la création et le déploiement dans les branches.

S’engager dans des changements

De temps en temps, lorsque vous travaillez sur des modifications dans votre organisation, il est recommandé de « valider » (déployer) ces modifications dans votre branche de fonctionnalité. Vous devez le faire à différents moments, après chaque étape logique de votre travail. Chaque branche devient un groupe de modifications connexes qui, ensemble, formeront la fonctionnalité finale sur laquelle vous travaillez. Là encore, vous pouvez utiliser l’UI d’un outil Salesforce DevOps pour effectuer les déploiements d’un sandbox au contrôle de version.

Demandes de tirage

Lorsque votre travail est terminé, vous créez une « pull request » pour fusionner votre branche de fonctionnalité dans la branche principale. Une demande d’extraction fournit essentiellement un mécanisme de révision et d’approbation, ainsi que l’automatisation du processus de combinaison de fichiers, avant que les modifications puissent être publiées dans les organisations en aval et enfin en production.

Un processus unique et partagé pour les administrateurs et les développeurs

Regroupons donc le tout dans un workflow de base basé sur la source pour Salesforce qui ressemblera à ceci :

, Guide de Git (et du contrôle de version) pour les administrateurs Salesforce<span class="wtr-time-wrap after-title"><span class="wtr-time-number">12</span> minutes de lecture</span>

Dans le diagramme ci-dessus, un administrateur travaille dans un bac à sable, déploie les modifications en tant que validations dans une branche de fonctionnalité, puis ouvre une demande d’extraction pour fusionner le travail dans la branche principale. Le développeur fait de même, mais à la différence que les nouvelles fonctionnalités sont d’abord développées dans l’IDE avant d’être déployées dans un environnement de développement sandbox ou Salesforce. Ces modifications peuvent être publiées en même temps que la production. Le point clé est que tous les membres de l’équipe utilisent une seule source de vérité dans le contrôle de version et déploient les modifications dans le pipeline en utilisant le même processus. Cette façon de travailler débloque des avantages importants.

Les avantages de travailler avec le contrôle de version

Les équipes utilisant le contrôle de version ont un plus grand contrôle sur les changements poussés dans le pipeline, ce qui leur donne à leur tour les principaux avantages suivants (entre autres) :

Une collaboration améliorée qui évolue

Lorsque plusieurs administrateurs et développeurs travaillent sur la même organisation, il y a toujours un risque que les modifications soient écrasées, que différentes contributions entrent en conflit ou que quelque chose se brise en production. Le branchement dans le contrôle de version permet non seulement à votre équipe d’éviter ce risque et de travailler efficacement en parallèle sur les mêmes fonctionnalités, mais vous aide également à adapter votre processus de publication à une équipe de toute taille.

Au fur et à mesure que votre équipe et la complexité de vos flux de travail augmentent, vous pouvez ajouter n’importe quel nombre de sandbox et d’organisations de test de pré-production au processus. Il s’agit d’une approche éprouvée – presque toutes les grandes entreprises technologiques, d’Amazon à Microsoft en passant par Google, utilisent le contrôle de version au cœur de leurs pratiques de développement et il a été prouvé qu’il fonctionne à grande échelle.

Déploiements et tests automatisés

Une fois que vous avez mis en place un processus manuel bien rodé avec un workflow basé sur Git, votre équipe est prête à ajouter l’automatisation au mix. L’automatisation vous aide à synchroniser tous vos environnements, à tester et à valider les modifications, et vous évite d’avoir à déployer manuellement les mêmes modifications pour mettre à jour plusieurs sandbox, environnements de test et production. L’automatisation est le joyau de la couronne DevOps, vous offrant un moyen reproductible et plus rapide d’envoyer les modifications entre les organisations Salesforce.

Augmentation de la vitesse de libération

Des déploiements plus rapides permettent des déploiements plus fréquents, ce qui à son tour encourage les équipes à envoyer moins de modifications à la fois. Plus le nombre de changements dans une version est petit, plus il est facile à tester et moins il y a de risque de la publier. Et si cela se passe mal, il est beaucoup plus facile de revenir ou d’annuler un petit nombre de modifications que, disons, l’équivalent d’un mois entier de configuration !

Des versions de meilleure qualité et à faible risque

En adoptant cette cadence rapide, les équipes prennent naturellement l’habitude d’itérations rapides et de retours réguliers, et ces boucles de retour plus serrées se traduisent par des versions de meilleure qualité avec des fonctionnalités plus pertinentes pour les utilisateurs finaux. Espérons que vous puissiez voir comment tout cela peut rapidement générer de nombreuses améliorations dans un pipeline de déploiement par rapport aux ensembles de modifications !

Vous voulez vous familiariser avec le contrôle de version ?

Un moyen rapide d’être opérationnel consiste à suivre les cours de formation gratuits sur Barre de lancement DevOps, qui vous offre un moyen amusant d’en savoir plus sur les principes fondamentaux du contrôle de version et sur Salesforce DevOps avec la possibilité d’obtenir de précieuses certifications. Que vous travailliez en tant qu’administrateur, développeur ou architecte, Les professionnels de Salesforce avec une expertise DevOps sont très demandés, c’est donc le bon moment pour commencer à acquérir ces compétences utiles.

Pour des conseils pratiques sur comment mettre en œuvre le contrôle de version et commencer à créer un processus DevOps pour votre équipe, consultez le guide de suivi Contrôle de version pour les développeurs Salesforce.



Source de l’article traduit automatiquement en Français

Besoin d'aide ?
Vous utilisez Pardot depuis un certain temps mais vous n'êtes pas sûr d'en
exploiter tout le potentiel

Notre analyse de votre Pardot offerte dès aujourd'hui
Merci, vous pouvez compléter notre questionnaire
Nous allons revenir vers vous rapidement !

Fermer