[Git][cmucl/cmucl][master] 2 commits: Refactor CI into stages
Raymond Toy
gitlab at common-lisp.net
Sat Sep 5 20:38:04 UTC 2020
Raymond Toy pushed to branch master at cmucl / cmucl
Commits:
616b30dc by Raymond Toy at 2020-09-05T20:37:58+00:00
Refactor CI into stages
Refactor CI into 4 stages: install, build, test, benchmark
- - - - -
932884a4 by Raymond Toy at 2020-09-05T20:37:58+00:00
Merge branch 'rtoy-refactor-ci-config' into 'master'
Refactor CI in to multiple stages
See merge request cmucl/cmucl!56
- - - - -
1 changed file:
- .gitlab-ci.yml
Changes:
=====================================
.gitlab-ci.yml
=====================================
@@ -3,54 +3,143 @@ variables:
version: "2020-04-x86"
bootstrap: ""
-linux-runner:
- artifacts:
- paths:
- - ansi-test/test.out
- - benchmarks/cl-bench/results
+stages:
+ - install
+ - build
+ - test
+ - benchmark
+
+cache:
+
+
+linux:install:
+ stage: install
tags:
- linux
- before_script:
- - git clone https://gitlab.common-lisp.net/ansi-test/ansi-test.git
- - (cd ansi-test; git checkout rtoy-cmucl-expected-failures)
+ artifacts:
+ paths:
+ - snapshot/
+ script:
- wget -nv $download_url/cmucl-$version-linux.tar.bz2
- wget -nv $download_url/cmucl-$version-linux.extra.tar.bz2
- mkdir snapshot
- (cd snapshot; tar xjf ../cmucl-$version-linux.tar.bz2; tar xjf ../cmucl-$version-linux.extra.tar.bz2)
+
+linux:build:
+ stage: build
+ tags:
+ - linux
+ artifacts:
+ paths:
+ - dist/
+ needs:
+ - job: linux:install
+ artifacts: true
script:
- bin/build.sh $bootstrap -R -C "" -o snapshot/bin/lisp
- bin/make-dist.sh -I dist linux-4
+
+linux:test:
+ stage: test
+ tags:
+ - linux
+ artifacts:
+ paths:
+ - ansi-test/test.out
+ - test.log
+ needs:
+ # Needs artifacts from build (dist/)
+ - job: linux:build
+ artifacts: true
+ before_script:
+ - git clone https://gitlab.common-lisp.net/ansi-test/ansi-test.git
+ - (cd ansi-test; git checkout rtoy-cmucl-expected-failures)
+ script:
- bin/run-tests.sh -l dist/bin/lisp 2>&1 | tee test.log
- cd ansi-test
- make LISP="../dist/bin/lisp -batch -noinit -nositeinit"
- grep 'No unexpected \(successes\|failures\)' test.out
- - cd ../benchmarks/cl-bench
+
+linux:benchmark:
+ stage: benchmark
+ tags:
+ - linux
+ artifacts:
+ paths:
+ - benchmarks/cl-bench/results
+ needs:
+ # Needs artifacts from install (snapshot/) and build (dist/)
+ - job: linux:install
+ artifacts: true
+ - job: linux:build
+ script:
+ - cd benchmarks/cl-bench
- mkdir tmp
- CMUCL=../../snapshot/bin/lisp ./run-cmucl.sh
- CMUCL=../../dist/bin/lisp ./run-cmucl.sh
- ../../snapshot/bin/lisp -load report
-osx-runner:
- artifacts:
- paths:
- - ansi-test/test.out
- - benchmarks/cl-bench/results
+osx:install:
+ stage: install
tags:
- osx
- before_script:
- - git clone https://gitlab.common-lisp.net/ansi-test/ansi-test.git
- - (cd ansi-test; git checkout rtoy-cmucl-expected-failures)
+ artifacts:
+ paths:
+ - snapshot/
+ script:
- curl -s -o cmucl-$version-darwin.tar.bz2 $download_url/cmucl-$version-darwin.tar.bz2
- mkdir snapshot
- (cd snapshot; tar xjf ../cmucl-$version-darwin.tar.bz2)
+
+osx:build:
+ stage: build
+ tags:
+ - osx
+ artifacts:
+ paths:
+ - dist/
+ needs:
+ - job: osx:install
+ artifacts: true
script:
- bin/build.sh $bootstrap -R -C "" -o snapshot/bin/lisp
- bin/make-dist.sh -I dist darwin-4
+
+osx:test:
+ stage: test
+ tags:
+ - osx
+ artifacts:
+ paths:
+ - ansi-test/test.out
+ - test.log
+ needs:
+ # Needs artifacts from build (dist/)
+ - job: osx:build
+ artifacts: true
+ before_script:
+ - git clone https://gitlab.common-lisp.net/ansi-test/ansi-test.git
+ - (cd ansi-test; git checkout rtoy-cmucl-expected-failures)
+ script:
- bin/run-tests.sh -l dist/bin/lisp 2>&1 | tee test.log
- cd ansi-test
- make LISP="../dist/bin/lisp -batch -noinit -nositeinit"
- grep 'No unexpected \(successes\|failures\)' test.out
- - cd ../benchmarks/cl-bench
+
+osx:benchmark:
+ stage: benchmark
+ tags:
+ - osx
+ artifacts:
+ paths:
+ - benchmarks/cl-bench/results
+ needs:
+ # Needs artifacts from install (snapshot/) and build (dist/)
+ - job: osx:install
+ artifacts: true
+ - job: osx:build
+ script:
+ - cd benchmarks/cl-bench
- mkdir tmp
- CMUCL=../../snapshot/bin/lisp ./run-cmucl.sh
- CMUCL=../../dist/bin/lisp ./run-cmucl.sh
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/09c8327acd74339e938f3fcb15da61e44df6d7d1...932884a4b406572614a9830bf864738a0c3a5700
--
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/09c8327acd74339e938f3fcb15da61e44df6d7d1...932884a4b406572614a9830bf864738a0c3a5700
You're receiving this email because of your account on gitlab.common-lisp.net.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20200905/8b428555/attachment-0001.htm>
More information about the cmucl-cvs
mailing list