Skip to content
Snippets Groups Projects
Commit 5fb57236 authored by Zubin's avatar Zubin Committed by sheaf
Browse files

ci: test bootstrapping and use hadrian for source dists

parent bf046206
No related branches found
No related tags found
No related merge requests found
......@@ -1239,27 +1239,46 @@ doc-tarball:
source-tarball:
stage: packaging
needs: [validate-x86_64-linux-deb9-unreg-hadrian]
tags:
- x86_64-linux
image: "registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-deb10:$DOCKER_REV"
dependencies: []
rules:
- if: '$RELEASE_JOB == "yes"'
when: always
artifacts:
paths:
- ghc-*.tar.xz
- version
- hadrian-bootstrap-sources-*.tar.gz
script:
- python3 mk/get-win32-tarballs.py download all
- ./boot
- ./configure
- make sdist
- mv sdistprep/*.xz .
- make show! --quiet VALUE=ProjectVersion > version
- source version
- echo "$ProjectVersion" > version
- ./hadrian/build source-dist
- mv _build/source-dist/*.xz .
- python3 ./hadrian/bootstrap/bootstrap.py -w $GHC fetch -o hadrian-bootstrap-sources-$GHC_VERSION
test-bootstrap:
stage: packaging
needs: [source-tarball]
tags:
- x86_64-linux
image: "registry.gitlab.haskell.org/ghc/ci-images/x86_64-linux-deb10:$DOCKER_REV"
dependencies: [source-tarball]
script:
- mkdir test-bootstrap
- tar -xf ghc-*[0-9]-src.tar.xz -C test-bootstrap
- tar -xf ghc-*-testsuite.tar.xz -C test-bootstrap
- cp hadrian-bootstrap-sources-*.tar.gz test-bootstrap/ghc-*
- pushd test-bootstrap/ghc-*
- python3 ./hadrian/bootstrap/bootstrap.py -w $GHC --bootstrap-sources hadrian-bootstrap-sources-*.tar.gz
- export HADRIAN_PATH="$PWD/_build/bin/hadrian"
- .gitlab/ci.sh setup
- .gitlab/ci.sh configure
- .gitlab/ci.sh build_hadrian
- .gitlab/ci.sh test_hadrian
- popd
- rm -Rf test-bootstrap
variables:
TEST_ENV: "x86_64-linux-deb10-hadrian"
BIN_DIST_NAME: "ghc-x86_64-deb10-linux"
BUILD_FLAVOUR: "validate"
############################################################
......
......@@ -581,13 +581,16 @@ function run_hadrian() {
if [ -z "${BIGNUM_BACKEND:-}" ]; then BIGNUM_BACKEND="gmp"; fi
read -r -a args <<< "${HADRIAN_ARGS:-}"
if [ -n "${VERBOSE:-}" ]; then args+=("-V"); fi
run hadrian/build-cabal \
--flavour="$BUILD_FLAVOUR" \
-j"$cores" \
--broken-test="${BROKEN_TESTS:-}" \
--bignum=$BIGNUM_BACKEND \
"${args[@]+"${args[@]}"}" \
"$@"
# Before running the compiler, unset variables gitlab env vars as these
# can destabilise the performance test (see #20341)
(unset $(compgen -v | grep CI_*);
run "${HADRIAN_PATH:-hadrian/build-cabal}" \
--flavour="$BUILD_FLAVOUR" \
-j"$cores" \
--broken-test="${BROKEN_TESTS:-}" \
--bignum=$BIGNUM_BACKEND \
"${args[@]+"${args[@]}"}" \
"$@")
}
# A convenience function to allow debugging in the CI environment.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment