трубопровод Дженкинса не строить удаленно - PullRequest
0 голосов
/ 07 октября 2019

Я пытаюсь построить работу по конвейеру до моего другого ведомого устройства в мастере

конвейер похож на этот

pipeline {
    agent {
        label "virtual"
    }
    stages {
        stage("test one") {
            steps {
                echo " test test test"
            }
        }
        stage("test two") {
            steps {
                echo " testttttttttt "
            }
        }
    }
}

они синтаксис не получает ошибку, но это не таксборка на моем подчиненном сервере, но когда я запускаю работу по фристайлу с Restrict where this project can be run с этой меткой, а затем выполняю sheel с помощью эхо-теста «test test», он был построен на моем подчиненном сервере, что не так с моим конвейером? мне чего-то не хватает?

после сборки

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

Ответы [ 2 ]

2 голосов
/ 07 октября 2019

Добавьте нужный путь в Удаленный корневой каталог (желтый столбец), как показано ниже: -

enter image description here

1 голос
/ 07 октября 2019

Сборка работает так, как вы уже сделали. Шаги будут выполнены на подчиненном. Если вы добавите что-то вроде clone a repository к своему шагу, ваш каталог рабочей области будет создан.

Работа конвейера и Freestylejobs здесь работают по-разному. 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...