【问题标题】:Update Code by Jenkins File automatically通过 Jenkins 文件自动更新代码
【发布时间】:2021-08-14 01:49:34
【问题描述】:

我有我的源代码,里面有 Jenkinsfile,我使用 jenkinsfile 将我的源代码部署到 ec2。

我的代码结构:

apiSourceCode
  - folder1
  - folder2
      - file.xml
  - Jenkinsfile
  - README.md

通过上面的 jenkinsfile 我将我的代码部署到 ec2,这个 jenkinsfile 会自动识别源代码中的新更改并将这些更改部署到 ec2。

file.xml 内容

<site_name>google.com</site_name>

我的目标/要求如下:

我想用一些内容更新 folder1/file.xml,比如说 yahoo.com 但想通过 jenkinsfile 环境变量更新。

所以基本上我会在 jenkinsfile 的 env 变量中传递 site_name 并且 site_name 应该在某个阶段在 file.xml 中更新让我们说INIT 阶段,然后是后续阶段,假设 BUILD 应该自动跟随。 有没有可能做到这一点?

【问题讨论】:

    标签: xml jenkins jenkins-pipeline jenkins-groovy


    【解决方案1】:

    findsed 会为您提供 1000 条不同的建议,而有些 perl 您永远无法弄清楚它是如何工作的。

    你没有提到语言标签或者构建工具标签,但是如果你使用maven来构建,考虑mvn replacer-plugin:replace

    或者您可以在 pom.xml 中将其定义为 maven 属性,然后您可以在构建时使用命令行参数覆盖:mvn -D=site_name=yahoo.com install

    【讨论】:

    • 我没有使用 maven 或 gradle,我只有一组 XML
    • 然后准备好迎接find / sed / perl 解决所有问题/您不应该使用除XSLT 火焰战争之类的 XML 工具以外的任何东西来编辑 XML。
    猜你喜欢
    • 2016-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-20
    • 1970-01-01
    • 2013-04-04
    • 1970-01-01
    相关资源
    最近更新 更多