Pushing selected pages from Staging to Production

I am trying to figure out if there is a way to get around the ā€œall or nothingā€ promoting of a Staging environment so that my client can pick and choose specific pages they want to promote to Production and continue working in Staging without overwriting everything. I haven’t been able to find a way to do this in the documentation. Appreciate the help!

Unfortunately not without some manual copy & pasting or scripting :frowning:

The environments are entirely separate from each other, on purpose, so that each one can have a different schema, plugins, etc.

If they’re just working on specific pages, can they not stay in the production environment and use the regular draft/published system? Draft/published system | Documentation — DatoCMS

If they need more granular control, we also offer Workflows on some plans: Workflows | Documentation — DatoCMS

But environments are something different, and much more independent by design. We don’t have a system to let you copy isolated pieces of content from one to another, on purpose, because we have no way to guarantee that the schema between any two environments are even compatible.

That said, though, if you must do this with environments, you could manually do a scripted copy with the CMA, pulling from one env and copying to the other: Content Management API overview — DatoCMS

You could also add that functionality into a plugin that you write: Plugin SDK Introduction | Documentation — DatoCMS

However, I wouldn’t really recommend this, because it would increase fragility and may cause problems down the road. Probably the draft/pub system would be a better fit…? What do you think?

Thanks @roger! I think Workflows might be what I’m looking for. That makes sense about the schema not matching up between environments as potential issue. Appreciate your help on this.

1 Like