zking2000 / NotePad

1 stars 0 forks source link

Temp #25

Closed zking2000 closed 3 months ago

zking2000 commented 4 months ago

要在条件不满足时隐藏ROLLBACK_PARAM这个参数名,你可以修改Groovy脚本来动态生成整个HTML元素而不是仅仅更新表格的内容。以下是修改后的Groovy脚本示例:

def html_to_be_rendered = ""

if (ACTION == "rollback") {
    html_to_be_rendered = """
    <table>
        <tr>
            <td>
                <input style="color:red;border:none;width:220px" readonly type="text" class="" name="cert_name" value="cert_name">
            </td>
            <td style="width:180px">
                <input name="value" type="text" class="" value="">
            </td>
        </tr>
    </table>
    """
} else {
    html_to_be_rendered = "" // 为空时隐藏整个参数名及输入框
}

return "${html_to_be_rendered}"

这个脚本会根据ACTION的值动态生成HTML内容,如果ACTION不是rollback,则html_to_be_rendered为空字符串,从而隐藏ROLLBACK_PARAM参数名和输入框。

请将上述代码替换到你当前的Groovy脚本中,并保存配置。这将会根据条件动态显示或隐藏ROLLBACK_PARAM参数。

zking2000 commented 4 months ago

为了实现当条件不满足时完全隐藏ROLLBACK_PARAM,包括参数名在内,可以使用Jenkins的Active Choices插件来动态地显示或隐藏参数。

以下是更新后的Groovy脚本,确保当ACTION不为rollback时不会显示ROLLBACK_PARAM参数:

  1. 确保你的参数设置如下:
    • Name: ROLLBACK_PARAM
    • Script 选择 Groovy Script
    • Groovy Script字段中输入以下代码:
if (ACTION == "rollback") {
    return [
        """<input style="color:red;border:none;width:220px" readonly type="text" class="" name="cert_name" value="cert_name">"""
    ]
} else {
    return []
}
  1. Use Groovy Sandbox 前打勾以确保脚本在沙箱中运行。

这个脚本的逻辑是当ACTIONrollback时,会返回HTML输入框的内容;否则,返回一个空的列表,这样ROLLBACK_PARAM参数将完全不显示。

请按以下步骤确保参数在不需要时被隐藏:

这样配置之后,当条件不满足时,整个ROLLBACK_PARAM参数将完全隐藏,包括参数名在内。