Jenkins 将网站部署到 Azure 平台即服务

Jenkins deploy website to Azure Platform as a Service

我已成功实施 Jenkins 以部署到本地托管的服务器,但现在我需要创建一个作业以部署到 PaaS 上的 Azure 托管网站 运行。 Jenkins 主机和网站主机都是 Windows 机器。

我找到了 link 用于为 Azure Slave 插件设置虚拟机模板,但是没有 VM,因为它是 IaaS,在这种情况下我没有额外的从属。

我问的是插件和流程。

我应该在 Jenkins 中使用哪个 Azure 插件(如果有的话)? 例如。 Azure PublisherSettings 凭据插件

我使用 Get-AzurePublishSettingsFileImport-AzurePublishSettingsFile 吗? 这些是否包含 Jenkins 需要知道的所有相关详细信息 复制到哪里?

我会创建构建的 zip 文件,将 zip 上传到 BLOB 存储, 然后解压到网站?

是否可以上传一个 zip 文件,然后在整个文件上传后继续提取文件? 如果在上传 1000 个单独的文件时连接在任何阶段中断,那么网站将不稳定,因此我需要调查单个文件上传和提取。

所以如果我是你,我会做以下事情:
1. 安装 jenkins powershell 插件,安装 Azure PowerShell 命令行开关。
2. 在 Jenkins 中创建一个作业,创建一个 zip 文件并将其上传到 Azure 存储
3. 创建一个 ARM 模板以从 Azure 存储中的 zip 文件部署 Azure WebApp。
4. 创建一个作业来部署所述模板。

因此 ARM 模板将获取 zip 文件并将其上传到 Azure WebApp,而 WebApp 将在内部处理 zip 文件的所有麻烦。