Scratch org with Knowledge and External objects

I’m having issues creating a Scratch Org with both Knowledge and External Objects enabled.

It looks like Knowledge can only work in Enterprise edition scratch orgs while External Objects/Data sources work only in Developer edition scratch orgs.

I’ve been using the following project-scratch-def.json:

  "orgName": "Test Company",
  "edition": "Developer",
  "features": ["Communities", "ServiceCloud", "Sites", "Knowledge", "LightningServiceConsole", "LiveAgent", "PersonAccounts", "RecordTypes", "PlatformCache"],
  "settings": {
    "orgPreferenceSettings": {
      "s1DesktopEnabled": true,
      "notesReservedPref01": true
    },
    "knowledgeSettings": {
      "enableKnowledge": true,
      "enableLightningKnowledge": true
    },
    "liveAgentSettings": {
        "enableLiveAgent": true
    },
    "omniChannelSettings": {
        "enableOmniChannel": true
    }
  }
}

When I create a scratch org from the above definition file, I can’t find Knowledge in setup.

When I change the edition to Enterprise, I can find Knowledge. However, pushing our custom data source provider classes result in errors like:
Type is not visible: DataSource.Filter

Help please?

Answer

Attribution
Source : Link , Question Author : markgarg , Answer Author : Community

Leave a Comment