Glossaire Salesforce DevOps

Package géré

Un package qui cache son code afin que les entreprises puissent le vendre sur AppExchange sans révéler son fonctionnement.

Définition

Un package géré est un ensemble distribuable et à espace de noms de métadonnées Salesforce dont le code Apex, les formules et la logique métier restent cachés à l'org qui l'installe, conçu pour un référencement sur AppExchange et une distribution commerciale ou multi-clients. Les grandes applications verticales sont livrées ainsi, ce qui explique pourquoi l'essentiel de la configuration quotidienne d'un produit comme nCino réside dans les enregistrements de l'org abonnée plutôt que dans le package lui-même. L'espace de noms préfixe chaque composant, empêchant les collisions entre les orgs clientes, et il ne peut jamais être supprimé une fois enregistré.

Les packages gérés peuvent être construits avec 1GP ou 2GP, bien que Salesforce recommande désormais 2GP pour son versionnage correct, ses déclarations de dépendance, et son modèle source adapté au CI. Le référencer publiquement sur AppExchange nécessite de réussir la revue de sécurité obligatoire de Salesforce, et les mises à jour sont généralement livrées sous forme de push upgrades vers les orgs abonnées installées plutôt qu'une nouvelle installation manuelle à chaque fois.

Comme le code reste caché, les abonnés ne peuvent pas voir ou personnaliser directement la logique protégée, ce qui est exactement le compromis qui rend possibles la licence et la protection de la propriété intellectuelle, contrairement à un package déverrouillé. La plupart des ISV construisent aujourd'hui sur 2GP, car les packages gérés construits en 1GP manquent d'une gestion correcte des dépendances entre packages.

En pratique

Comment cela fonctionne dans Serpent

Serpent gère l'ensemble du cycle de vie du package géré pour les ISV : builds versionnés, promotion tenant compte des dépendances, suivi des versions des orgs abonnées, et préparation à la revue de sécurité AppExchange, le tout natif plutôt que rajouté avec des scripts. Les équipes peuvent voir exactement quelle version de package chaque org abonnée exécute et planifier les chemins de mise à niveau en conséquence, sans feuille de calcul pour le suivre manuellement. Comme Serpent ne nécessite pas de système CI séparé, les équipes ISV sans ingénieur de release dédié peuvent tout de même livrer à un rythme prévisible. Voir le DevOps pour ISV pour le flux complet.

Serpent suit une release de managed package pour la distribution sur l'AppExchange
Questions fréquentes

Package géré, expliqué

Ai-je besoin d'un espace de noms avant de pouvoir construire un package géré ?
Oui. Un package géré nécessite un espace de noms enregistré lié à votre Dev Hub avant de pouvoir créer la première version du package.
Puis-je convertir un package géré 1GP en 2GP ?
Oui, Salesforce prend en charge la conversion d'un package géré 1GP existant en 2GP, mais cela nécessite d'abord de demander l'accès à la conversion pour votre espace de noms, et il s'agit d'une étape unique et non réversible.
Que se passe-t-il pour les orgs abonnées lorsque je livre une nouvelle version de package ?
Les abonnés conservent leur version actuellement installée jusqu'à ce que vous poussiez une mise à niveau ou qu'ils installent la nouvelle version manuellement ; les push upgrades mettent tout le monde à jour automatiquement sans étape d'approbation.

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.