# HG changeset patch # User Matt Johnston # Date 1634615412 -28800 # Node ID 84b664071c7dfc3d2efa3dd2b5f8e8e3e569fc44 # Parent 9d8af2da9b6094febd8e30d5555d1f2507ec254b Upload config.log on failure Change tests to avoid double-negative for skipcheck Skip some actions when running under act diff -r 9d8af2da9b60 -r 84b664071c7d .github/workflows/build.yml --- a/.github/workflows/build.yml Mon Oct 18 23:45:09 2021 +0800 +++ b/.github/workflows/build.yml Tue Oct 19 11:50:12 2021 +0800 @@ -11,6 +11,10 @@ runs-on: ${{ matrix.os || 'ubuntu-20.04' }} strategy: matrix: + # Rather than a boolean False we use eg + # runcheck: 'no' + # Otherwise GH expressions will make a None var + # compare with False. We want an undefined default of True. include: - name: plain linux @@ -24,7 +28,7 @@ # NOWRITEV is unrelated, test here to save a job nowritev: 1 # pytest relies on python3.7 - skipcheck: True + runcheck: 'no' - name: linux clang cc: clang @@ -34,8 +38,8 @@ cc: clang # OS X says daemon() and utmp are deprecated wextraflags: -Wno-deprecated-declarations -Werror - skipcheck: True - exoticos: True + runcheck: 'no' + apt: 'no' # fails with: # .../ranlib: file: libtomcrypt.a(cbc_setiv.o) has no symbols ranlib: ranlib -no_warning_for_no_symbols @@ -44,8 +48,8 @@ os: macos-11 cc: clang wextraflags: -Wno-deprecated-declarations -Werror - skipcheck: True - exoticos: True + runcheck: 'no' + apt: 'no' ranlib: ranlib -no_warning_for_no_symbols # # Fuzzers run standalone. A bit superfluous with cifuzz, but @@ -79,7 +83,7 @@ steps: - name: deps - if: ${{ !matrix.exoticos }} + if: ${{ matrix.apt != 'no' }} run: | sudo apt-get -y update sudo apt-get -y install zlib1g-dev libtomcrypt-dev libtommath-dev mercurial python3-venv socat $CC @@ -87,6 +91,7 @@ - uses: actions/checkout@v2 - name: cache pip + if: ${{ !env.ACT }} uses: actions/cache@v2 with: path: test/venv @@ -94,6 +99,7 @@ restore-keys: ${{ runner.os }}-pip- - name: cache fuzzcorpus + if: ${{ !env.ACT }} uses: actions/cache@v2 with: path: fuzzcorpus @@ -126,8 +132,16 @@ mkdir -p ~/.ssh ~/inst/bin/dropbearkey -t ecdsa -f ~/.ssh/id_dropbear | grep ^ecdsa > ~/.ssh/authorized_keys + # upload config.log if something has failed + - name: config.log + if: ${{ !env.ACT && (failure() || cancelled()) }} + uses: actions/upload-artifact@v2 + with: + name: config.log + path: config.log + - name: check - if: ${{ !matrix.skipcheck }} + if: ${{ matrix.runcheck != 'no' }} # run in a TTY for some tests run: socat - EXEC:"make check",pty