与Skafold和Jib一起构建一个多模块maven项目



有可能用skaffold和jib-builder构建一个多模块的maven项目吗?

我的项目结构:

my-project-parent-module
- my-project-main-module
- my-project-lib-module

my-project-main-module包含Main类,并且配置了jib插件,并且依赖于my-project-lib-modulelib-module没有配置吊臂,因为不需要图像。

文档中有一个多模块skaffold的示例:

build:
artifacts:
- image: image1 # jib artifact
jib:
fromImage: image2
requires:
- image: image2
- image: image2 # base image artifact

但这是一个不同的场景,因为两个模块都会产生一个图像(通过jib(。

下面是我尝试过的一种滑板配置:

apiVersion: skaffold/v2beta29
kind: Config
metadata:
name: my-project
build:
local:
push: false
artifacts:
- image: my-image-name
context: ./
jib:
project: com.example:my-project-main-module
...

当您指定一个project:时,Skafold将调用以下内容:

mvn --projects com.example:my-project-main-module --also-make jib:build

这将从上下文目录中执行。--also-make使Maven根据需要重新构建任何依赖关系(如lib-module(。

请确保您可以独立于Skafold运行上面的命令行。检查您的lib-module是否作为<module>包含在顶级pom.xml中,以及您的main-module是否具有<dependency>lib-module

最新更新