Przewodnik wydania 2GP
Architektura
Dział zatytułowany „Architektura”flowchart TB
subgraph DEVHUB["Dev Hub (Production)<br/>hello@tucario.com"]
PM["Package Manager<br/>(pakiety 2GP)"]
NS["Namespace Registry<br/>(połączony)"]
NS --> PM
end
DEVHUB --> NSORG
subgraph NSORG["Namespace Org (Dev Org)<br/>michal@tucario.com.flexifree<br/>Namespace: tucariofts"]
end
Wymagania wstępne
Dział zatytułowany „Wymagania wstępne”1. Dev Hub (Production)
Dział zatytułowany „1. Dev Hub (Production)”- Dev Hub włączony: Setup > Dev Hub > Enable
- Połączony namespace: App Launcher > Namespace Registries > Link Namespace
2. Namespace Org (Partner Developer Org)
Dział zatytułowany „2. Namespace Org (Partner Developer Org)”- Zarejestrowany namespace (jednorazowo, nieodwracalnie)
- Setup > Package Manager > Edit > Namespace Prefix
3. Środowisko lokalne
Dział zatytułowany „3. Środowisko lokalne”- Zainstalowane Salesforce CLI
- Autoryzacja do obu organizacji
Szybka referencja (kopiuj-wklej)
Dział zatytułowany „Szybka referencja (kopiuj-wklej)”# 1. Sprawdź organizacjesf org list
# 2. Sprawdź pakietysf package list --target-dev-hub DevHub
# 3. Sprawdź wersjesf package version list --packages FlexibleTeamShare --target-dev-hub DevHub
# 4. Utwórz nową wersję (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. Testowa instalacja (zastąp ID i alias org)sf package install --package 04tXXXXXXXXXXXXXXX --target-org TestOrg --wait 10
# 6. Promuj do RELEASED (NIEODWRACALNE!)sf package version promote --package 04tXXXXXXXXXXXXXXX --target-dev-hub DevHubPolecenia
Dział zatytułowany „Polecenia”Autoryzacja organizacji
Dział zatytułowany „Autoryzacja organizacji”# Dev Hub (production)sf org login web --alias DevHub --set-default-dev-hub
# Namespace Org (dev org z namespace)sf org login web --alias FlexiFREESprawdzenie połączonych organizacji
Dział zatytułowany „Sprawdzenie połączonych organizacji”sf org listSprawdzenie istniejących pakietów
Dział zatytułowany „Sprawdzenie istniejących pakietów”sf package list --target-dev-hub DevHubSprawdzenie wersji pakietów
Dział zatytułowany „Sprawdzenie wersji pakietów”sf package version list --packages FlexibleTeamShare --target-dev-hub DevHubTworzenie nowej wersji pakietu
Dział zatytułowany „Tworzenie nowej wersji pakietu”1. Aktualizacja wersji w sfdx-project.json (opcjonalnie)
Dział zatytułowany „1. Aktualizacja wersji w sfdx-project.json (opcjonalnie)”{ "packageDirectories": [ { "versionName": "ver 0.2", "versionNumber": "0.2.0.NEXT", "path": "force-app", "default": true, "package": "FlexibleTeamShare" } ], "namespace": "tucariofts"}2. Utworzenie wersji pakietu (beta)
Dział zatytułowany „2. Utworzenie wersji pakietu (beta)”sf package version create \ --package FlexibleTeamShare \ --installation-key-bypass \ --wait 20 \ --code-coverage \ --target-dev-hub DevHub \ --definition-file config/package-scratch-def.json3. Testowa instalacja
Dział zatytułowany „3. Testowa instalacja”sf package install \ --package 04tXXXXXXXXXXXXXXX \ --target-org TestOrg \ --wait 104. Promuj do wydanej (Production)
Dział zatytułowany „4. Promuj do wydanej (Production)”sf package version promote \ --package 04tXXXXXXXXXXXXXXX \ --target-dev-hub DevHubPublikowanie na AppExchange
Dział zatytułowany „Publikowanie na AppExchange”- Zaloguj się do Partner Community
- Publishing > Listings > New Listing
- Dodaj promowaną wersję pakietu
- Wypełnij szczegóły oferty
- Prześlij do przeglądu
Rozwiązywanie problemów
Dział zatytułowany „Rozwiązywanie problemów””Not available for deploy for this organization” (Tłumaczenia)
Dział zatytułowany „”Not available for deploy for this organization” (Tłumaczenia)”Organizacja scratch nie ma włączonego Translation Workbench.
Rozwiązanie: Użyj --definition-file config/package-scratch-def.json, który zawiera:
{ "orgName": "Package Build Org", "edition": "Enterprise", "settings": { "languageSettings": { "enableTranslationWorkbench": true, "enableEndUserLanguages": true, "enablePlatformLanguages": true } }}“No such column” (błędy FLS)
Dział zatytułowany „“No such column” (błędy FLS)”Użyj WITH SYSTEM_MODE zamiast WITH USER_MODE w zapytaniach SOQL.
”You cannot deploy to a required field”
Dział zatytułowany „”You cannot deploy to a required field””Usuń wymagane pola z Permission Sets (wymagane pola nie potrzebują FLS).