Commit 966e93ea authored by Robert Goldman's avatar Robert Goldman
Browse files

Merge branch 'ci-tweaks' into 'master'

Various CI tweaks

See merge request asdf/asdf!154
parents e36c0653 6229c9a1
......@@ -158,17 +158,21 @@ request or sending a patch to the asdf-devel mailing list.
If you fork the repository on Gitlab, note that Gitlab CI is enabled to help in
automated testing. While not exhaustive, this can help make sure you don't
inadvertantly break anything with your patch! The tests will be run any time
you submit a merge request or manually trigger a run using Gitlab's UI. In
order for the tests to run properly (namely the ASDF upgrade tests), you must
ensure your fork contains the tags for every released version of ASDF. If your
fork is freshly created, this will happen automatically. However, if there has
been a release since you forked, you need to update your tags. Assuming that
your fork is the `origin` remote and upstream is the `upstream` remote, you can
do this by running:
you submit a merge request or manually trigger a run using Gitlab's UI.
If you would like to run ASDF's upgrade tests you need to first ensure your
fork contains the tags for every released version of ASDF. If your fork is
freshly created, this will happen automatically. However, if there has been a
release since you forked, you need to update your tags. Assuming that your fork
is the `origin` remote and upstream is the `upstream` remote, you can do this
by running:
git fetch upstream --tags
git push origin --tags
Then set the varialbe `RUN_UPGRADE_TESTS` on a pipeline.
If you would like to enable test jobs that use the Lisp scripting test harness,
set the variable `ENABLE_ASDF_TOOLS` on a pipeline.
......
......@@ -5,6 +5,14 @@
variables:
# Just let the runner fetch and update the submodules for us.
GIT_SUBMODULE_STRATEGY: normal
ABCL_IMAGE: clfoundation/abcl
ABCL_TAG: latest
CCL_IMAGE: clfoundation/ccl
CCL_TAG: latest
ECL_IMAGE: clfoundation/ecl
ECL_TAG: latest
SBCL_IMAGE: clfoundation/sbcl
SBCL_TAG: latest
# This causes pipelines to be created only on the default branch, tags, merge
......@@ -30,10 +38,8 @@ stages:
Build ASDF:
stage: build
image: debian:latest
image: buildpack-deps:latest
script:
- apt-get update
- apt-get install -y --no-install-recommends git make
- make
artifacts:
paths:
......@@ -41,10 +47,10 @@ Build ASDF:
Build docs:
stage: build
image: debian:latest
image: buildpack-deps:buster
script:
- apt-get update
- apt-get install -y --no-install-recommends git make texinfo texlive
- apt-get install -y --no-install-recommends texinfo texlive
- make -C doc
artifacts:
paths:
......@@ -54,10 +60,8 @@ Build docs:
Build asdf-tools:
stage: build
image: mitmers/sbcl:latest
image: $SBCL_IMAGE:$SBCL_TAG
script:
- apt-get update
- apt-get install -y --no-install-recommends git make
- make -f Makefile-lisp-scripting build-asdf-tools
artifacts:
paths:
......@@ -71,12 +75,7 @@ Build asdf-tools:
.Regression tests:
stage: regression
image: mitmers/$l:$TAG
variables:
TAG: latest
script:
- apt-get update
- apt-get install -y --no-install-recommends git make
- make
- make test
artifacts:
......@@ -86,12 +85,9 @@ Build asdf-tools:
.Upgrade tests:
stage: upgrade
image: mitmers/$l:$TAG
variables:
TAG: latest
script:
- apt-get update
- apt-get install -y --no-install-recommends git make
- make
- make test-upgrade
artifacts:
......@@ -99,6 +95,8 @@ Build asdf-tools:
- build/results/$l-upgrade.text
needs: []
allow_failure: true
rules:
- if: $RUN_UPGRADE_TESTS
.Scripting regression tests:
extends: .Regression tests
......@@ -116,7 +114,7 @@ Build asdf-tools:
needs:
- Build asdf-tools
rules:
- if: $ENABLE_ASDF_TOOLS
- if: $ENABLE_ASDF_TOOLS && $RUN_UPGRADE_TESTS
###############################################################################
# Actual test jobs - Makefile based harness
......@@ -124,41 +122,58 @@ Build asdf-tools:
ABCL regression tests:
extends: .Regression tests
image: $ABCL_IMAGE:$ABCL_TAG
variables:
l: abcl
allow_failure: true
# ABCL 1.8.0 has some issues that cause ASDF tests to fail. Remove this job
# when the above job starts to pass again.
ABCL 1.7.1 regression tests:
extends: .Regression tests
image: $ABCL_IMAGE:1.7.1-jdk8
variables:
l: abcl
ABCL upgrade tests:
extends: .Upgrade tests
image: $ABCL_IMAGE:$ABCL_TAG
variables:
l: abcl
CCL regression tests:
extends: .Regression tests
image: $CCL_IMAGE:$CCL_TAG
variables:
l: ccl
CCL upgrade tests:
extends: .Upgrade tests
image: $CCL_IMAGE:$CCL_TAG
variables:
l: ccl
ECL regression tests:
extends: .Regression tests
image: $ECL_IMAGE:$ECL_TAG
variables:
l: ecl
ECL upgrade tests:
extends: .Upgrade tests
image: $ECL_IMAGE:$ECL_TAG
variables:
l: ecl
SBCL regression tests:
extends: .Regression tests
image: $SBCL_IMAGE:$SBCL_TAG
variables:
l: sbcl
SBCL upgrade tests:
extends: .Upgrade tests
image: $SBCL_IMAGE:$SBCL_TAG
variables:
l: sbcl
......@@ -169,40 +184,48 @@ SBCL upgrade tests:
ABCL scripting regression tests:
extends: .Scripting regression tests
image: $ABCL_IMAGE:$ABCL_TAG
variables:
l: abcl
ABCL scripting upgrade tests:
extends: .Scripting upgrade tests
image: $ABCL_IMAGE:$ABCL_TAG
variables:
l: abcl
CCL scripting regression tests:
extends: .Scripting regression tests
image: $CCL_IMAGE:$CCL_TAG
variables:
l: ccl
CCL scripting upgrade tests:
extends: .Scripting upgrade tests
image: $CCL_IMAGE:$CCL_TAG
variables:
l: ccl
ECL scripting regression tests:
extends: .Scripting regression tests
image: $ECL_IMAGE:$ECL_TAG
variables:
l: ecl
ECL scripting upgrade tests:
extends: .Scripting upgrade tests
image: $ECL_IMAGE:$ECL_TAG
variables:
l: ecl
SBCL scripting regression tests:
extends: .Scripting regression tests
image: $SBCL_IMAGE:$SBCL_TAG
variables:
l: sbcl
SBCL scripting upgrade tests:
extends: .Scripting upgrade tests
image: $SBCL_IMAGE:$SBCL_TAG
variables:
l: sbcl
......@@ -541,8 +541,8 @@
(define-test
"multiple processes: proper exit sequence"
(let ((process-info1 (launch-program "./sleeper.sh 12 1"))
(process-info2 (launch-program "./sleeper.sh 12 2")))
(let ((process-info1 (launch-program "./sleeper.sh 12 3"))
(process-info2 (launch-program "./sleeper.sh 12 6")))
(handle-result "#1 alive?"
(process-alive-p process-info1))
(handle-result "#2 alive?"
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment