We have several developer orgs that are created for developers on our team. They are all developer editions and are independent from each other other than deployments through Jenkins. We have configured profiles on one org and want to migrate the changes from the source org to all other orgs. When we deploy with Jenknins, we get a successful deployment message but the settings such as custom object access and FLS are not deployed. I tried using Force.com IDE as well and noticed that the profile metadata is very minimal and does not include any of those settings.

Other discussions (e.g., this one) focus on Sandbox-Production deployment and suggest using Changesets to do this but based on my research, Changesets are for Sandbox-production orgs and not possible for our setting.

What can we do automate this and fully migrate profiles? and why does ANT not pull all the details (e.g., object access and FLS) of the profile?

  • You might need to look following thread for deployment of profile. salesforce.stackexchange.com/questions/2062/…
    – Devendra
    Commented Jul 6, 2016 at 15:50
  • This is one of the ones that focus on Sandbox-Production. Our case is multiple separate dev orgs and probably has a different solution.
    – Jorjani
    Commented Jul 6, 2016 at 15:55
  • 1
    Metadata is actually an xml file, you can use Mavensmate (configure package.xml to retrieve profiles metadata) or Illuminated Cloud for IntellijIdea (full IDE) to get that xml file locally and simply copy file to another project directory and deploy to Salesforce Commented Jul 6, 2016 at 17:08
  • On yout deploy, did you include the Profiles AND the objects/classes? Commented Jul 13, 2016 at 9:04
  • Yes. They are both in the package
    – Jorjani
    Commented Jul 13, 2016 at 16:57

2 Answers 2


Every single setting for a profile can be deployed using ANT.

Retrieve the Object along with the profile to get these :
1) FLS 2) Object CRUD 3) Record Type visibility 4) Tab Visibility

Retrieve the Page Layouts along with Record Types to get this :
1) Record Type - Page Layout - Profile assignment

Just deploy the "profiles" folder in both the cases, delete other ones from the retrieved Package.

  • Are you sure this works? Last time I tried this, it didn't update anything b/c the actual objects/fields needed to be within the package in order for the profile to be updated in the target org.
    – willard
    Commented Apr 14, 2017 at 20:47

Almost two years later, I have a better answer to my question: We have added our profiles and most of our other metadata (e.g., layouts, tabs, etc.) into our repo and used to save directly whenever needed. It works like a charm. The only challenge was the different settings available in different orgs, which made us minimize the settings we track and deploy. That was done using ANT before DX.

Now, we are using DX to create scratch orgs using the same metadata added to the repo and can have a new org in minutes.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .