1010 types :
1111 - synchronize
1212 - labeled
13+ push :
14+ # We want this workflow to always run on release branches as well as
15+ # all tags since we want to be really sure we don't introduce
16+ # regressions on the release branches, and it's also important to run
17+ # this on pre-release and release tags.
18+ branches :
19+ - ' v*'
20+ tags :
21+ - ' *'
22+
23+ concurrency :
24+ group : ${{ github.workflow }}-${{ github.ref }}
25+ cancel-in-progress : true
26+
27+ permissions :
28+ contents : read
1329
1430jobs :
1531 test_more_architectures :
@@ -18,59 +34,63 @@ jobs:
1834 # we include them just in the monthly cron. These also serve as a test
1935 # of using system libraries and using pytest directly.
2036
21- name : Test on ${{ matrix.arch }}
37+ runs-on : ubuntu-latest
38+ name : Python 3.12
2239 # Don't run on forks of the repository.
2340 if : (github.repository == 'mhvk/baseband-tasks' && (github.event_name == 'schedule' || contains(github.event.pull_request.labels.*.name, 'Extra CI')))
24- runs-on : ubuntu-20.04
2541 env :
26- apt_packages : git python3-astropy python3-pyfftw python3-h5py python3-yaml python3-pip
42+ # git needed by python3-setuptools-scm (and not a required dependency).
43+ # On most, python3-pyfftw cannot be installed (known problem).
44+ apt_packages : python3-astropy python3-h5py python3-pytest-astropy git python3-setuptools-scm
2745 pip_packages : baseband
28- distro : ubuntu20.04
2946
3047 strategy :
3148 fail-fast : false
3249 matrix :
3350 include :
3451 - arch : s390x
35- - arch : aarch64
36- # ppc64le has strange errors that seem more likely numpy related.
52+ - arch : armv7
53+ - arch : ppc64le
3754
3855 steps :
39- - uses : actions/checkout@v2
56+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4057 with :
58+ persist-credentials : false
4159 fetch-depth : 0
42- - uses : uraimo/run-on-arch-action@v2.0.5
60+ - uses : uraimo/run-on-arch-action@5397f9e30a9b62422f302092631c99ae1effcd9e # v2.8.1
4361 name : Run tests
4462 id : build
4563 with :
4664 arch : ${{ matrix.arch }}
47- distro : ${{ env.distro }}
48- # Speeds up builds by storing container images in a GitHub package registry.
49- githubToken : ${{ github.token }}
65+ distro : ubuntu_rolling
66+
5067 shell : /bin/bash
5168 install : |
5269 apt-get update -q -y
53- apt-get install -y ${{ env.apt_packages }}
70+ apt-get install -q -y --no-install-recommends ${{ env.apt_packages }}
5471 python3 -m pip install --user ${{ env.pip_packages }}
5572 run : |
73+ uname -a
74+ echo "LONG_BIT="$(getconf LONG_BIT)
5675 python3 setup.py egg_info
5776 python3 -m pytest
5877
5978 test_with_apt :
6079 name : Test using apt
61- runs-on : ubuntu-latest
80+ runs-on : ubuntu-22.04 # 24.04 does not work (bad python for doctestplus)
6281 if : (github.repository == 'mhvk/baseband-tasks' && (github.event_name == 'schedule' || contains(github.event.pull_request.labels.*.name, 'Extra CI')))
6382 env :
64- apt_packages : git python3-astropy python3-pyfftw python3-h5py python3-yaml python3-pip
83+ apt_packages : python3-astropy python3-pyfftw python3-h5py python3-pip
6584 pip_packages : baseband
6685
6786 steps :
68- - uses : actions/checkout@v2
87+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
6988 with :
89+ persist-credentials : false
7090 fetch-depth : 0
7191 - name : Install system dependencies
7292 if : env.apt_packages
73- run : sudo apt-get install ${{ env.apt_packages }}
93+ run : sudo apt-get install -y --no-install-recommends ${{ env.apt_packages }}
7494 - name : Install Python dependencies
7595 if : env.pip_packages
7696 run : python -m pip install --user ${{ env.pip_packages }}
@@ -91,10 +111,11 @@ jobs:
91111 - os : macos-latest
92112
93113 steps :
94- - uses : actions/checkout@v2
114+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
95115 with :
96116 fetch-depth : 0
97- - uses : actions/setup-python@v2
117+ persist-credentials : false
118+ - uses : actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
98119 with :
99120 python-version : 3.x
100121 - name : Install Python dependencies
0 commit comments