There is a shortage of public directions for how to setup Nonprofit Cloud and Education Cloud scratch org definitions. This project framework is meant to help other people find the patterns quickly.
There are two configurations included in this project (and really nothing else) for creating Salesforce scratch orgs that have the features for Nonprofit Cloud and Education Cloud.
To make use of these configurations you'll need setup SF cli and a Salesforce devhub. Complete Trailhead Quick Salesforce DX if you don't have those elements in place.
Setup Command:
sf org create scratch -d -f config/nonprofit-cloud.json -a npc-org
For details see: config/nonprofit-cloud.json
AccountingSubledgerGrowthEdition
Subledger is included in this sample. You can remove this from the feature list if you aren't using it for your project.IndustriesActionPlan
AnalyticsQueryService
PublicSectorAccess
Assessments
Fundraising
Grantmaking
I've included fundraising and grant making. You can remove one if you aren't using it. Please not that Grant making also includes some industry settings that may need to be disabled if this is removed.IndustriesSalesExcellenceAddOn
IndustriesServiceExcellenceAddOn
MarketingUser
ProgramManagement
OmniStudioDesigner
OmniStudioRuntime
OutcomesManagement
EnableSetPasswordInApi
PersonAccounts
The following specific industry settings are included.
enableGrantmaking
: true – Grantmaking enablement switchenableBenefitManagementPreference
: trueenableBenefitAndGoalSharingPref
: trueenableCarePlansPreference
: true
There are three more you can add, but require another feature: IndustriesCompliantDataSharing
:
enableCompliantDataSharingForFundingAward
enableCompliantDataSharingForBudget
enableCompliantDataSharingForIndividualApplication
Setup Command:
sf org create scratch -d -f config/education-cloud.json -a edu-org
For Education Cloud the Salesforce help documentation notes that you need to complete the setup manually following the Education Cloud setup guide. However, there are a number industry settings that can be pre-set in the configuration to enable and disable these features.
For details see: config/education-cloud.json
EducationCloud:10
Note that this includes a quantity parameter. I'm unclear why it's needed in this context but appears to be required.Assessments
Fundraising
I've included fundraising in this sample, because you can get Edu Cloud with it. If you aren't using Fundraising in the project you're testing you can remove this one.AccountingSubledgerGrowthEdition
I've included Subledger in this sample, because you can get Edu Cloud with it. If you aren't using Fundraising in the project you're testing you can remove this one.IndustriesActionPlan
AnalyticsQueryService
PublicSectorAccess
IndustriesSalesExcellenceAddOn
IndustriesServiceExcellenceAddOn
LightningScheduler
LightningServiceConsole
MarketingUser
OmniStudioDesigner
OmniStudioRuntime
EnableSetPasswordInApi
PersonAccounts
enableIndustriesAssessment:
: trueenableDiscoveryFrameworkMetadata
: trueenableEducationCloud
: trueenableStudentSuccess
: trueenableAcademicOperations
: trueenableAlumniRelations
: trueenableCarePlansPreference
: trueenableBenefitManagementPreference
: trueenableBenefitAndGoalSharingPref
: true
If you create your own fork of this project and want the repo to successfully run the github actions you'll need to include the correct secret.
- On your local machine connect to the devhub you wish to use.
- Run
sf org display -o [your devhub alias] --verbose
- Find the section labeled
Sfdx Auth Url
. You'll need that value as your secret. - In your Github repo's settings, find Secrets and Variables, and open the subsection for Actions.
- Create a new repository secret called
DEVHUB_SFDX_URL
. Copy the secret value you found in step 3.