gpt4 book ai didi

bash - Jenkins 管道 sh : command not found - are certain commands not available now?

转载 作者:行者123 更新时间:2023-11-29 09:29:34 25 4
gpt4 key购买 nike

我的 Jenkins 管道中有以下阶段:

stage('Update Android SDK') {
withEnv(['ANDROID_HOME=/Users/Shared/android-sdk-macosx',
'PATH=$ANDROID_HOME:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH'
]) {
sh 'echo y | android update sdk --no-ui --all --filter platform,tool,platform-tool,extra-android-m2repository'
}

这曾经完美地工作。但是,我刚刚更新到 Jenkins 2.44 和最新的 Pipeline 插件,从那时起,android 命令就不再运行了。这是来自 jenkins 日志的错误消息:

+ android update sdk --no-ui --all --filter platform,tool,platform-tool,extra-android-m2repository
/Users/Jenkins/.jenkins/workspace/d_release-3-0-3dummy.1gpbab-FJUYVCADYU5YVX7LNYATQTVORNDAKFSYICGSZRW4QXTUW5E2OMEQ@tmp/durable-f249f287/script.sh: line 2: android: command not found

而且不仅仅是 android。在我看来,某些安全设置已更改或发生其他情况,并且某些命令无法再通过 sh 管道命令运行。例如,echopwd 仍然有效,但 whichls 无效:

+ echo /Users/Shared/android-sdk-macosx
/Users/Shared/android-sdk-macosx

++ which android
/Users/Jenkins/.jenkins/workspace/d_rel/script.sh: line 2: which: command not found
+ echo
[Pipeline] sh
[d_rel] Running shell script
+ pwd
/Users/Jenkins/.jenkins/workspace/d_rel
[Pipeline] sh
[d_rel] Running shell script
+ ls -la /Users/Shared/
/Users/Jenkins/.jenkins/workspace/d_rel/script.sh: line 2: ls: command not found

(我已将上面代码段中的字符串 d_release-3-0-3dummy.1gpbab-FJUYVCADYU5YVX7LNYATQTVORNDAKFSYICGSZRW4QXTUW5E2OMEQ@tmp/durable-f249f287 替换为 d_rel 以提高可读性.)

发生了什么变化?如果现在某些命令被限制,我该怎么做才能使所有命令运行?

最佳答案

尝试结构如下:

withEnv(['ANDROID_HOME=/Users/Shared/android-sdk-macosx',]) {
withEnv(["PATH+ADK=${env.ANDROID_HOME}/tools:${env.ANDROID_HOME}/platform-tools"]) {
sh 'echo y | android update sdk --no-ui --all --filter platform,tool,platform-tool,extra-android-m2repository'
}
}

我不认为 $ANDROID_HOME 会以其他方式正确展开。一个example使用刚刚定义的变量在官方管道示例文档中。

PATH+XYZ 似乎是 suggested附加到 $PATH 的方法。

关于bash - Jenkins 管道 sh : command not found - are certain commands not available now?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42036463/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com