今天介绍一个插件 extensible-choice-parameter-plugin

扩展的选项 参数

    1. 支持 使用多行文本提供选项的 参数。类似 jenkins 自带的Choice参数
      Textarea Choice Parameter: writes choices in a textarea, just like a built-in Choice parameter.
    2. 执行groovy脚本,返回选项 列表的 参数。
    System Groovy Script Choice Parameter: runs a System Groovy script to determine the list of choices
    3. 支持 列出某个目录下所有文件作为选项的参数。
        File Choice Parameter: lists files in a directory.
    4. Editable。 勾选这个,可以 构建完成之后 把你手动编辑的那个选项 值 添加 到 job的配置中。这个只能在 非流水线job中 工作正常。

我自己魔改的

    1. 添加 流水线支持。  extensibleChoice
    2. 删除了 全局 配置的 GlobalTextareaChoiceListEntry 和  GlobalTextareaChoiceListProvider
    我认为全局 配置的 没啥 屌用。
    3. 这个用的 不是很多,最多  用来 替换 自带的 那个 choice 参数。
    4、 可能自由风格中用的多一些,配合 那个 Editable 来使用

https://github.com/mamh-java/extensible-choice-parameter-plugin/tree/extensible-choice-parameter-1.7.1-for-jenkins-2.249.3

这个设计比较好的 地方是 不同类型的 参数 使用 不同的 provider 来实现。
xxxxParameterDefinition 只会定义一个