File tree Expand file tree Collapse file tree 6 files changed +968
-1
lines changed Expand file tree Collapse file tree 6 files changed +968
-1
lines changed Original file line number Diff line number Diff line change 1+ #! /bin/sh
2+
3+ set -eux
4+
5+ if [ -e " $HOME /.brew" ] ; then
6+ (
7+ cd " $HOME /.brew"
8+ git fetch --depth 1
9+ git reset --hard origin/master
10+ )
11+ else
12+ git clone --depth=1 https://github.com/Homebrew/brew " $HOME /.brew"
13+ fi
14+ export PATH=" $HOME /.brew/bin:$HOME /.brew/sbin:$PATH "
15+
16+ mkdir -p " $GITHUB_WORKSPACE /.brew_cache"
17+ export HOMEBREW_CACHE=" $GITHUB_WORKSPACE /.brew_cache"
18+ mkdir -p " $GITHUB_WORKSPACE /.brew_logs"
19+ export HOMEBREW_LOGS=" $GITHUB_WORKSPACE /.brew_logs"
20+ mkdir -p /private/tmp/.brew_tmp
21+ export HOMEBREW_TEMP=/private/tmp/.brew_tmp
22+
23+ # brew update
24+ brew install ${1+" $@ " }
25+
Original file line number Diff line number Diff line change 1+ #! /bin/bash
2+
3+ set -eux
4+
5+ uname -a
6+ uname -p
7+ uname
8+ pwd
9+ env
10+
11+ if [ " ${RUNNER_OS} " = Windows ] ; then
12+ ext=" .exe"
13+ else
14+ ext=" "
15+ fi
16+
17+ # build
18+ ghcup --no-verbose install ghc --set --install-targets " install_bin install_lib update_package_db" " ${GHC_VERSION} "
19+ sed -i.bak -e ' /DELETE MARKER FOR CI/,/END DELETE/d' cabal.project # see comment in cabal.project
20+ cabal update
21+ cabal user-config diff
22+ cabal user-config init -f
23+ " ghc-${GHC_VERSION} " --info
24+ " ghc" --info
25+
26+ # https://github.com/haskell/cabal/issues/7313#issuecomment-811851884
27+ if [ " $( getconf LONG_BIT) " == " 32" ] || [ " ${DISTRO} " == " CentOS" ] ; then
28+ echo ' constraints: lukko -ofd-locking' >> cabal.release.project.local
29+ fi
30+
31+ # shellcheck disable=SC2206
32+ args=(
33+ -w " ghc-$GHC_VERSION "
34+ --disable-profiling
35+ --enable-executable-stripping
36+ --project-file=cabal.release.project
37+ ${ADD_CABAL_ARGS}
38+ )
39+
40+ cabal v2-build " ${args[@]} " cabal-install
41+
42+ mkdir -p " out"
43+ # shellcheck disable=SC2154
44+ cp " $( cabal list-bin " ${args[@]} " cabal-install:exe:cabal) " " out/cabal$ext "
45+ cp dist-newstyle/cache/plan.json " out/plan.json"
46+ cd " out/"
47+
48+ # create tarball/zip
49+ TARBALL_PREFIX=" cabal-install-$( " ./cabal" --numeric-version) "
50+ case " ${TARBALL_EXT} " in
51+ zip)
52+ zip " ${TARBALL_PREFIX} -${ARTIFACT} .${TARBALL_EXT} " " cabal${ext} " plan.json
53+ ;;
54+ tar.xz)
55+ tar caf " ${TARBALL_PREFIX} -${ARTIFACT} .${TARBALL_EXT} " " cabal${ext} " plan.json
56+ ;;
57+ * )
58+ fail " Unknown TARBALL_EXT: ${TARBALL_EXT} "
59+ ;;
60+ esac
61+
62+ rm " cabal${ext} " plan.json
63+
Original file line number Diff line number Diff line change 1+ #! /bin/bash
2+
3+ set -eux
4+
5+ env
6+ pwd
7+ ls -lah
8+
9+ cd out
10+ case " ${TARBALL_EXT} " in
11+ zip)
12+ unzip ./cabal-install-* -" ${ARTIFACT} .${TARBALL_EXT} "
13+ ;;
14+ tar.xz)
15+ tar xf ./cabal-install-* -" ${ARTIFACT} .${TARBALL_EXT} "
16+ ;;
17+ * )
18+ fail " Unknown TARBALL_EXT: ${TARBALL_EXT} "
19+ ;;
20+ esac
21+ cd ..
22+
23+ ghcup --no-verbose install ghc --set --install-targets " install_bin install_lib update_package_db" " ${GHC_VERSION} "
24+
25+ cabal update
26+
27+ # TODO: we want to avoid building here... we should just
28+ # be using the previously built 'cabal-tests' binary
29+ cabal run ${ADD_CABAL_ARGS} cabal-testsuite:cabal-tests -- \
30+ --with-cabal " $( pwd) /out/cabal" \
31+ --intree-cabal-lib " $( pwd) " \
32+ --test-tmp " $( pwd) /testdb" \
33+ -j " $( nproc) "
34+
You can’t perform that action at this time.
0 commit comments