Glossaire Salesforce DevOps

2GP (Packaging de seconde génération)

Le modèle de packaging moderne de Salesforce qui construit les packages à partir du code dans le contrôle de version plutôt qu'en cliquant dans une org.

Définition

2GP (packaging de seconde génération) est le modèle de packaging piloté par la source de Salesforce : les métadonnées vivent dans le contrôle de version et les versions de package sont construites à partir de cette source avec Salesforce CLI et un Dev Hub, plutôt que définies en cliquant dans une org de packaging (1GP). Il produit à la fois des types de package gérés et déverrouillés à partir du même modèle sous-jacent.

Chaque build s'exécute dans une scratch org isolée, applique les déclarations de dépendance entre packages, et produit une version immuable avec une ascendance suivie jusqu'à son prédécesseur, offrant un vrai versionnage sémantique que 1GP n'a jamais eu.

C'est le modèle que Salesforce recommande pour tout nouveau développement de package géré et la plupart des projets ISV, car il permet le CI/CD et des tests automatisés par version. La contrepartie est la complexité de mise en place : les équipes ont besoin d'un Dev Hub, d'un accès aux scratch orgs et d'un pipeline CI avant que 2GP ne soit rentable.

En pratique

Comment cela fonctionne dans Serpent

Serpent exécute les pipelines 2GP nativement sur chaque plan, y compris le provisionnement des scratch orgs, les incréments de version tenant compte des dépendances, et la promotion entre versions de package, sans nécessiter de système CI séparé ni de scripts CLI écrits à la main. Les builds se déclenchent automatiquement à la fin des tâches, l'ascendance des versions est suivie pour que les mises à niveau restent propres, et le suivi des orgs abonnées montre exactement quelle version de package chaque client utilise. Comme la mise en place de 2GP est généralement le plus gros frein à l'adoption, l'objectif de Serpent est de rendre le modèle piloté par la source utilisable par des équipes sans ingénieur de release dédié. Voir 2GP CI/CD dans Serpent pour le pipeline complet.

Serpent construit un package de seconde génération à partir du code source versionné
Questions fréquentes

2GP (Packaging de seconde génération), expliqué

Ai-je besoin d'un outil CI séparé pour 2GP avec Serpent ?
Non. Serpent exécute nativement les étapes de build, de version et de promotion pour les packages 2GP, il n'y a donc aucun système CI séparé à configurer ou à maintenir.
Ai-je besoin de scratch orgs pour construire des packages 2GP ?
Oui. Chaque version de package 2GP est construite dans une scratch org isolée avant sa création, c'est pourquoi un Dev Hub connecté avec une capacité de scratch orgs est requis.
Un package 2GP peut-il être à la fois géré et déverrouillé ?
Non. Le type de package est défini à sa création et ne peut plus être modifié ensuite, donc les packages 2GP gérés et déverrouillés sont construits et versionnés séparément.

Démarrez gratuitement. Pas de carte bancaire, pas d'installation, aucun engagement.

Configuration en moins de 15 minutes. Aucun recrutement DevOps nécessaire.

Curieux de livrer plus vite avant de vous lancer ? Parlons-en

Sans engagement.