diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 0f3355bfb..adcdd41f1 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -1,7 +1,8 @@ -# linux CI tests, run on a periodic schedule, on notable pull request -# to master, and on notable push to ci-linux. Reasonably thorough -# build/test/benchmark/haddock/functest testing, with all GHC -# versions. Note periodic runs don't use cache. +# Thorough linux CI tests: build, test, benchmark, haddock & +# run functional tests, with all supported GHC versions. +# +# Runs: periodically, on notable pull request to master, and on +# notable push to ci-linux. name: linux / pull request CI @@ -58,8 +59,7 @@ jobs: - name: Check out uses: actions/checkout@v2 - # declare/restore cached things - # caching doesn't work for scheduled runs yet https://github.com/actions/cache/issues/63 + # things to be cached/restored: - name: Cache stack global package db id: stack-global @@ -81,7 +81,6 @@ jobs: ${{ runner.os }}-stack-programs-${{ matrix.plan.key }} ${{ runner.os }}-stack-programs - # stack's local package dbs for the project and each package - name: Cache .stack-work uses: actions/cache@v2 with: @@ -149,7 +148,7 @@ jobs: sudo rm -rf "$AGENT_TOOLSDIRECTORY" df -h / - # actions + # actions: - name: Install stack # curl -L https://get.haskellstack.org/stable/linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C $INSTALLDIR '*/stack' diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index ad8e0cd82..c974b5474 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -1,5 +1,6 @@ -# mac CI tests, run on a periodic schedule, and on notable push to -# ci-mac. Note periodic runs don't use cache. +# Light Mac CI tests: build and run functional tests with one GHC version. +# +# Runs: periodically, and on notable push to ci-mac. name: mac CI @@ -30,8 +31,7 @@ jobs: - name: Check out uses: actions/checkout@v2 - # declare/restore cached things - # caching doesn't work for scheduled runs yet https://github.com/actions/cache/issues/63 + # things to be cached/restored: - name: Cache stack global package db id: stack-global @@ -53,7 +53,6 @@ jobs: ${{ runner.os }}-stack-programs ${{ runner.os }}-local-bin - # stack's local package dbs for the project and each package - name: Cache .stack-work uses: actions/cache@v2 with: @@ -84,7 +83,7 @@ jobs: path: hledger-web/.stack-work key: ${{ runner.os }}-hledger-web-stack-work - # actions + # actions: - name: Install stack # curl --insecure -L https://get.haskellstack.org/stable/osx-x86_64.tar.gz | tar xz --strip-components=1 --include '*/stack' -C $INSTALLDIR diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index ccbb52930..ed73f6476 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -1,4 +1,7 @@ -# quick CI tests, run on notable push to master. +# Light CI tests: build and run functional tests with one GHC version, +# using less compute power and emitting less carbon. +# +# Runs: on notable (eg, not just doc files) push to master. name: push CI @@ -42,16 +45,14 @@ jobs: touch "${filename}" -mt "$(date --date="@$TS" "+%Y%m%d%H%M.%S")" done - # cached things - - # declare/restore cached things + # things to be cached/restored: - name: Cache stack global package db id: stack-global uses: actions/cache@v2 with: path: ~/.stack - key: ${{ runner.os }}-stack-global-${{ hashFiles('**.yaml') }} + key: ${{ runner.os }}-stack-global-${{ hashFiles('**.yaml') }} restore-keys: | ${{ runner.os }}-stack-global ${{ runner.os }}-stack @@ -61,12 +62,11 @@ jobs: uses: actions/cache@v2 with: path: ~/.local/bin - key: ${{ runner.os }}-stack-programs-${{ hashFiles('**.yaml') }} + key: ${{ runner.os }}-stack-programs-${{ hashFiles('**.yaml') }} restore-keys: | ${{ runner.os }}-stack-programs ${{ runner.os }}-local-bin - # stack's local package dbs for the project and each package - name: Cache .stack-work uses: actions/cache@v2 with: @@ -102,7 +102,7 @@ jobs: key: ${{ runner.os }}-hledger-web-stack-work-${{ hashFiles('hledger-web/package.yaml') }} restore-keys: ${{ runner.os }}-hledger-web-stack-work - # actions + # actions: - name: Install stack # curl -L https://get.haskellstack.org/stable/linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C $INSTALLDIR '*/stack' diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 69c710c3b..28ac93ed4 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -1,6 +1,7 @@ -# windows CI tests, run on a periodic schedule, and on notable push to -# ci-windows. Note periodic runs don't use cache. Using GHC 8.8.2 for -# now to avoid https://gitlab.haskell.org/ghc/ghc/issues/17926. +# Light Mac CI tests: build and run functional tests with one GHC version. +# GHC 8.8.2 for now to avoid https://gitlab.haskell.org/ghc/ghc/issues/17926. +# +# Runs: periodically, and on notable push to ci-windows. name: windows CI @@ -31,8 +32,7 @@ jobs: - name: Check out uses: actions/checkout@v2 - # declare/restore cached things - # caching doesn't work for scheduled runs yet https://github.com/actions/cache/issues/63 + # things to be cached/restored: - name: Cache stack global package db id: stack-global-package-db @@ -42,11 +42,6 @@ jobs: key: ${{ runner.os }}-appdata-roaming-stack-${{ hashFiles('**.yaml') }} restore-keys: ${{ runner.os }}-appdata-roaming-stack - # - name: showStuff - # shell: bash - # run: | - # ls -lFRa /c/users/runneradmin/appdata/roaming/stack - - name: Cache stack programs dir # ghc, ghc-included packages and their haddocks, mingw, msys2 id: stack-programs-dir uses: actions/cache@v2 @@ -57,12 +52,6 @@ jobs: key: ${{ runner.os }}-appdata-local-programs-stack-${{ hashFiles('**.yaml') }} restore-keys: ${{ runner.os }}-appdata-local-programs-stack - # - name: showStuff - # shell: bash - # run: | - # ls -lFRa /c/users/runneradmin/appdata/local/programs/stack - - # stack's local package dbs for the project and each package - name: Cache .stack-work uses: actions/cache@v2 with: @@ -98,7 +87,13 @@ jobs: key: ${{ runner.os }}-hledger-web-stack-work-${{ hashFiles('hledger-web/package.yaml') }} restore-keys: ${{ runner.os }}-hledger-web-stack-work - # actions + # - name: showStuff + # shell: bash + # run: | + # ls -lFRa /c/users/runneradmin/appdata/roaming/stack + # ls -lFRa /c/users/runneradmin/appdata/local/programs/stack + + # actions: # - name: Add stack local bin to PATH # run: echo "::add-path::C:\Users\runneradmin\AppData\Roaming\stack\local\bin"