aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorMarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>2023-08-21 13:57:26 +0200
committerMarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>2023-09-04 18:04:49 +0200
commitfa5356cd49facf195447f0f5921dce1fa53cb25d (patch)
tree698a2078a0bb46d45a85eec271e2192be6290368 /.github/workflows
parentfafcd2e9ef1209d614de5763a2733098537919dd (diff)
downloadbitcoin-fa5356cd49facf195447f0f5921dce1fa53cb25d.tar.xz
ci: Limit test-each-commit to --max-count=6
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/ci.yml11
1 files changed, 7 insertions, 4 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 278f55d91d..74c150d0be 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -27,15 +27,18 @@ jobs:
name: 'test each commit'
runs-on: ubuntu-22.04
if: github.event_name == 'pull_request'
- timeout-minutes: 360 # Use maximum time, see https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idtimeout-minutes
+ timeout-minutes: 360 # Use maximum time, see https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idtimeout-minutes. Assuming a worst case time of 1 hour per commit, this leads to a --max-count=6 below.
+ env:
+ MAX_COUNT: '--max-count=6'
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
- fetch-depth: '0'
+ fetch-depth: '8' # Two more than $MAX_COUNT
- run: git checkout HEAD~ # Skip the top commit, because it is already checked by the other tasks.
- - run: sudo apt install ccache build-essential libtool autotools-dev automake pkg-config bsdmainutils python3-zmq libevent-dev libboost-dev libsqlite3-dev libdb++-dev systemtap-sdt-dev libminiupnpc-dev libnatpmp-dev libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools qtwayland5 libqrencode-dev -y
- - run: EDITOR=true git rebase --interactive --exec "./autogen.sh && CC=clang CXX=clang++ ./configure && make clean && make -j $(nproc) check && ./test/functional/test_runner.py -j $(( $(nproc) * 2 ))" $( git log --merges -1 --format='%H' )
+ - run: sudo apt install clang ccache build-essential libtool autotools-dev automake pkg-config bsdmainutils python3-zmq libevent-dev libboost-dev libsqlite3-dev libdb++-dev systemtap-sdt-dev libminiupnpc-dev libnatpmp-dev libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools qtwayland5 libqrencode-dev -y
+ # Use clang++, because it is a bit faster and uses less memory than g++
+ - run: git rebase --exec "echo Running test-one-commit on \$( git log -1 ) && ./autogen.sh && CC=clang CXX=clang++ ./configure && make clean && make -j $(nproc) check && ./test/functional/test_runner.py -j $(( $(nproc) * 2 ))" "$( git log '^'$( git log --merges -1 --format='%H' ) HEAD --format='%H' ${MAX_COUNT} | tail -1 )~1"
macos-native-x86_64:
name: 'macOS 13 native, x86_64, no depends, sqlite only, gui'