【问题标题】:How do you upgrade your SharePoint solutions?您如何升级您的 SharePoint 解决方案?
【发布时间】:2010-09-01 03:55:58
【问题描述】:

我目前支持 SharePoint“解决方案”,当我说“解决方案”时,我指的是打包为 .wsp 文件进行部署的一组功能(如 Web 部件、列表定义等)。这种方法称为developers approach,目前由于我们以 MSI 的形式提供此 .wsp,因此升级过程需要用户收回整个解决方案并重新部署。

在我重新创建轮子并提出新的升级方法之前,我想向 SO SharePoint 专家询问我们如何在保留共享点解决方案的同时减轻撤回解决方案和重新部署更新/补丁的繁琐过程的建议使用最新的 dll 存储最新信息。

初步想法:

  • (1) 创建一个 powershell 脚本,尽可能多地自动执行步骤,例如收回旧解决方案、重新部署新解决方案、复制/更新配置文件。基本上重新部署解决方案。 (目前使用的方法)
  • (2) 将任何新补丁部署为新功能。
  • (3) 您的想法/方法在这里。

【问题讨论】:

    标签: sharepoint-2007


    【解决方案1】:

    我实际上不使用 .msi 安装程序来部署 SharePoint 解决方案,主要是因为我觉得收回、升级和重新部署解决方案比简单更新所必需的更具侵入性。

    stsadm SharePoint 管理工具支持upgrading a SharePoint solution in-place。使用stsadm -o upgradesolution 的吸引力在于您可以避免撤回、更新和重新部署代码。

    另一方面,.msi 安装程序的吸引力在于双击即可,无需控制台安装解决方案。我试图通过起草一个 PowerShell 脚本来处理所有 stsadm 命令等,从而弥合安装程序体验和原始 stsadm 体验之间的差距。

    就地升级通常非常有效;但是,如果您打算对事件接收器类进行更改,您可能会发现需要一个完整的 deactivate-retract-upgrade-deploy-activate 循环。

    例如,我有一些 WebApplication 范围的功能,当该功能被激活时,它们会在应用程序的 web.config 中添加新的 WebConfigModification 条目。如果我添加新的 web.config 条目,则在停用并重新激活该功能之前,新条目不会出现。

    避免上述缺点的合理策略是在更改会强制停用-重新激活循环时实施新功能。

    无论如何,解决方案部署策略是我的两分钱。希望对你有帮助。

    【讨论】:

      【解决方案2】:

      我经常使用stsadm命令的脚本来升级WSP包

      这里是带参数的命令:

      stsadm -o upgradesolution -name "WSPName.wsp" -filename "c:/WSPName.wsp" -immediate -allowgacdeployment -allowcaspolicies
      

      第二条命令用于强制立即执行该作业

      stsadm -o execadmsvcjobs
      

      【讨论】:

        猜你喜欢
        • 2010-09-05
        • 1970-01-01
        • 2010-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-17
        • 1970-01-01
        相关资源
        最近更新 更多