Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Salesforce Profiles deploy successfully but no modifications are actually deployed #1136

Open
elise-smcmigrations opened this issue Jan 16, 2025 · 1 comment
Labels
bug Something isn't working

Comments

@elise-smcmigrations
Copy link

Describe the bug and steps to reproduce
I included 12 profiles in sandbox A and deployed them to sandbox B.
The profiles included opportunity record type settings and object visibility settings.
The deployment completed successfully with 0 errors, but when checking the profiles in Sandbox B, none of the modifications from sandbox A actually moved.

Expected behavior
I expected the 12 profiles included in the deployment from Sandbox A to Sandbox B to have matching profile settings in both sandboxes.

Image Image Image

Browser and operating system:
Chrome. Mac Sequioa.

@elise-smcmigrations elise-smcmigrations added the bug Something isn't working label Jan 16, 2025
@paustint
Copy link
Contributor

@elise-smcmigrations - It looks like on the deployment, the response indicated "nothing was changed".

Profiles/permissions can be a bit tricky - you actually need to combine profiles in addition to the actual metadata that you want the profiles to apply to.

Here are some docs I found, there are likely other pages relating the change sets or deployments and managing permissions with Profiles - might be a useful reference.

For record type settings you need to deploy:

  • record types + profile

for object visibility settings - I am really not sure exactly what to deploy here.
Maybe customObject + profile - but that ends up deploying a bunch of extra stuff that you may not want to deploy
For permissions related changes - you have a couple easier options:

  • Use the Permissions Manager in Jetstream
  • Do a normal data load - query the ObjectPermissions from Org A for the profiles in question, download, then do a record data load of those records into the target org
    • The jetstream permission manager uses these records behind the scenes to update permissions

Edit the profile names and object names as required

SELECT Id, PermissionsCreate, PermissionsDelete, PermissionsModifyAllRecords,
	PermissionsRead, PermissionsViewAllRecords, SobjectType
FROM ObjectPermissions
WHERE Parent.Name IN ('Name of Profile 1', 'Name of Profile 2', 'Name of Profile 3')
AND SobjectType IN ('Account', 'Contact')

Image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants