I don't understand deployment

Posted by Community Admin on 03-Aug-2018 17:55

I don't understand deployment

All Replies

Posted by Community Admin on 26-Nov-2010 00:00

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.

Posted by Community Admin on 26-Nov-2010 00:00

I am interested in the answer too!


The way I see it, any manual changes to a system (not Sitefinity specifically) can be documented and an upgrade process can be established/automated. But since Sitefinity4 uses meta fields extensively now, most of the changes are probably done through admin back-end or through Fluent API.

The obvious way is to document all changes and go over them again in live environment, through admin setting or what other methods being used. But this seems 1, cannot be automated; 2, prone to problems (i.e. what if dev version went through several changes back and forth, lost data in the process? we definitely do not want to replicate that in live server)


Posted by Community Admin on 27-Nov-2010 00:00

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?

Posted by Community Admin on 28-Nov-2010 00:00

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

Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items

Posted by Community Admin on 29-Nov-2010 00:00

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...


Posted by Community Admin on 29-Nov-2010 00:00

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

Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items

Posted by Community Admin on 01-Dec-2010 00:00

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?

Posted by Community Admin on 01-Dec-2010 00:00

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

Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items

This thread is closed