如何让Jenkins从远程根目录执行管道步骤?

问题描述 投票:0回答:1

我在詹金斯(Jenkins)中创建了一个简单的指导原则。我的代理程序的远程根目录设置为我的项目根路径。但是,当我测试构建过程中的位置时(例如,通过定义类似sh 'pwd'的步骤),我发现该目录的执行步骤是$WORKSPACE目录(/path_to_remote_root_directory_of_the_agent/workspace/jenkins_project_title)。这意味着,我不能只启动我通常从项目根文件夹运行的单元测试,例如sh 'vendor/bin/phpunit ./test/Unit'或其他任务。

我很确定,我只是配置不正确,并且在正常情况下,例如this的脚本>

pipeline {
    agent {
        label 'devvm-slave-01'
    }

    stages {
        stage('Prepare') {
            steps {
                sh 'composer install'
                ...
            }
        }
        ...
        stage('Checkstyle') {
            steps {
                sh 'vendor/bin/phpcs --report=checkstyle --report-file=`pwd`/build/logs/checkstyle.xml --standard=PSR2 --extensions=php --ignore=autoload.php --ignore=vendor/ . || exit 0'
                checkstyle pattern: 'build/logs/checkstyle.xml'
            }
        }
    }
}

按预期工作,没有任何粗略的路径解决方法。

我在做什么错,以及如何使其正常工作?

我在詹金斯(Jenkins)中创建了一个简单的小句我的代理的远程根目录设置为我的项目根路径。但是当我测试构建过程中的位置时(例如,通过定义类似sh'pwd'的步骤),我看到了...

jenkins path jenkins-pipeline filepath
1个回答
0
投票

从“ agent”一章“ Jenkins Handbook”的“ Pipeline Syntax”部分:

© www.soinside.com 2019 - 2024. All rights reserved.