6

I'm trying to automate our development process by using scratch orgs and pushing the converted metadata into them.

I have an existing codebase already, my production org was created in March 2015 and currently has the following license types:

  • Force.com - App subscription
  • Salesforce
  • Chatter free
  • Chatter External

A brand new scratch org, created with the "ForceComPlatform" feature in its config, has the following license types:

  • Salesforce
  • High Volume Customer portal
  • Chatter Free
  • Chatter External
  • Company Communities
  • Salesforce Platform

When I push the metadata extracted from our prod org into the scratch, it fails to create the profiles since some of them are assigned to the "Force.com - App Subscription" license.

A quick and dirty (and wrong) way to "fix" this would be to replace the Force.com kind of licenses for the "Salesforce Platform" ones, but i'm not sure about how different they are and I want to use a scratch as similar to my production and sandbox orgs as possible.

My scratch definition file for reference:

"orgName": "myOrg",
"edition": "Enterprise",
"language": "es_CL",
"features": [
    "MultiCurrency",
    "AuthorApex",
    "ServiceCloud",
    "PersonAccounts",
    "ForceComPlatform"
],
"orgPreferences" : {
    "enabled": [
        "AnalyticsSharingEnable",
        "ChatterEnabled",
        "DisableParallelApexTesting",
        "EnhancedEmailEnabled",
        "OfflineDraftsEnabled",
        "S1EncryptedStoragePref2",
        "S1OfflinePref",
        "SelfSetPasswordInApi"
    ]
}
1

In my knowledge "Force.com App Subscription" License types are subset of "Salesforce Platform" Licenses. Both have similar functionality/features to offer.

Salesforce Platform License :

Designed for users who need access to custom apps but not to standard CRM functionality. Users with this user license are entitled to use custom apps developed in your organization or installed from Force.com AppExchange. In addition, they are entitled to use core platform functionality such as accounts, contacts, reports, dashboards, documents, and custom tabs. However, these users are not entitled to some user permissions and standard apps, including standard tabs and objects such as forecasts and opportunities. Users with this license can also use Connect Offline.

Note: Users with this license can only view dashboards if the running user also has the same license.

Users with a Salesforce Platform user license can access all the custom apps in your organization.

Each license provides additional storage for Enterprise and Unlimited Edition users.

-Salesforce

  • Yeah, I raised a case for an official answer about the difference between license types – FuuRe Mar 27 '18 at 11:26
  • Did you get the answer from salesforce support? – JavaAster Apr 3 '18 at 14:10
  • They told me they were equivalents, but not 100% the same, also, just for testing I replaced the license names in the metadata before pushing it into the scratch and got a new error (Some Lightning permission, can't remember exactly the error) so I quit that path – FuuRe Apr 9 '18 at 11:35
1

It might be worth your time trying to get on the Scratch Org Shape Pilot that was introduced in Winter '18 - Get Your Scratch Orgs in Shape (Pilot).

Then when the Scratch Org is created it will have the same "Shape" as the production org. This would ideally include the license types. However, this is a pilot, so your results may vary.


You can also see this with the org:shap:create (Pilot) command.

Creates a snapshot of org edition, features, and licenses to use for scratch org creation, allowing your scratch org to look like another org for testing.

  • Thank you Daniel, sadly our company has a policy to not to work with beta software, but I will still look into this – FuuRe Apr 9 '18 at 11:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.