我是新来的管道插件。在我的环境中,我们设置了多个团队和多个jenkins实例。我喜欢这样的事实,管道的工作需要是‘顶级’。但是,我可以找到的大多数依赖于所有作业的示例都是在同一个jenkins实例上配置的。,如果我的工作在不同的机器上呢?
一个简单的web钩子卷曲会触发外部机器上的作业,但不会返回任何关于状态的反馈?
下面是我的示例管道配置:
echo 'start Pipeline'
stage 'Build'
build job: 'build'
stage 'Package tests'
build job: 'test' # <-- this is on another jenkins server
stage 'Deploy'
build job: 'deploy'发布于 2018-05-02 08:27:31
我没有得到令人满意的尝试答案,但是解决了这个问题,方法是进行更多的重新布线,将所有作业定义分阶段放到Jenkinsfile (没有build job ...)中,并在自己的容器中运行整个构建(每个步骤都有专门的容器)。
我认为这是我想要完成的更好的练习。我很高兴我的整个管道最终被简化了。
发布于 2016-10-10 13:27:57
在“测试”的作业配置中,您应该能够通过“限制该项目可以运行的位置”来设置作业所需的标签。然后,作业应该在具有相应匹配标签的Jenkins从站上自动运行。
如果要手动控制作业应该在哪个节点上运行,则必须使用NodeLabel参数插件。还请参阅此相关的回答如此或相关的詹金斯问题。
更新
如果您想在远程主(即不是从机)上触发作业,可以使用远程访问API或参数化远程触发插件。
https://stackoverflow.com/questions/39955175
复制相似问题