将 SPFX sppkg 解决方案包文件添加和部署到 SharePoint 2019(本地)应用程序目录的自动化方式
Posted
技术标签:
【中文标题】将 SPFX sppkg 解决方案包文件添加和部署到 SharePoint 2019(本地)应用程序目录的自动化方式【英文标题】:Automated way to add & deploy SPFX sppkg solution package file to SharePoint 2019 (on-premises) app catalog 【发布时间】:2021-06-08 07:40:28 【问题描述】:我正在寻找一种自动化方式来添加和部署 SPFX 解决方案包 (*.sppkg) 到 SharePoint 2019(不在线)应用程序目录。这是使用 azure devops (CI/CD) 发布管道进行部署的原因。
我找到了添加此包的以下两个任务:
第一个工作正常,只是将文件添加到应用目录但没有部署它,所以我必须手动完成。 第二个任务可以选择针对 SharePoint 编写 PnP 脚本,但我的问题是我发现的大多数脚本都是针对 SharePoint Online 而不是内部部署的。感谢您的支持,如果您遇到这种情况并使用 PnP 或其他方式解决了它。
【问题讨论】:
【参考方案1】:Microsoft 的官方文档描述了一种使用 Azure DevOps 进行持续部署的方法。您可以点击Implement Continuous Integration and Continuous deployment using Azure DevOps了解详细信息。使用此方法无需编写 PNP 脚本。
使用 SharePoint 为持续部署设置 Azure DevOps 框架解决方案需要以下步骤:
创建发布定义
链接构建工件
创建环境
安装 NodeJS
为 Microsoft 365 安装 CLI
连接到应用目录
将解决方案包添加到应用目录
部署应用程序
设置环境变量
如果您只想使用 Azure DevOps CD 而不想使用 CI,则可以跳过第二步,将构建工件直接上传到存储库,然后在发布管道中使用它们。
【讨论】:
实际上@Jane,我一直在关注这篇文章,但是当遇到部署步骤时,它的目标是 SPO 而不是 SP 2019,就像我的案例和我的问题中提到的那样。文章中提到的命令是针对 SPO【参考方案2】:有一些使用管道的基本场景:
-
您可以根据自己的能力和目的使用云管道(azure、github 等)。
您可以使用自托管管道创建自己的环境
您将自己的运行器(管道代理)添加到您的云(天蓝色)环境中
因此,azure 允许您将自己的 pipeline agent 添加到环境中。例如,self-hosting windows agent。
所以,我认为您的解决方案是:
安装自托管代理 配置代理环境 - 安装 SharePointPnPPowerShell2019 将代理添加到您的 Azure 环境中 添加步骤以使用自托管代理将您的解决方案部署到管道中此方案允许您部署 sppkg 解决方案,而无需将您的应用目录发布到互联网,因为您的自托管代理将作为您的共享点农场在保存网络中。
Azure 管道部署步骤允许run powershell on target machines
先决条件 此任务使用 Windows 远程管理 (WinRM) 访问本地物理计算机或虚拟计算机 已加入域或已加入工作组。
【讨论】:
以上是关于将 SPFX sppkg 解决方案包文件添加和部署到 SharePoint 2019(本地)应用程序目录的自动化方式的主要内容,如果未能解决你的问题,请参考以下文章
使用 SPFx 扩展将自定义操作部署到 SharePoint 2019 列表
SPOnline:在我的 SPfx WebPart 中包含功能/资产部署后,我无法将其放在任何 SitePage 上
powershell 完整的Sharepoint Framework SPFX Bundle使用Gulp和Powershell构建上载部署过程