我有一个奇怪的情况,shell命令"sudo su“在Jenkins声明性管道中不能像预期的那样工作。下面是我的代码:
stages {
stage('Ansible-dynamichost-generation') {
steps {
ansiColor('xterm') {
sh 'chmod -R 777 /home/jenkins-slave/'
sh 'sudo su ansible'
sh '''#!/bin/bash -l
#Execute commands
echo "$WORKSPACE"
whoami
'''
}
}
}
}此管道由jenkins-slave用户运行。然而,我在管道中有一个shell命令,它应该切换到一个名为"ansible“的用户。但是,当执行“jenkins”命令时,它会返回"jenkins-slave“本身的输出。这里出了什么问题,有人能帮上忙吗?
发布于 2020-02-26 03:40:38
每个sh命令都是在sperate中执行的。最好编写一个sh并执行它将会工作的操作
https://stackoverflow.com/questions/60398497
复制相似问题