我们使用gitlab ci和共享运行器来进行持续集成.对于每个构建,运动员下载大量的maven工件.
有没有办法配置gitlab ci来缓存这些工件,这样我们可以通过阻止一遍又一遍地下载相同的工件来加快构建过程?
我的build.gradle情况如下:
group 'groupName'
version 'version'
apply plugin: 'java'
apply plugin: 'idea'
sourceCompatibility = 1.8
repositories {
. . .
}
dependencies {
. . .
testCompile group: 'junit', name: 'junit', version: '4.12'
}
Run Code Online (Sandbox Code Playgroud)
在./gradlew tasks我收到的时候
Verification tasks
------------------
check - Runs all checks.
test - Runs the unit tests.
Run Code Online (Sandbox Code Playgroud)
这两项任务有什么区别?输出与... ./gradlew check相同./gradlew test.
andrewgazelka $ ./gradlew check
> Task :compileJava
warning: Element `SHIFT_UP_THRESHOLD` is set to `UNDEFINED`. This may be ok for this …Run Code Online (Sandbox Code Playgroud) 我正在尝试在.gitlab-ci.yml(http://doc.gitlab.com/ce/ci/yaml/README.html#cache)中使用'cache' .我的gitlab版本是8.2.1,我的Runner是:
$ docker exec -it gitlab-runner gitlab-runner -v
gitlab-runner version 0.7.2 (998cf5d)
Run Code Online (Sandbox Code Playgroud)
所以根据文档,一切都是最新的,但我无法使用缓存;-(.我的所有文件都被删除.我做错了什么?
创建缓存存档,但不传递给下一个作业.
$ cat .gitlab-ci.yml
stages:
- createcache
- testcache
createcache:
type: createcache
cache:
untracked: true
paths:
- doc/
script:
- touch doc/cache.txt
testcache:
type: testcache
cache:
untracked: true
paths:
- doc/
script:
- find .
- ls doc/cache.txt
Run Code Online (Sandbox Code Playgroud)
Running on runner-141d90d4-project-2-concurrent-0 via 849d416b5994...
Fetching changes...
HEAD is now at 2ffbadb MUST BE REVERTED
[...]
$ touch doc/cache.txt
[...]
Archiving cache...
INFO[0000] Creating …Run Code Online (Sandbox Code Playgroud) 我在Gitlab CI上构建android并且每次下载依赖项都很烦人.我试过缓存:
$HOME/.gradle/
$HOME/.gradle/caches/
$GRADLE_HOME/caches/
$HOME/.m2/
.gradle/
build/
app/build/
Run Code Online (Sandbox Code Playgroud)
我的.gitlab-ci.yml的第26594次迭代就在这里.我已经在我的构建环境中安装了gradle,因为没有缓存gradlew每次下载它,这需要更多的时间.我用于建筑的图像就在这里.我的CI服务器启动脚本可以在这里找到.我假设,如果缓存有效,我将看不到每个构建下载的依赖项列表.
构建日志:
gitlab-ci-multi-runner 0.7.2(998cf5d)使用Docker执行器和图像android ...拉码头图像gitlab/gitlab-runner:build ...拉码头图像android:最新...警告:不能拉最新版本的图像android:最新:错误:图像库/ android:最新未找到警告:将使用本地找到的图像.
Running on runner-76acd9d3-project-74192-concurrent-0 via ff9200d4be41...
Fetching changes...
Removing .gradle/
Removing artifacts.upload.log
Removing rxfirebaseandroid/build/
HEAD is now at 7f151df djgfj
Checking out 7f151df2 as ci-gitlab...
HEAD is now at 7f151df... djgfj
Restoring cache...
$ gradle testDebug
Download https://jcenter.bintray.com/com/android/tools/build/gradle/1.3.0/gradle-1.3.0.pom
Download https://jcenter.bintray.com/com/android/tools/build/gradle-core/1.3.0/gradle-core-1.3.0.pom
Download https://jcenter.bintray.com/com/android/tools/build/builder/1.3.0/builder-1.3.0.pom
Download https://jcenter.bintray.com/com/android/tools/lint/lint/24.3.0/lint-24.3.0.pom
Download https://jcenter.bintray.com/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1.pom
Download https://jcenter.bintray.com/net/sf/proguard/proguard-parent/5.2.1/proguard-parent-5.2.1.pom
Download https://jcenter.bintray.com/com/android/tools/build/builder-model/1.3.0/builder-model-1.3.0.pom
Download https://jcenter.bintray.com/com/android/tools/build/builder-test-api/1.3.0/builder-test-api-1.3.0.pom
Download https://jcenter.bintray.com/com/android/tools/sdklib/24.3.0/sdklib-24.3.0.pom
Download https://jcenter.bintray.com/com/android/tools/sdk-common/24.3.0/sdk-common-24.3.0.pom
Download https://jcenter.bintray.com/com/android/tools/common/24.3.0/common-24.3.0.pom
Download …Run Code Online (Sandbox Code Playgroud)