(我知道这个问题有点超出堆栈溢出的范围,因为包含更多的问题并且有些模糊。欢迎以正确的方式提出建议。)
我有一些相互依赖的开源项目。代码位于 github 中,构建发生在可交付中,使用 docker 镜像,这些镜像又构建在 docker hub 上。我已经建立了一个工件存储库和一个 debian 存储库,其中可交付的构建放置了包,而 docker 构建使用它们。就可交付成果而言,构建链如下所示:
- 前 zenta 泊坞窗图像
- zenta docker image(docker build 的两个步骤,否则会超时)
- zenta Debian 软件包
- zenta-tools 泊坞窗图像
- zenta-tools Debian 软件包
- xslt 泊坞窗图像
- adadocs 工件
目前,我通过推送到 github 来触发构建,有时在 docker build 运行后重新运行失败的构建。
我正在寻找以下问题的解决方案:
将 Dockerfile 放在哪里?现在它们位于需要生成的 docker 映像进行构建的包的存储库中。这样,构建包的所有信息都在一个地方,但有时我必须触发额外的构建才能真正构建包。
如何自动触发构建?
...,以某种方式支持 git-flow?例如,如果我更改 zenta 开发分支中的代码,我想确保 zenta-tools 在与 master 合并之前使用它的开发版本构建和测试。
是否有一个工具可以让我概览整个构建链的运行状况?