We have the use case of wishing to have a small data set from production database that our developers can use it locally to not have to manually re-create production content to simulate a front page etc. auto generating it is also not really an option, because we all know that devil is on the details and the object that breaks or does not render properly is never something that you can manually re-create.
Anyhow to the topic: partial exports.
Is anyone having the same needs as described above? How are you solving the problem? We are very interesting in it!
So far we were using some custom export views based on collective.exportimportbut unfortunately almost never work, or every once in a while it had to be patched to make it work again (either the export or import part).
Now that we have plone.exportimport which works more reliable, but unfortunately does a full site export, we came up with the idea of tweaking it to do partial exports.
As outlined in this issue:
Our idea is now to add an adapter that is expected to return paths that need to be exported. Then a default adapter could list everything (and thus mimic the current export all behavior), but if on a policy package/add-on one defines its own adapter, then it would be up to your logic to define what needs to be exported.
We could go fancy and add a dexterity behavior to manually mark things to be (or not) exported, so you can influence the adapter’s logic via the UI…
Anyway, back to the topic: is anyone interested in the idea and already solving it in a way that can be shared?
Thanks! we were doing that some time ago, but we stopped, as it was impractical.
For us cloning 100 Gb is not feasible to do on a daily basis… and most of the times we are not trying to replicate exactly production to debug an issue, but rather have a website with some content that avoids us having to create fake content that takes time and never really matches what is being done in production…
This sounds like a good use case for plone.distribution. I have a dev site that we rebuild nightly from a distro, so we can test functionality that way. It also makes it really easy to start up a new site locally, that is preloaded with dummy content.
Well, not at Data.fs but a PostgreSQL export, which can not benefit from a rsync incremental download.
But my main original goal and question here is not how to export a full database, that we are doing it since the very beginning, but get a small sensible data set so we can toy around when bugfixing or developing new features.