Невозможно создать новый файл в Jenkins Pipeline - PullRequest
0 голосов
/ 29 января 2020

Я пытаюсь создать новый файл в Jenkins Pipeline, получаю сообщение об ошибке. ошибка: java .io.FileNotFoundException: /var/lib/jenkins/workspace/Pipeline-Groovy/test.txt (нет такого файла или каталога)

Но когда я выполняю команды ниже без конвейера, это создан новый файл

def newFile = new File("/var/lib/jenkins/workspace/test/test.txt")
newFile.append("hello\n")
println newFile.text

Если я использую тот же код в конвейере, ошибка выше 100 *

pipeline {

    agent any


    options {
        buildDiscarder(logRotator(numToKeepStr: '5'))

        timestamps()
    }
    stages {
        stage('Demo1-stage') {
            steps {
                deleteDir()
                    script {

                        def Jobname = "${JOB_NAME}"
                        echo Jobname
                    }
            }
        }
        stage('Demo-2stage') {
            steps {
                script {

                    def workspace = "${WORKSPACE}"
                    echo workspace
                    def newFile = new File("/var/lib/jenkins/workspace/Pipeline-Groovy/test.txt")
                    newFile.createNewFile() 
                    sh 'ls -lrt'
                    }
                }
            }
        }
    }

1 Ответ

1 голос
/ 29 января 2020

Похоже, вашей папки нет. Не указывайте абсолютный путь при создании файла, если это не является обязательным требованием. Я вижу, что в вашем случае вам нужен файл в рабочей области. Всегда используйте ${WORKSPACE}, чтобы получить текущий рабочий каталог.

def newFile = new File("${WORKSPACE}/test.txt")
newFile.createNewFile() 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...