jenkins管道不能远程构建

jenkins管道不能远程构建,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,我正试图通过管道建立一个工作到我的另一个奴隶主 管道是这样的 pipeline { agent { label "virtual" } stages { stage("test one") { steps { echo " test test test" } } stage("test two") { st

我正试图通过管道建立一个工作到我的另一个奴隶主

管道是这样的

pipeline {
    agent {
        label "virtual"
    }
    stages {
        stage("test one") {
            steps {
                echo " test test test"
            }
        }
        stage("test two") {
            steps {
                echo " testttttttttt "
            }
        }
    }
}
他们没有收到错误,但它没有建立在我的从属服务器上, 但当我在自由式作业上运行时,通过限制这个项目可以在何处使用该标签运行,然后通过echo测试执行sheel 它建立在我的从属服务器上, 我的管道出了什么问题?我错过什么了吗

建成后

Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] node
Running on virtual in /home/virtual/jenkins/workspace/demoo
[Pipeline] {
[Pipeline] stage
[Pipeline] { (test one)
[Pipeline] echo
 test test test
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (test two)
[Pipeline] echo
 testttttttttt 
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline

在远程根目录黄色列中添加所需的路径,如下所示:-


构建工作就像您已经完成的一样。这些步骤将在从机上执行。如果在步骤中添加类似克隆存储库的内容,将创建工作区目录

管道作业和自由式作业在这里的工作方式不同。Freestylejob将在第一次运行时立即在工作区中创建目录。Pipelinejob将在需要该目录时立即创建该目录

我创建了一个简单的管道:

pipeline {
    agent {
        label "linux"
    }
    stages {
        stage("test one") {
            steps {
                sh "echo 'test test test' > text.txt"
            }
        }
    }
}
我将您的echo转换为sh命令,因为我的从机是linux从机。sh步骤创建一个text.txt文件。运行此作业后,将立即创建目录:

[<user>@<server> test-pipeline]$ pwd
/var/lib/jenkins/workspace/test-pipeline
[<user>@<server> test-pipeline]$ ls -l
total 4
-rw-r----- 1 <user> <group> 15 Oct  7 16:49 text.txt

您能同时提供日志吗?它在您提到的标签上运行:-在必须在节点配置中定义的/home/virtual/jenkins/workspace/demoworkspace位置上运行:-请遵循此url:-在节点配置中提供一些路径:-远程根目录,然后build将自动创建工作空间是的,我以前做过,在运行pipeline之前我已经设置好了节点,但我不知道,为什么它不在该目录下?如果我们在dev上构建并部署每个提交,会怎么样?对不起,我想我还没有理解你的问题。但我想我现在明白了。你的代码是工作,我应该使用哪个菜单来检查提交?池scm?或者定期构建??我每分钟都尝试使用一次池scm,但在我更改github后没有生成。如果您想在scm上的每次提交上启动生成,您必须将管道代码添加到类似github的scm中。然后,您可以从SCM中选择管道脚本并选择一个分支,每当有人向该分支提交某些内容时,您的作业就会运行。