我正在使用Jenkins和Git插件,它提供以下环境变量:
GIT_COMMIT:当前的SHA
GIT_BRANCH:当前正在使用的分支的名称,例如"master"或"origin/foo"
GIT_PREVIOUS_COMMIT:来自同一分支的先前构建的提交的SHA(分支中第一个构建的当前SHA)
GIT_URL:存储库远程URL
GIT_URL_N:存在多个远程URL时的存储库远程URL,例如GIT_URL_1,GIT_URL_2
GIT_AUTHOR_EMAIL:提交者/作者电子邮件
GIT_COMMITTER_EMAIL:提交者/作者电子邮件
使用版本号插件,我有一个${GIT_COMMIT}
按预期读取的变量.
问题是,它是完整的32(?)字符SHA哈希.我想把它的一个子串.有没有办法在Jenkins中获取环境变量的子字符串?
在bash中(我假设这是你用它标记问题后你想知道的),你可以使用这个语法来做到这一点: ${string:start_position:length}
您可以通过编写以下内容来提取例如哈希的前8个字符:
${GIT_COMMIT:0:8}
我从这里采取了这个解决方案:http://tldp.org/LDP/abs/html/string-manipulation.htm