我正在调用shell脚本来通过jenkins' Invoke Shell'来构建我的源代码。选项。我的命令如下:
export PATH=$PATH:/usr/bin/repo
cd /home/administrator/administrator/repo_sync
whoami
source ./build/envsetup.sh
choosecombo release project_int_factory eng
导致我得到以下错误。我已经完全允许文件夹。源代码位置是/ home / administrator / administrator / repo_sync。我尝试过 sudo chmod + x administrator & sudo chmod 777管理员但没有任何帮助。加上whoami返回 jenkins
Building in workspace /home/administrator/administrator/repo_sync
[repo_sync] $ /bin/sh -xe /tmp/hudson1461193343405073934.sh
+ export PATH=/usr/lib/jvm/java-6-openjdk-amd64/bin:/usr/lib/jvm/java-6-openjdk-amd64/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/var/lib/jenkins/lib:/usr/lib/jvm/java-6-openjdk-amd64/bin:/home/administrator/pawan/adt-bundle-linux-x86_64-20140702/sdk/tools:/home/administrator/pawan/adt-bundle-linux-x86_64-20140702/sdk/platform-tools:/usr/bin/repo
+ cd /home/administrator/administrator/repo_sync
+ whoami
jenkins
+ source ./build/envsetup.sh
/tmp/hudson1461193343405073934.sh: 5: /tmp/hudson1461193343405073934.sh: source: Permission denied
Build step 'Execute shell' marked build as failure
Finished: FAILURE
答案 0 :(得分:8)
Jenkins脚本(以及"执行Shell"构建步骤 脚本)与Jenkins运行的用户一起执行。默认情况下,Jenkins以jenkins
用户
您的脚本以" jenkins"执行。用户,从以下内容可以看出:
+ whoami
jenkins
您应该为chmod
用户执行jenkins
命令,而不是administrator
。
答案 1 :(得分:8)
正在运行bash command.sh
为我工作。
答案 2 :(得分:2)
将执行位添加到您的.sh文件
git add --chmod=+x "filename"