Aller au contenu

Guide de version 2GP

flowchart TB
    subgraph DEVHUB["Dev Hub (Production)<br/>hello@tucario.com"]
        PM["Package Manager<br/>(2GP packages)"]
        NS["Namespace Registry<br/>(linked)"]
        NS --> PM
    end

    DEVHUB --> NSORG

    subgraph NSORG["Namespace Org (Dev Org)<br/>michal@tucario.com.flexifree<br/>Namespace: tucariofts"]
    end
  • Dev Hub activé : Setup > Dev Hub > Enable
  • Namespace connecté : App Launcher > Namespace Registries > Link Namespace
  • Namespace enregistré (unique, irréversible)
  • Setup > Package Manager > Edit > Namespace Prefix
  • Salesforce CLI installé
  • Autorisation aux deux organisations
Fenêtre de terminal
# 1. Vérifier les organisations
sf org list
# 2. Vérifier les packages
sf package list --target-dev-hub DevHub
# 3. Vérifier les versions
sf package version list --packages FlexibleTeamShare --target-dev-hub DevHub
# 4. Créer une nouvelle version (BETA)
sf package version create --package FlexibleTeamShare --installation-key-bypass --wait 20 --code-coverage --target-dev-hub DevHub --definition-file config/package-scratch-def.json
# 5. Tester l'installation (remplacer l'ID et l'alias de l'organisation)
sf package install --package 04tXXXXXXXXXXXXXXX --target-org TestOrg --wait 10
# 6. Promouvoir en RELEASED (IRRÉVERSIBLE !)
sf package version promote --package 04tXXXXXXXXXXXXXXX --target-dev-hub DevHub
Fenêtre de terminal
# Dev Hub (production)
sf org login web --alias DevHub --set-default-dev-hub
# Namespace Org (dev org avec namespace)
sf org login web --alias FlexiFREE
Fenêtre de terminal
sf org list
Fenêtre de terminal
sf package list --target-dev-hub DevHub
Fenêtre de terminal
sf package version list --packages FlexibleTeamShare --target-dev-hub DevHub

1. Mettre à jour la version dans sfdx-project.json (optionnel)

Section intitulée « 1. Mettre à jour la version dans sfdx-project.json (optionnel) »
{
"packageDirectories": [
{
"versionName": "ver 0.2",
"versionNumber": "0.2.0.NEXT",
"path": "force-app",
"default": true,
"package": "FlexibleTeamShare"
}
],
"namespace": "tucariofts"
}
Fenêtre de terminal
sf package version create \
--package FlexibleTeamShare \
--installation-key-bypass \
--wait 20 \
--code-coverage \
--target-dev-hub DevHub \
--definition-file config/package-scratch-def.json
Fenêtre de terminal
sf package install \
--package 04tXXXXXXXXXXXXXXX \
--target-org TestOrg \
--wait 10
Fenêtre de terminal
sf package version promote \
--package 04tXXXXXXXXXXXXXXX \
--target-dev-hub DevHub
  1. Connectez-vous à Partner Community
  2. Publishing > Listings > New Listing
  3. Ajoutez la version du package promue
  4. Remplissez les détails de la liste
  5. Soumettez pour examen

”Not available for deploy for this organization” (traductions)

Section intitulée « ”Not available for deploy for this organization” (traductions) »

L’organisation scratch n’a pas Translation Workbench activé.

Solution : Utilisez --definition-file config/package-scratch-def.json qui inclut :

{
"orgName": "Package Build Org",
"edition": "Enterprise",
"settings": {
"languageSettings": {
"enableTranslationWorkbench": true,
"enableEndUserLanguages": true,
"enablePlatformLanguages": true
}
}
}

Utilisez WITH SYSTEM_MODE au lieu de WITH USER_MODE dans les requêtes SOQL.

Supprimez les champs requis des ensembles de permissions (les champs requis n’ont pas besoin de FLS).