【问题标题】:Jenkins Deploy scriptsJenkins 部署脚本
【发布时间】:2013-11-13 10:41:21
【问题描述】:

所以,我正在编写构建和部署脚本。为了创建构建,我使用了 ant。持续构建是由 Jenkins 完成的。 该构建生成 3 个不同的工件: 战争档案 带布局的拉链 带图片的 zip 到目前为止,一切都很好,但现在我需要编写部署脚本,它应该: 将战争(工件1)部署到在服务器1上运行的tomcat 将工件 2 放在服务器 1 的特定目录中 将工件 3 放在服务器 2 的特定目录中 所以我正在和我的同事交谈,他说我们还应该生成一个工件(可能是 deploy.xml),以便在放置在正确的服务器上时部署这些工件。 所以会有另一个脚本,那就是: 下载詹金斯工件 scp 到每个服务器并将 deploy.xml 放在那里 远程调用 deploy.xml 让我有点不舒服的是将 deploy.xml 作为构建工件的行为。这背后的动机是能够在不需要访问 VCS 存储库的情况下进行部署,因此构建将是自包含的,即任何构建都只能使用 Jenkins 生成的内容投入生产。 部署脚本应该放在哪里?它们应该只在 VCS 中,还是应该也是构建工件?

如果有任何示例部署脚本,请提供

【问题讨论】:

    标签: bash scripting jenkins jenkins-plugins continuous-deployment


    【解决方案1】:

    我编写了自己的部署框架,由不同的 shell、批处理、python 和 .... 脚本组成。它将环境信息与应用程序信息巧妙地分开,并允许我快速更新部署信息并添​​加新的应用程序或环境。但是,不同部分的编排是由 Jenkins 完成的。当只是将文件复制到 Windows 服务器时,我的 Jenkins master(在 Windows 上运行)只是将文件复制到公开目标目录的网络共享。我可以使用 sc.exe 远程重启的服务。当跨越边界进入 AIX 时,我使用 jenkins slave,它们通过目标系统上的 ssh 启动。因此分发由 Jenkins 管理。实际工作由脚本完成。

    【讨论】:

    • @Ani:我不能只给你脚本。它们是我工作的公司的知识产权。
    猜你喜欢
    • 1970-01-01
    • 2018-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-21
    • 2013-02-13
    • 1970-01-01
    相关资源
    最近更新 更多