Sometimes it’s a little embarrassing to admit you have an issue. It’s a little more when you realize that issue has been happening for… a while. Like. Months.

We noticed one day recently that every one of our XM Cloud deployments had the post actions showing as Pending. The good thing is, this won’t actually stop a build. The CLI returns a success when the Deployment is done, not when the Post Actions (like a publish, re-index, etc) complete.
So, what the heck was happening? Here’s the Build JSON we were using:
{
"deployItems": {
"modules": [
"Project.Sitecore.Items.Master*",
"Project.Sitecore.Items.Structure*",
"Project.Sitecore.Items.Content*"
]
},
"renderingHosts": {
"xmcloudpreview": {
"path": "./src/project",
"nodeVersion": "20.10.0",
"jssDeploymentSecret": "",
"enabled": true,
"type": "sxa",
"buildCommand": "build",
"runCommand": "next:start"
}
},
"postActions": {
"actions": {
"transforms": [
{
"xdtPath": "/app_data/xdts/web.config.xdt",
"targetPath": "/web.config"
}
],
"warmUpCm": {
"urls": [
"/sitecore/shell",
"/sitecore/shell/Applications/Content%20Editor.aspx?sc_bw=1",
"/sitecore/client/Applications/Launchpad"
]
},
"populateSchema": {
"indexNames": []
},
"reindex": {
"indexNames": []
},
"publish": {
"path": "/sitecore",
"languages": [
"en"
],
"itemIds": [],
"targets": [
"Edge"
],
"republish": true
}
}
}
}
Nothing seemed weird there at first glance, but every deployment looked like this:

We submitted a ticket and support was pretty quick to point out that we had in fact put the transforms node in the wrong spot. According to the docs: https://doc.sitecore.com/xmc/en/developers/xm-cloud/the-xm-cloud-build-configuration.html this goes at the root. Why that didn’t jump out at me…was a brain fart moment. It happens.

Sure enough, we moved that node to the root, like it should be, and things went moving along. In the ticket, I added a feature request: Give some feedback. If the deploy file is malformed…we should see that reported. It shouldn’t just hang forever. They entered it into the tracker and we’ll see how it goes!
And that last part is the only reason this is a blog post and not a “well hell. Let’s move on” moment. There’s currently no feedback. Hopefully this helps someone from beating their head against the wall for a little bit!