* Deploying MyWebsite v1.2 -> Test Environment (core install only)
* Deploying MyWebsite v1.3 -> Test Environment (hosting MyWebsite v1.2)
* Upgrading MyWebsite v1.3 with new Silverstripe release core on Development/Test/Production
* Deploying Production data back to development
Does Silverstripe have a way to merge new data created in development (new pages etc.) with data in production (posted blog items)? Or the reverse?
- I create v1 of website, say a blogging tool, and this goes to production...
- My customer starts creating blogs on production
- In development, I create v2 of website, with extended blog features (comments, etc.) and new sections like contact form, articles (with "starter" articles added) and new modules like ecommerce. I add an "announcement" blog item in development.
Now, do I simply ftp my v2 root over the top of v1 in production, run http://website.com/dev/build/?flush=1 and all is well? Like new starter articles appear and existing blog content is still there? And "announcement" blog merges with existing blogs in production?
You can use a default_records method to pre-populate date on dev/build if you need to, but content that has been added via the CMS will have to be re-added when you move your code to the production site.
Ok. Adding content at deploy time shouldn't be a huge problem, my main query is regarding merging database schemes, and it looks like dev/build does this automatically. I.e. - I don't have to write SQL scripts to update my database with a new schema every version.
It doesn't delete tables or fields so I do wonder what the long-term effects of this are.