【问题标题】:Using HTML in job description for Jenkins job generated by DSL在由 DSL 生成的 Jenkins 工作的工作描述中使用 HTML
【发布时间】:2016-11-24 11:46:47
【问题描述】:

我正在将一些 Jenkins 作业从当前的手动配置迁移到 DSL 代码。其中一些作业的描述包含 HTML,但我找不到在种子作业中输入此 HTML 的方法,以便生成的作业包含相同的描述。在一个示例中,当前工作具有以下描述:

Multi-Platform Build <br/><br/>

Builds nightly but only if there has been SCM revisions against the application Core Trunk. <br/><br/>

This is being replaced by <a href="http://myjenkinsserver/view/application/job/application-new">application-multi-platform-new</a>

这会产生格式良好的职位描述,其中包含换行符和超链接。

当我从 DSL 脚本生成相同的作业时,我想复制它,但似乎没有办法做到这一点。

【问题讨论】:

    标签: html jenkins groovy jenkins-job-dsl


    【解决方案1】:

    只需要指定你需要的 html-tags 应该是可能的。你的输出是什么?

        description("""
    Multi-Platform Build <br/><br/>
    
    Builds nightly but only if there has been SCM revisions against the application Core Trunk. <br/><br/>
    
    This is being replaced by <a href="http://myjenkinsserver/view/application/job/application-new">application-multi-platform-new</a>
        """)
    

    【讨论】:

    • 好的,我之前确实尝试过,但是就像我的 DSL 脚本中的其他所有内容一样,我的描述包含在 ('Multi...') 中,而不是您指定的三组双引号中,这作品。谢谢!不知道为什么这是必需的,也没有在任何地方看到它。
    • 也许您需要扩展? 3 """ 或 3 ''' 仅表示多行。而 ' 你不会得到变量扩展。使用 " 你会得到变量扩展。不确定这是否是问题所在。无论如何,它工作得很好,你也可以缩进字符串然后你 stripMargin()
    • 这就是我认为的问题,因为一旦我将它改回它之前的状态,但按照你的方式工作 - 再次感谢。
    【解决方案2】:

    我已设法找到解决方法,但我更愿意直接这样做。

    可以使用下面的sn-p:

    job('multi-platform-build') {
        description(readFileFromWorkspace('description.html'))
    }
    

    这允许您拥有一个单独的文件作为种子作业的工作空间,该文件被调用以提供描述。

    这可行,但远非理想,因为这意味着配置存储在两个不同的位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-18
      • 1970-01-01
      • 1970-01-01
      • 2023-01-27
      • 1970-01-01
      • 2017-07-19
      • 2015-05-02
      • 1970-01-01
      相关资源
      最近更新 更多