使用Kentico自动部署

时间:2012-01-06 11:34:44

标签: c# asp.net continuous-deployment kentico

有没有人有使用Kentico自动部署的经验?例如。难以将文档类型,bizforms等同步到另一台服务器?

4 个答案:

答案 0 :(得分:2)

我已经使用内置的内容登台模块来做这种事情。不幸的是,不是所有的Unicorns和Rainbows。模块中肯定存在一些错误,它们实际上是从一个服务器序列化数据,并在目标服务器上反序列化。

虽然回到了版本5.5或5.5R2,但他们几个月前发布了版本6。我会花一些时间来查看文档中的限制,然后在提交之前给它一个测试。它肯定适用于某些人,但它可能不是内容编辑器友好。

Kentico Developer Documentation on Content Staging Module

答案 1 :(得分:1)

另一种可能性是利用进行数据库比较和同步的工具。我之前使用过SQL Examiner Suite,但我听说Red Gate也是很好的工具。

虽然这可能不是最好的方法,但它可以工作。如果您没有定期进行重大更改,那么本地/开发服务器和生产之间的同步可能会很好。这对于“内容登台”来说可能不是一个好的解决方案,但更多的是因为面向开发的任务而发生的变化。

答案 2 :(得分:0)

另一种选择是使用Kentico中的导出/导入功能:http://devnet.kentico.com/docs/6_0/devguide/index.html?export_and_import_overview.htm

我没有自动执行此过程,但您可以查看Kentico的API参考中的ExportManager类:http://devnet.kentico.com/Documentation.aspx

希望这有帮助

答案 3 :(得分:0)

使用Kentico 10,您可以使用持续集成功能。它现在比Kentico 9好多了。 使用持续集成功能数据库对象可以与代码文件一起部署,并自动序列化到目标数据库中。

如果您不想使用此模块,则需要使用Kentico中的对象导出功能(Site =>导出网站或对象)。

在这两种情况下,您必须知道,内容(页面)很难在不同服务器之间进行分级。内容分段仅在您拥有"真实"临时服务器,竞争编辑器准备应该按时暂存到实时服务器的竞争。 如果您想从DEV服务器转移到LIVE服务器,如果页面的GUID匹配,则dev版本将覆盖这些页面。 如果使用持续集成,则将删除不在DEV服务器实例中的所有页面!

可以毫无问题地导入所有其他对象(开发模板,Web部件,页面类型等对象)。