Jenkins执行shell脚本时要设置权限

目前出现了一个问题,当我独自用shell脚本执行启动springBoot时  就可以注册到eureka上

如果用jenkins执行shell脚本时 就会出现注册不上去的情况

2020-11-18 13:47:54.808  INFO 29482 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_XIANNANSHAN-USER/172.17.165.145:xiannanshan-user:8060: registering service...
2020-11-18 13:47:54.994  INFO 29482 --- [extShutdownHook] com.netflix.discovery.DiscoveryClient    : Shutting down DiscoveryClient ...
2020-11-18 13:47:55.050  INFO 29482 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_XIANNANSHAN-USER/172.17.165.145:xiannanshan-user:8060 - registration status: 204
2020-11-18 13:47:55.053  INFO 29482 --- [extShutdownHook] com.netflix.discovery.DiscoveryClient    : Unregistering ...
2020-11-18 13:47:55.246  INFO 29482 --- [extShutdownHook] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_XIANNANSHAN-USER/172.17.165.145:xiannanshan-user:8060 - deregister  status: 200
2020-11-18 13:47:55.273  INFO 29482 --- [extShutdownHook] com.netflix.discovery.DiscoveryClient    : Completed shut down of DiscoveryClient

聪明的我领悟到有可能是因为shell脚本没有权限执行文件  

在Jenkins执行shell脚本时:

于是在shell脚本前面加上sudo 提权执行

echo "开始执行maven打包"
mvn clean install package -Dmaven.test.skip=true
echo "maven打包完成"
echo "开始复制jar包"
pwd
cd /root/.jenkins/workspace/xiannanshan-parents/
sh xiannanshan-publish.sh backup user prod
sodo sh xiannanshan-publish.sh backup cloud-parent prod
find /root/.jenkins/workspace/xiannanshan-parents -name ‘*.jar‘ -exec cp {} /usr/local/xiannanshan/xiannanshan-parents/lib/ \;
sodo sh xiannanshan-publish.sh restart cloud-parent prod
sudo sh xiannanshan-publish.sh restart user prod

  

 

Jenkins执行shell脚本时要设置权限

上一篇:【技能】清理Mac内容空间,几步操作


下一篇:反弹shell常用命令及分析