3

Is it possible in Workbench to create a changeset in the target sandbox using a package.xml?

See, we are going to deploy 300 components from a UAT sandbox to a PRE-PROD sandbox without recreating the changeset we deployed from a Dev sandbox.

I extracted the changeset that contained 300 components from our Dev sandbox and found out it has a package.xml that has the list of all the components we previously deployed.

I'm thinking of just using the package.xml to recreate the changeset in the UAT sandbox via Workbench. Is this possible?

If not, is there any other way we can recreate a changeset using the package.xml?

Thanks.

2 Answers 2

5

I don't believe you can actually recreate the Change Set, as such... but I'm not sure you need to. Workbench can do both the retrieve and deploy using the package you're speaking about.

You can retrieve the entire package using Workbench by going to Migration | Retrieve, and entering the change set name as the package name. You can retrieve the package, download it, and then redeploy it anywhere you wish with Workbench (Migrate | Deploy).

If you need to "reretrieve" the package from a different sandbox, simply use the package.xml file to retrieve the updated metadata from whatever sandbox you wish to retrieve it from (by uploading the package.xml as an unpackaged manifest on the retrieve screen). (You can edit the package.xml file to add/remove items as needed).

2
  • I just followed your instructions regarding the "reretrieve" of the package on a different sandbox and I was able to do it via Workbench. It's not really what I had in mind, but it's one solution that we can use. What will happen now for our deployment to Pre-Prod environment is that, we'll use the Deployment option in Workbench instead of the usual deployment in Salesforce. Thank you for your answer, this is an incredible help for us! Sep 25, 2019 at 6:09
  • 1
    Glad I could help, Jerard.
    – user72164
    Sep 25, 2019 at 13:51
1

I faced this issue last time. I described step by step how to do it.

  • Step 1: Create Outbound Change Set. Go to your sandbox, Setup > Outbound Change Sets, and create a new one.
  • Step 2: Adjust your code and package.xml. Go to your repository, or wherever you have org’s metadata, and modify the package.xml file with the following line fullName and description (optional). Zip your code with package.xml!
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>TestChangeSet</fullName>
    <description>Change Set Description</fullName>
    <types>
        <members>TestApexClass</members>
        <name>ApexClass</name>
    </types>
    <types>
        <members>testLwcComponent</members>
        <name>LightningComponentBundle</name>
    </types>
    <version>49.0</version>
</Package>
  • Step 3: Log in to Workbench. Firstly go to Workbench and log in to the sandbox where you created ChangeSet in the first step. Secondly, go to migration > Deploy and upload your .zip file created in step 2 and check Auto Update Package. Finally, Click Next and Deploy.
  • Step 4: Enjoy your Change Set with uploaded metadata!

If it is not enough more details you can find here: https://salesforceprofs.com/create-change-set-using-package-xml/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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