Skip to content

Commit b6fa4b2

Browse files
committed
wip: can we cache mix?
1 parent 99b4966 commit b6fa4b2

1 file changed

Lines changed: 57 additions & 29 deletions

File tree

build-aux/Jenkinsfile

Lines changed: 57 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -275,16 +275,26 @@ def generateNativeStage(platform) {
275275
sh 'echo "JAIL_HOST: ${JAIL_HOST}"'
276276
sh( script: "mkdir -p ${platform}/build", label: 'Create build directories' )
277277
sh( script: "tar -xf apache-couchdb-*.tar.gz -C ${platform}/build --strip-components=1", label: 'Unpack release' )
278-
dir( "${platform}/build" ) {
279-
sh "${configure(meta[platform])}"
280-
sh '$MAKE'
281-
retry (3) {sh '$MAKE eunit'}
282-
if (meta[platform].quickjs_test262) {retry(3) {sh 'make quickjs-test262'}}
283-
retry (3) {sh '$MAKE elixir'}
284-
retry (3) {sh '$MAKE elixir-search ERLANG_COOKIE=crumbles'}
285-
retry (3) {sh '$MAKE mango-test ERLANG_COOKIE=crumbles'}
286-
retry (3) {sh '$MAKE weatherreport-test'}
287-
retry (3) {sh '$MAKE nouveau-test'}
278+
cache(
279+
maxCacheSize: 250,
280+
defaultBranch: 'main',
281+
caches: [
282+
arbitraryFileCache(
283+
path: '_build',
284+
compressionMethod: 'TAR', // for binaries
285+
cacheValidityDecidingFile: 'mix.exs')
286+
]) {
287+
dir( "${platform}/build" ) {
288+
sh "${configure(meta[platform])}"
289+
sh '$MAKE'
290+
retry (3) {sh '$MAKE eunit'}
291+
if (meta[platform].quickjs_test262) {retry(3) {sh 'make quickjs-test262'}}
292+
retry (3) {sh '$MAKE elixir'}
293+
retry (3) {sh '$MAKE elixir-search ERLANG_COOKIE=crumbles'}
294+
retry (3) {sh '$MAKE mango-test ERLANG_COOKIE=crumbles'}
295+
retry (3) {sh '$MAKE weatherreport-test'}
296+
retry (3) {sh '$MAKE nouveau-test'}
297+
}
288298
}
289299
}
290300
}
@@ -410,17 +420,26 @@ def generateContainerStage(platform) {
410420
if (meta[platform].clouseau_java_home) {
411421
setClouseauJavaHome = "env CLOUSEAU_JAVA_HOME='${meta[platform].clouseau_java_home}' "
412422
}
413-
414-
dir( "${platform}/build" ) {
415-
sh "${configure(meta[platform])}"
416-
sh 'make'
417-
retry(3) {sh 'make eunit'}
418-
if (meta[platform].quickjs_test262) {retry(3) {sh 'make quickjs-test262'}}
419-
retry(3) {sh 'make elixir'}
420-
retry(3) {sh "${setClouseauJavaHome}timeout 5m make elixir-search ERLANG_COOKIE=crumbles"}
421-
retry(3) {sh "${setClouseauJavaHome}timeout 5m make mango-test ERLANG_COOKIE=crumbles"}
422-
retry(3) {sh 'make weatherreport-test'}
423-
retry(3) {sh 'make nouveau-test'}
423+
cache(
424+
maxCacheSize: 250,
425+
defaultBranch: 'main',
426+
caches: [
427+
arbitraryFileCache(
428+
path: '_build',
429+
compressionMethod: 'TAR', // for binaries
430+
cacheValidityDecidingFile: 'mix.exs')
431+
]) {
432+
dir( "${platform}/build" ) {
433+
sh "${configure(meta[platform])}"
434+
sh 'make'
435+
retry(3) {sh 'make eunit'}
436+
if (meta[platform].quickjs_test262) {retry(3) {sh 'make quickjs-test262'}}
437+
retry(3) {sh 'make elixir'}
438+
retry(3) {sh "${setClouseauJavaHome}timeout 5m make elixir-search ERLANG_COOKIE=crumbles"}
439+
retry(3) {sh "${setClouseauJavaHome}timeout 5m make mango-test ERLANG_COOKIE=crumbles"}
440+
retry(3) {sh 'make weatherreport-test'}
441+
retry(3) {sh 'make nouveau-test'}
442+
}
424443
}
425444
}
426445
catch (err) {
@@ -498,7 +517,6 @@ pipeline {
498517
}
499518

500519
stages {
501-
502520
stage('Setup Env') {
503521
agent {
504522
docker {
@@ -612,13 +630,23 @@ pipeline {
612630
}
613631
}
614632
steps {
615-
sh '''
616-
rm -rf apache-couchdb-*
617-
./configure --skip-deps --spidermonkey-version 78
618-
make erlfmt-check
619-
make elixir-source-checks
620-
make python-black
621-
'''
633+
cache(
634+
maxCacheSize: 250,
635+
defaultBranch: 'main',
636+
caches: [
637+
arbitraryFileCache(
638+
path: '_build',
639+
compressionMethod: 'TAR', // for binaries
640+
cacheValidityDecidingFile: 'mix.exs')
641+
]) {
642+
sh '''
643+
rm -rf apache-couchdb-*
644+
./configure --skip-deps --spidermonkey-version 78
645+
make erlfmt-check
646+
make elixir-source-checks
647+
make python-black
648+
'''
649+
}
622650
}
623651
post {
624652
cleanup {

0 commit comments

Comments
 (0)