jenkins管道插件可以从自定义位置选择jenkinsfile并启动构建吗?
我不想将jenkinsfile保留在源代码中。如果源代码有任何变化。应该选择自定义位置的jenkinsfile并开始构建。
例:/家庭/测试/ jenkinsfile
答案 0 :(得分:8)
只要用户有权读取位置,您当然可以尝试放置自定义位置(我不明白为什么不能)。
如果它是多分支管道,而不是no。因为索引是基于Jenkinsfile
的存在(只有包含Jenkinsfile
的分支被编入索引)
在您的存储库中拥有构建逻辑背后的想法是,这是与源一起控制源。当您更改源中的某些内容并且这会影响您的构建时,构建该特定提交将具有所有逻辑。如果将其移到存储库外部,则构建逻辑和存储库很可能不同步。
修改强>
您可以通过添加将加载其他文件的Jenkinsfile
来解决此问题
Jenkinsfile:
load "/home/test/Jenkinsfile"
但据我所知,导演与工作区有关。因此,如果您有相对于作业工作区运行的任何dir("path/to/other/dir"){..}
,这会使您的静态Jenkinsfile
非常难以阅读。
答案 1 :(得分:1)
我认为有办法。
Build Configuration
部分Jenkinsfile
的名称更改为Jenkinsfile.other
我没有尝试创建一个克隆的詹金斯乔布斯,并尝试编辑它以使其始终可用。