我对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
答案 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
仅此而已。它正在工作。