【发布时间】:2018-01-24 20:40:17
【问题描述】:
假设我在 Nexus 中有一个名为“abc-1.0.war”的工件。 Jenkins 不断从 nexus 中提取最新的工件,例如“abc-1.2.war、abc-1.3.war 等”,并通过 jenkins 构建 Docker 镜像。
现在我想知道如何使用每次递增的最新版本定义 docker 标签并存储在 jenkins 中。例如:ankur/java:1.0, ankur/java:1.1 ?
我已经在 jenkins 中定义了执行 shell,它将工件值分隔为 2 部分 (f1:f2),以便我可以将这些变量值定义到标签中以确认版本,但它没有工作。
如果我可以定义更多技术,请告知
comp=$COMPONENT 回声 $COMPONENT VERSION='回声 $comp |剪切 -d ":" -f2 ARTIFACT-ID='echo $comp |剪切 -d ":" -f1
还可以在 jenkins 中为 Docker 执行 shell: 导出 Dockerfile=Dockerfile 导出 IMG=$(DTR)/$(REPO)/$(APP_COMPONENT):$(ENVIRONMENT)-$(VERSION)-$(APP_COMPONENT)
(注意:$COMPONENT,$DTR,$REPO,$APP_COMPONENT, $ENVIRONMENT 是 jenkins 中的字符串参数,我在构建时定义硬编码值”
【问题讨论】:
-
请在每行代码/数据/错误消息的前面使用4个空格或突出显示一个文本块并使用编辑框左上角的
{}格式工具格式化为code/data/output/errorMsgs。有关详细信息,请参阅 editing-help 和 formatting。祝你好运。