iis - Linux Jenkins 可以在管道构建期间停止/启动 IIS 网站吗?
问题描述
我目前正在尝试在 Linux Jenkins 服务器中构建一个 php 应用程序,然后通过 Publish Over CIFS 插件使用 IIS 将构建工件发布到远程 Windows 服务器。
但是,如果应用程序正在使用中,插件 Publish Over CIFS 将不允许我写入 Windows 共享,说它正在使用中。这让我相信我需要在发布时以某种方式启动/停止 IIS 网站。
有没有人有这方面的经验?有没有更好的方法将 PHP 工件从 Linux 上的 Jenkins 发布到单独的远程 Windows IIS 服务器?
解决方案
这是我们最终做的事情,但是还有一些其他建议值得研究:
- 在我们推送到的 Windows 服务器上安装了 openssh
- 使用 jenkins 服务器 (linux) 中的 ssh 在 windows 上运行 powershell 命令以停止网站
- 命令是:ssh user@host 'powershell.exe -Command Start-Website name'
推荐阅读
- node.js - 未捕获(承诺中)错误:网络错误:JSON 中位于位置 0 的意外令牌 I
- javascript - 池请求与批处理请求
- cmake - cmake 更改 gtest 的编译器
- java - @Scheduled 作业阻塞 Quartz 作业
- macos - 构建 golang 应用程序导致“TARGET_OS_IPHONE”未定义错误
- ckeditor - 标签的ckeditor样式集-在a中渲染svg
- javascript - 如何在页面重新加载超过 10 像素时激活颜色更改导航
- android - 从另一个 BottomSheetDialogFragment 打开另一个 BottomSheetDialogFragment
- bash - 将参数传递给 bash 中的命令
- amazon-web-services - Aws Terraform - 跨账户连接