I've been trying to put together a plan for using SFDX in conjunction with a CI tool like Azure DevOps. It appears to have all of the right pieces for deploying metadata to/from git and scratch orgs/sandboxes.

How does a team track changes that an admin (clicks not code) makes? Is there a limited recommended scope of what SFDX is supposed to track?

  • 1
    You could probably setup something with into CI command chain to use sfdx force:source:retrieve on different metadata that admins would adjust Aug 12 '20 at 18:32

Ideally, admins' clicks-not-code should also result as metadata in a repo somewhere. Flows, processes, page layouts, etc can all be sourced to a repo and then distributed through CI, thus enhancing the experience. It would be even more ideal if your admin could simply create a scratch org, deploy your existing metadata, make any clicks-not-code changes, then pull those changes back to the repo (this is actually the intended pattern to use).

There are, of course, situations that this won't work for (not all metadata can be deployed via API), but for the majority of use cases, your admins should follow the same steps as a developer in terms of making repo changes.

In fact, with Unlocked Packages, it goes one step further; any rogue changes made by an administrator can be overwritten by packages, thus ensuring a consistent state of metadata. This sounds annoying, but it's actually incredibly liberating knowing that you can replicate your org in mere minutes with close to 100% accuracy.

  • 2
    You are like the Jon Skeet of Salesforce
    – Kyle J V
    Aug 12 '20 at 18:36
  • @KyleJV Thanks for the compliment!
    – sfdcfox
    Aug 12 '20 at 18:45

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.