我有下面的GitLab yml文件,我已经分阶段编写了它,假设每个阶段都会保留依赖关系,但似乎情况并非如此!
# This file is a template, and might need editing before it works on your project.
# Official Java image. Look for the different tagged releases at
# https://hub.docker.com/r/library/java/tags/ . A Java image is not required
# but an image with a JVM speeds up the build a bit.
image: java:8
variables:
FILE_TARGET_PATH: $FILE_TARGET_PATH
stages:
- test
- run
cache:
key: "$CI_BUILD_REF_NAME" # contains either the branch or the tag, so it's caching per branch
untracked: true
paths:
- "sbt-cache/.ivy.cache"
- "sbt-cache/.boot"
- "sbt-cache/.sbtboot"
- "sbt-cache/target"
before_script:
# Enable the usage of sources over https
- apt-get update -yqq
- apt-get install apt-transport-https -yqq
# Add keyserver for SBT
- echo "deb http://dl.bintray.com/sbt/debian /" | tee -a /etc/apt/sources.list.d/sbt.list
- apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2EE0EA64E40A89B84B2DF73499E82A75642AC823
# Install SBT
- apt-get update -yqq
- apt-get install sbt -yqq
Run unit Tests:
stage: test
tags:
- master
script:
# Execute your project's tests
- sbt -Denv=test clean test
Run Pipeline:
stage: run
tags:
- master
script:
# Execute the pipeline
- sbt -Denv=test run
如何缓存此多级设置中的依赖项?我的机器上有一个本地的跑步者在运行管道。文物会帮助我吗?