jenkins权限在运行cd命令时被拒绝

时间:2018-09-13 01:53:12

标签: macos shell maven jenkins

我对macOS还是很陌生,我正在尝试通过Jenkins为Maven项目运行Shell脚本。

我只是不知道如何授予/更改权限,以便詹金斯甚至可以更改目录。

我要运行的命令:

   #!/bin/bash
   export JAVA_HOME=$(/usr/libexec/java_home)
   export M2_HOME=/usr/local/apache-maven/apache-maven-3.5.3
   export PATH=$PATH:/usr/local/apache-maven/apache-maven-3.5.3/bin
   cd /Users/User1/Documents/QA_Automation/Selenium/workspace/TestProject
   mvn clean install  -Dtest=IOSTDMobileTest -Dwebtest.browser=Chrome

我得到的输出:

  Building in workspace /Users/Shared/Jenkins/Home/workspace/Test job 2
 [Test job 2] $ /bin/bash 
 /Users/Shared/Jenkins/tmp/jenkins1874710180338230332.sh
 /Users/Shared/Jenkins/tmp/jenkins1874710180338230332.sh: line 7: cd: 
/Users/User1/Documents/QA_Automation/Selenium/workspace/TestProject:Permission denied

1 个答案:

答案 0 :(得分:0)

下一个任务我遇到了同样的问题:

cd /home/allex/NetBeansProjects/HelloWorld/
pwd
javac HelloWorld.java
java HelloWorld

执行该命令时,出现“像您一样的权限错误”,但是在我的交互式CLI中,访问目录没有问题。然后我意识到在Jenkins中执行命令的用户是“ jenkins”,他没有执行以下命令对该目录的访问权限:

ls -ld /home/allex/
drwxr-x---. 87 allex allex 4096 Nov 19 08:57 /home/allex/

您可以看到jenkins用户对该目录没有任何权限。然后,我要做的就是使用下一条命令将用户jenkins添加到allex组:

usermod -a -G allex jenkins

仅此而已。它正在工作。