问题描述
我试图用gradle创建我的战争神器,并将其推送到我的远程图像仓库中。但是问题是我得到了
copY Failed: stat /var/lib/docker/tmp/docker-builder756634785/build/libs/myartifact.war: no such file or directory.
所以,它无法触及我的神器
我如何指向正确的位置?
//gitlab-ci.yaml
stages:
- build
variables:
GRADLE_OPTS: "-Dorg.gradle.daemon=false"
GRADLE_OPTS: "-Dorg.gradle.caching=true"
build:
image: gradle:alpine
stage: build
script:
- ./gradlew clean build -i
docker_build:
image: docker:latest
stage: build
services:
- docker:dind
script:
- docker build --pull -t myrepo.io/myimage:latest .
- docker login myrepo.io -u username -p pass
- docker push myrepo.io/myimage:latest
解决方法
您需要导出在build
作业中生成的工件,然后您就可以在docker_build
作业中使用依赖项将其下载
在此文档中,您有很多有关如何处理它的示例https://docs.gitlab.com/ee/ci/yaml/#artifacts