【问题标题】:jenkins permission denied while running cd commandjenkins 权限在运行 cd 命令时被拒绝
【发布时间】:2018-09-13 01:53:12
【问题描述】:

我对 macOS 相当陌生,我正在尝试通过 Jenkins 为一个 Maven 项目运行一个 shell 脚本。

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

我正在尝试运行的命令:

   #!/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

【问题讨论】:

  • 那个目录存在吗?
  • 是的,该目录存在。当我从终端运行命令时,它可以工作并且 mvn 命令能够执行,因为该目录包含所需的 pom.xml 文件

标签: macos shell maven jenkins


【解决方案1】:

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

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

仅此而已。它正在工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-02
    • 1970-01-01
    • 1970-01-01
    • 2018-01-31
    • 1970-01-01
    • 2020-08-29
    • 2017-10-26
    • 2020-02-03
    相关资源
    最近更新 更多