如何解决Maven 依赖缓存不适用于 Gitlab Runner
我在这上面花了很多时间,但它似乎不起作用。尝试过多个项目。
我们自己托管由 Gitlab (SaaS) 管理的 gitlab 运行程序(通过 EKS 在我们的 AWS 上)。我希望它缓存 maven 依赖项。
当我根据参考示例进行配置时: https://gitlab.com/gitlab-org/gitlab-ci-yml/blob/master/Maven.gitlab-ci.yml ,它仍然每次都下载所有依赖项。
stages:
- test
- pack
image: maven:3.6.1-jdk-8
variables:
MAVEN_OPTS: "-Dhttps.protocols=TLSv1.2 -Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository -Dorg.slf4j.simpleLogger.showDateTime=true -Djava.awt.headless=true"
MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version -DinstallAtEnd=true -DdeployAtEnd=true"
cache:
paths:
- .m2/repository
stylecheck_and_test:
stage: test
only:
- tags
- schedulers
- web
- triggers
- branches
script:
- mvn $MAVEN_CLI_OPTS install -Dmaven.test.skip=true
- mvn $MAVEN_CLI_OPTS clean test
解决方法
看起来本地 repo 和缓存路径不匹配,试试这个。
stages:
- test
- pack
image: maven:3.6.1-jdk-8
variables:
MAVEN_OPTS: "-Dhttps.protocols=TLSv1.2 -Dmaven.repo.local=maven.repository -Dorg.slf4j.simpleLogger.showDateTime=true -Djava.awt.headless=true"
MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version -DinstallAtEnd=true -DdeployAtEnd=true"
cache:
paths:
- maven.repository/
stylecheck_and_test:
stage: test
only:
- tags
- schedulers
- web
- triggers
- branches
script:
- mvn $MAVEN_CLI_OPTS install -Dmaven.test.skip=true
- mvn $MAVEN_CLI_OPTS clean test
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。