I don't understand deployment
Hi,
Well, actually I understand initial deployment, but: like many others, I typically have at least two versions of a particular website: the live one (on shared hosting) and a local development version.
The remote database of the live site will continuously change and expand: visitors will post forum threads, and content editors will add articles.
The local database of the development site will also change: the content is not important here, but there will be changes to Sitefinity tables, e.g. when I change widget templates.
Suppose it's time to upgrade the live site to the new "release" I have build and tested locally. What do I do? I can't just script my local database and run that on the remote database. I will loose all content. As far As I understand it, just certain (parts of?) the local tables should be scripted and deployed on the remote database. What is the recommended way to manage this process?
I'm evaluating Sitefinity and don't understand yet how to do this.
I am interested in the answer too!
Yeah, what do we do...put the project manager on the Live server and use that to update the live site? Or does that sit local on dev, and we just publish and copy the new assemblies to live?
Hello,
You can use database schema comparison and database replication tools to merge the data. If you use two databases, Sitefinity cannot track what changes has been made in both of them. We will have plans for synchronization option in one of the 4.0 editions that will be released next year.
Greetings,
Ivan Dimitrov
the Telerik team
I know most of this thread was about general migration of changes from one environment to another, but I have the same question that Steve posed above. Do you have a recommendation for upgrading multiple environments to a new Sitefinity build? For example, our development environment is now on RC, but our test environment is still on Beta 2. If I now migrate our latest code to the test server, which includes all of the latest Sitefinity assemblies, will it automatically upgrade the test database to RC? Wasn't sure if I needed to run the project manager upgrade process on each environment...
Hi Matt,
Do you have a recommendation for upgrading multiple environments to a new Sitefinity build?
You have to use Sitefinity's 4.0 Project manager. The project manager does not support batch upgrade operations. There is no automated process for batch upgrades.
All the best,
Ivan Dimitrov
the Telerik team
Hi Ivan,
The database schema comparison and database replication tools you mentioned would indeed help. However, it would still require quite some knowledge about the database structure I think. This is the way I see it:
The database contains 3 types of elements:
1) Table structure
2) User data/content (forum messages, published content, etc.)
3) Configuration data (like customized widget template code, other Sitefinity aspx pages, etc.)
When updating a live environment from a development environment, you would 1 and 3 to be pushed to live, not 2! In order to do so, you need to know exactly which Sitefinity tables contain 2 and which contain 3. That's actually something I do not want to think about :-)
Would this be the synchronization option that will be added later? I would be a huge help!
Ideally, I would also like to be able to push 2 (and even 1 and 3 in some cases) from live to development, in order to test and develop with actual data.
I wonder how other people currently solve this?
Hello AP,
Sitefinity's database is maintained by data layer Open Access ORM. There is no simple relation between the tables and single query to get a content data involves multiple tables. For instance if you want to migrate a content like blog or/and post and you should keep its permissions and workflow status there are more than 10 tables in the query
dbo.sf_blogs_sf_permissions
dbo.sf_blogs_sf_commnt
dbo.sf_blogs
dbo.sf_blog_posts_tags
dbo.sf_blog_posts_sf_permissions
dbo.sf_blog_posts_sf_commnt
dbo.sf_blog_posts_category
dbo.sf_blog_posts
dbo.sf_blgs_sf_prmssns_nhrtnce_map
There are many changes that are saved in config files - App_Data/Sitefinity/Configuration
All the best,
Ivan Dimitrov
the Telerik team