3

我使用标准 Helm chart在我的 Kubernetes 集群中部署了 GoCD ,它将其配置为使用Kubernetes 弹性代理插件并提供一个示例弹性配置文件,该配置文件使用 dockergocd-agent-docker-dind映像来提供 docker-in-docker 功能。

我想做的是让我的第一阶段在 repo 中构建 Dockerfile,然后让另一个阶段在先前构建的 docker 映像中执行单元测试并解析 JUnit XML 测试结果输出。我设法让构建和测试执行工作,但我在提取测试结果文件之后遇到了麻烦。

我在弹性代理的图像中运行如下 shell 命令:

docker run -v "/test-results:/test-results" \
    test-image:v${GO_PIPELINE_LABEL} \
    --junit-xml /test-results/results.xml

但运行后目录为空,表明在 docker-in-docker 情况下挂载卷存在问题。

以前有没有人尝试过完成类似的事情,或者您有任何解决方法的想法吗?

4

0 回答 0