【问题标题】:Is it possible to set up continuous integration for MS dynamics crm 2011?是否可以为 MS Dynamics crm 2011 设置持续集成?
【发布时间】:2012-04-25 06:49:48
【问题描述】:

我们刚刚开始在本地开发和实施 Dynamics crm 2011。是否可以实现代码签入自动化以将代码从开发系统推广到测试系统?看起来这将涉及包含已签入的开发代码的非托管解决方案的导出/导入。我无法找到有关此功能的 API。

如果那不可能,你能走多远?看起来有 API 可以自动上传 Web 资源和插件(例如 sdk 中的 webresourceutility),但 Web 资源仍然需要手动链接到它们要使用的表单(在 javascript 的情况下)等等)。是否有人在自动化部分 CRM 环境方面取得了进展?

作为参考,我们正在使用 vs 2010 和 tfs 2010,使用 MSuild 进行当前的持续集成。

【问题讨论】:

    标签: tfs continuous-integration dynamics-crm dynamics-crm-2011


    【解决方案1】:

    我们有一些技术可以为我们提供非常可靠的 CI 结构。

    插件

    • 我们所有的插件都是在签入时进行 CI 编译的
    • 我们编写的所有插件代码都包含自注册详细信息作为组件的一部分。
    • 我们写了一个播放插件到数据库的工具,在自注册的基础上先卸载旧的 详情。

    解决方案

    • 我们在一个定制组织中有一个非托管解决方案,它 是干净的,不包含任何数据。开发正是基于此 组织。它有实体、表单、Jscript、视图、图标、角色、 等等。
    • 此定制数据库包含我们从第三方导入的所有解决方案,并且定制已纳入我们的解决方案,这是最终导入到目标组织的解决方案。
    • 解决方案导出为托管和非托管并保存到 TFS
    • 我们将 JScript 和 SSRS RDL 存储在 TFS 中,并有一个自定义工具 它将这些播放到自定义数据库中 已导出。
    • 我们还有一个 SiteMap 非托管解决方案,它以非托管形式导出(以确保我们获得最终生成的 Sitemap)

    部署

    我们有一个 UI 和命令行驱动的工具,它执行以下操作:-

    • 针对特定组织
    • 将自定义托管解决方案导入选定的环境。例如测试。另外导入非托管站点地图。
    • 卸载现有的解决方案(我们更新 solution.xml 文件,根据导入时的日期/时间为其命名)
    • 安装/卸载插件代码
    • 安装任何自定义 SQL 脚本(用于 RDL)
    • 重新启用重复检测规则
    • 播放我们在源代码控制下存储的某些元数据。例如我们构建的自定义报告实体,其中包含附件和 XML 配置。

    它并不完全完美,但我们通过命令行每晚刷新 TEST 和所有开发人员 PC。每个组织安装和卸载旧解决方案大约需要 1 小时。

    【讨论】:

      【解决方案2】:

      我们将 CI 广泛用于 Dynamics CRM。对于管理解决方案,我建议使用“干净的”Dynamics CRM 实施,它将成为您的解决方案和“域数据”的主控。有关导入解决方案,请参阅 http://msdn.microsoft.com/en-us/library/microsoft.crm.sdk.messages.importsolutionrequest.aspx。另请查看 - http://msdn.microsoft.com/en-us/library/hh547388.aspx

      【讨论】:

        猜你喜欢
        • 2012-05-21
        • 2014-01-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-03
        • 1970-01-01
        • 1970-01-01
        • 2011-09-05
        相关资源
        最近更新 更多