存储库中没有Jenkins文件的Jenkins声明管道

Rac*_*wal 4 jenkins jenkins-pipeline jenkins-declarative-pipeline

我正在尝试升级我当前的回归基础设施以使用管道插件,我意识到有两种方法:scripted pipelinedeclarative pipeline.通过多篇文章,我意识到这declarative pipeline是更具前瞻性和更强大的功能,因此我倾向于使用它.但似乎有以下限制,我不希望在我的设置中:

  1. jenkinsfile需求是在库中.我不想让我jenkinsfile留在代码库中.

  2. 由于jenkinsfile需要在SCM中.这是否意味着我无法测试文件中的任何修改,直到我检查到存储库.

上述任何细节都非常有用.

Ste*_*ing 6

声明性管道被编译为脚本化管道,因此绝对不会消失.但声明性的更容易处理,所以对你来说都很好.

您不必检查Jenkinsfile进入VCS.您还可以设置Pipeline类型的作业并在那里定义它.但这有通常的缺点,如没有历史等.

使用多分支管道时,即每个包含Jenkinsfile生成自己的作业的分支,只需将已更改的管道推送到新分支并执行即可.完成后,将其合并.

这种方法肯定会增加一些反馈周期,但它只是采用与编写软件时相同的原则.对于实验,只需设置一个Pipeline类型的作业并进行游戏.然后,将其提交到分支,测试,审核,合并.