jenkins构建执行shell 所有命令出现command not found
Posted Oops!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins构建执行shell 所有命令出现command not found相关的知识,希望对你有一定的参考价值。
出现的问题:
+ rsync -avzP /mnt/workspace/df-admin/ root@192.168.0.153:/home/deploy/deep_fashion_targets/web /tmp/jenkins5788277461826608.sh: line 2: rsync: command not found Build step \'Execute shell\' marked build as failure Finished: FAILURE
构建是执行shell echo $PATH 发现常规的PATH 没有输出 :
/var/lib/jenkins/tools/hudson.model.JDK/jdk1.8/bin:/var/lib/jenkins/tools/hudson.model.JDK/jdk1.8/bin:/usr/local/sbin:/usr/sbin:/usr/java/jdk1.8//bin:/usr/local/apache-maven-3.5.3/bin:/usr/java/jdk1.8//bin:/usr/local/apache-maven-3.5.3/bin
在环境变量 /etc/profile 里面 修改 PATH 路径
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:$JAVA_HOME/bin:$M2_HOME/bin
再在构建中执行shell echo $PATH , 有相应的输出
++ PATH=/home/nodeDev/node-v8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin
在构建的shell 前添加 #!/bin/bash -il 可正常执行
另外一种情况:如果 shell 本身不在构建后执行 就不能使用 #!/bin/bash -i1 的办法, 只能jenkins 系统里进行设置
如: 调用maven
构建的报错
配置如下:
进入系统-配置
保存后执行构建 可以正常调用jenkins服务器上相关的命令
参照文章如下:
问题:
解决方法:
http://www.geekcome.com/content-10-3868-1.html
1、控制台执行 echo $PATH
把输出的这句话复制
2、jenkins->系统管理->系统设置
勾选Environment variables,添加键值,键:PATH,值:刚才复制的那句话
以上是关于jenkins构建执行shell 所有命令出现command not found的主要内容,如果未能解决你的问题,请参考以下文章
Jenkins SSH 插件 - 根据任务(构建/发布)执行不同的 shell 脚本命令 - 环境变量
DevopsdockerCI/CD关于jenkins构建成功后一步,执行的shell命令详解