diff options
-rw-r--r-- | .gitlab-ci.yml | 67 |
1 files changed, 22 insertions, 45 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a5e3c46d22..0c287fd6d2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -509,7 +509,7 @@ release-x86_64-freebsd: ################################# validate-x86_64-darwin: - extends: .validate + extends: .validate-hadrian stage: full-build tags: - x86_64-darwin-m1 @@ -536,7 +536,9 @@ validate-x86_64-darwin: LANG: "en_US.UTF-8" # WARNING: this is overridden in the shell.nix, see shell.nix! CONFIGURE_ARGS: "--with-intree-gmp" - TEST_ENV: "x86_64-darwin" + HADRIAN_ARGS: "--docs=no-sphinx" + TEST_ENV: "x86_64-darwin-hadrian" + BIN_DIST_NAME: "ghc-amd64-apple-darwin" BUILD_FLAVOUR: "validate" # Due to #19025 IGNORE_PERF_FAILURES: "all" @@ -556,9 +558,9 @@ validate-x86_64-darwin: --pure \ --keep GHC_VERSION --keep CABAL_INSTALL_VERSION --keep BUILD_FLAVOUR \ --keep BIN_DIST_PREP_TAR_COMP --keep CPUS --keep PROJECT_DIR \ - --keep CI_PROJECT_DIR --keep MAKE_ARGS \ - --keep LANG --keep CONFIGURE_ARGS \ - --keep MACOSX_DEPLOYMENT_TARGET --keep ac_cv_func_clock_gettime \ + --keep CI_PROJECT_DIR --keep MAKE_ARGS --keep HADRIAN_ARGS \ + --keep LANG --keep CONFIGURE_ARGS --keep TEST_ENV --keep BIN_DIST_NAME \ + --keep MACOSX_DEPLOYMENT_TARGET --keep ac_cv_func_clock_gettime --keep HACKAGE_INDEX_STATE \ --run "$1" 2>&1 } # fix up config.sub in libraries for the time. @@ -571,18 +573,20 @@ validate-x86_64-darwin: TIME_SETUP_DELTA=$(expr $TIME_SETUP - $TIME_START) echo "Setup took $TIME_SETUP_DELTA seconds" + runInNixShell "cabal update --index=$HACKAGE_INDEX_STATE" 2>&1 + runInNixShell ".gitlab/ci.sh configure" 2>&1 TIME_CONFIGURE=$(date +%s) TIME_CONFIGURE_DELTA=$(expr $TIME_CONFIGURE - $TIME_SETUP) echo "Configure took $TIME_CONFIGURE_DELTA seconds" - runInNixShell ".gitlab/ci.sh build_make" 2>&1 + runInNixShell ".gitlab/ci.sh build_hadrian" 2>&1 TIME_BUILD=$(date +%s) TIME_BUILD_DELTA=$(expr $TIME_BUILD - $TIME_CONFIGURE) echo "Build took $TIME_BUILD_DELTA seconds" set +e - runInNixShell ".gitlab/ci.sh test_make" 2>&1 + runInNixShell ".gitlab/ci.sh test_hadrian" 2>&1 status=$? set -e @@ -607,7 +611,7 @@ validate-x86_64-darwin: - toolchain validate-aarch64-darwin: - extends: .validate + extends: .validate-hadrian stage: full-build tags: - aarch64-darwin-m1 @@ -629,6 +633,9 @@ validate-aarch64-darwin: LANG: "en_US.UTF-8" # WARNING: this is overridden in the shell.nix, see shell.nix! CONFIGURE_ARGS: "--with-intree-gmp" + HADRIAN_ARGS: "--docs=no-sphinx" + BIN_DIST_NAME: "ghc-arm64-apple-darwin" + TEST_ENV: "aarch64-darwin-hadrian" # I wish we could just use the nix #! logic, but we can't --run and -i bash # behave very differently. -i bash does not pass any nix related env vars @@ -642,8 +649,9 @@ validate-aarch64-darwin: --pure \ --keep GHC_VERSION --keep CABAL_INSTALL_VERSION --keep BUILD_FLAVOUR \ --keep BIN_DIST_PREP_TAR_COMP --keep CPUS --keep PROJECT_DIR \ - --keep CI_PROJECT_DIR --keep MAKE_ARGS \ - --keep LANG --keep CONFIGURE_ARGS \ + --keep CI_PROJECT_DIR --keep MAKE_ARGS --keep HADRIAN_ARGS \ + --keep LANG --keep CONFIGURE_ARGS --keep TEST_ENV --keep BIN_DIST_NAME \ + --keep HACKAGE_INDEX_STATE \ --run "$1" 2>&1 } # fix up config.sub in libraries for the time. @@ -656,18 +664,20 @@ validate-aarch64-darwin: TIME_SETUP_DELTA=$(expr $TIME_SETUP - $TIME_START) echo "Setup took $TIME_SETUP_DELTA seconds" + runInNixShell "cabal update --index=$HACKAGE_INDEX_STATE" 2>&1 + runInNixShell ".gitlab/ci.sh configure" 2>&1 TIME_CONFIGURE=$(date +%s) TIME_CONFIGURE_DELTA=$(expr $TIME_CONFIGURE - $TIME_SETUP) echo "Setup took $TIME_CONFIGURE_DELTA seconds" - runInNixShell ".gitlab/ci.sh build_make" 2>&1 + runInNixShell ".gitlab/ci.sh build_hadrian" 2>&1 TIME_BUILD=$(date +%s) TIME_BUILD_DELTA=$(expr $TIME_BUILD - $TIME_CONFIGURE) echo "Build took $TIME_BUILD_DELTA seconds" set +e - runInNixShell ".gitlab/ci.sh test_make" 2>&1 + runInNixShell ".gitlab/ci.sh test_hadrian" 2>&1 status=$? set -e TIME_TEST=$(date +%s) @@ -690,39 +700,6 @@ validate-aarch64-darwin: - cabal-cache - toolchain -# Disabled because of OS X CI capacity -.validate-x86_64-darwin-hadrian: - stage: full-build - tags: - - x86_64-darwin - variables: - GHC_VERSION: 8.10.4 - MACOSX_DEPLOYMENT_TARGET: "10.7" - ac_cv_func_clock_gettime: "no" - LANG: "en_US.UTF-8" - CONFIGURE_ARGS: --with-intree-gmp - TEST_ENV: "x86_64-darwin-hadrian" - # Due to #19025 - IGNORE_PERF_FAILURES: "all" - BIN_DIST_NAME: "ghc-x86_64-apple-darwin" - BUILD_FLAVOUR: "validate" - script: - - .gitlab/ci.sh setup - - .gitlab/ci.sh configure - - .gitlab/ci.sh build_hadrian - - .gitlab/ci.sh test_hadrian - after_script: - - cp -Rf $HOME/.cabal cabal-cache - - .gitlab/ci.sh clean - artifacts: - when: always - expire_in: 2 week - reports: - junit: junit.xml - paths: - - "$BIN_DIST_NAME.tar.xz" - - junit.xml - .validate-linux: extends: .validate tags: |