[请教] 配置 Jenkins 使用的是 pipeline script from scm,如何获取这个仓库里面的 shell 脚本地址
資深大佬 : lesteryou 1
前提
- 公司有很多项目,最近都打算配置 Jenkins 自动化,但是很多人对这不熟悉,我就计划 把这些 Jenkinsfile 统一管理,新建一个 git 仓库,不同的项目不同的路径去创建 Jenkinsfile,公共部分提取出来,方便维护。
- Jenkins 里面的 job 配置是 pipeline script from scm,然后选择对应的脚本路径。
- 实际运行也没什么问题,console 那边,是先拉取 Jenkinsfile 仓库到一个以 [email protected] 命名的路径,我需要执行的 shell 命令,以及一些需要引入模块的 groovy 文件也在里面。
- 在当前项目对应的 Jenkinsfile 里面通过 load,引入公共模块的 groovy 是没问题的。
- lib //类库 - pipeline - module //模块 qywechat-notice ... - shell // shell 脚本 notice.sh - src // 各项目的 Jenkinsfile 文件
问题
- 但是 我需要执行其中的 shell 命令的时候,无法执行了,我进到 Jenkins 服务器,发现 shell 文件的地址是在 [email protected] 下面,而 jenkins 的环境变量 env.WORKSPACE 是 project_name,而这路径也不能硬编码,写死,所以有没有什么方式可以获取到 shell 文件的真实路径。
大佬有話說 (3)