jenkinsci docker install-plugins.sh构建失败

时间:2019-09-28 00:32:54

标签: docker jenkins

我正在尝试使用本教程将https://github.com/jenkinsci/jenkinsfile-runner/blob/master/DOCKER.md中的原始Jenkins映像打包到Docker中。 一切正常,直到Dockerfile尝试从刚复制到其自己目录中的install-plugins.sh文件运行plugins.txt的最后一步之一开始。这是我在运行docker build时遇到的错误:

/usr/local/bin/install-plugins.sh: line 148: TEMP_ALREADY_INSTALLED: unbound variable
The command '/bin/sh -c /usr/local/bin/install-plugins.sh < /usr/share/jenkins/ref/plugins.txt' returned a non-zero code: 1

这是我的plugins.txt文件:

pipeline-model-definition:latest

只需一行。

我似乎无法找出可能解决此问题的方法。我尝试使用以下答案中的建议:https://github.com/jenkinsci/docker/issues/348,但命令行吐出了与上述完全相同的错误。感谢您的任何帮助。

1 个答案:

答案 0 :(得分:2)

该变量在plugins.sh中定义(已弃用,应替换为install-plugins.sh

# the war includes a # of plugins, to make the build efficient filter out
# the plugins so we dont install 2x - there about 17!
if [ -d "$JENKINS_HOME" ]
then
    TEMP_ALREADY_INSTALLED=$JENKINS_HOME/preinstalled.plugins.$$.txt
else
    echo "ERROR $JENKINS_HOME not found"
    exit 1
fi

但是它没有在install-plugins.sh中定义,仅在line 155中使用

在致电TEMP_ALREADY_INSTALLED之前,请先尝试设置install-plugins.sh,如上所示。