Skip to content

Commit

Permalink
ga: Use runner image cached python versions
Browse files Browse the repository at this point in the history
Avoids the need to (re)install python from distro repos.
  • Loading branch information
Fuzzbawls committed Jun 19, 2024
1 parent c0ea7f0 commit 428ead2
Showing 1 changed file with 55 additions and 21 deletions.
76 changes: 55 additions & 21 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
- name: Initialize Python
uses: actions/setup-python@v5
with:
python-version: 3.8
python-version: '3.8'

- name: Install Dependencies
run: |
Expand Down Expand Up @@ -105,14 +105,14 @@ jobs:

- name: macOS
os: macos-12
packages: llvm@13 [email protected] autoconf automake berkeley-db@4 libtool [email protected] miniupnpc libnatpmp pkg-config qt@5 zmq libevent qrencode gmp libsodium rust
packages: llvm@13 autoconf automake berkeley-db@4 libtool [email protected] miniupnpc libnatpmp pkg-config qt@5 zmq libevent qrencode gmp libsodium rust
boost_root: true
cc: $(brew --prefix llvm@13)/bin/clang
cxx: $(brew --prefix llvm@13)/bin/clang++

- name: macOS-latest
os: macos-14
packages: llvm@14 [email protected] autoconf automake berkeley-db@4 libtool [email protected] miniupnpc libnatpmp pkg-config qt@5 zmq libevent qrencode gmp libsodium rust
packages: llvm@14 autoconf automake berkeley-db@4 libtool [email protected] miniupnpc libnatpmp pkg-config qt@5 zmq libevent qrencode gmp libsodium rust
boost_root: true
cc: $(brew --prefix llvm@14)/bin/clang
cxx: $(brew --prefix llvm@14)/bin/clang++
Expand All @@ -121,6 +121,11 @@ jobs:
- name: Get Source
uses: actions/checkout@v4

- name: Initialize Python
uses: actions/setup-python@v5
with:
python-version: '3.8'

- name: Setup Environment
run: |
if [[ ${{ matrix.config.os }} = ubuntu* ]]; then
Expand Down Expand Up @@ -207,7 +212,7 @@ jobs:
- name: x64-macOS
id: macOS-nodepends
os: macos-12
packages: autoconf automake ccache berkeley-db@4 libtool [email protected] miniupnpc libnatpmp pkg-config [email protected] libevent qrencode gmp libsodium rust librsvg
packages: autoconf automake ccache berkeley-db@4 libtool [email protected] miniupnpc libnatpmp pkg-config libevent qrencode gmp libsodium rust librsvg
unit_tests: true
functional_tests: true
cc: clang
Expand All @@ -217,7 +222,7 @@ jobs:
- name: arm64-macOS-latest
id: macOS-nodepends-latest
os: macos-14
packages: autoconf automake ccache berkeley-db@4 libtool [email protected] miniupnpc libnatpmp pkg-config [email protected] qt@5 zmq libevent qrencode gmp libsodium rust librsvg
packages: autoconf automake ccache berkeley-db@4 libtool [email protected] miniupnpc libnatpmp pkg-config qt@5 zmq libevent qrencode gmp libsodium rust librsvg
unit_tests: true
functional_tests: true
goal: deploy
Expand All @@ -229,14 +234,19 @@ jobs:
- name: Get Source
uses: actions/checkout@v4

- name: Initialize Python
uses: actions/setup-python@v5
with:
python-version: '3.8'

- name: Setup Environment
run: |
if [[ ${{ matrix.config.os }} = ubuntu* ]]; then
sudo apt-get install --no-install-recommends --no-upgrade -qq "$APT_BASE" ${{ matrix.config.packages }}
fi
if [[ ${{ matrix.config.os }} = macos* ]]; then
brew install ${{ matrix.config.packages }}
pip3.8 install ds_store mac_alias
pip install ds_store mac_alias
fi
- name: ccache cache files
Expand Down Expand Up @@ -352,14 +362,19 @@ jobs:
- name: x64-macOS
id: macOS-nodepends
os: macos-12
packages: [email protected] berkeley-db@4 [email protected] miniupnpc libnatpmp pkg-config zmq libevent qrencode gmp libsodium
packages: berkeley-db@4 [email protected] miniupnpc libnatpmp pkg-config zmq libevent qrencode gmp libsodium

- name: arm64-macOS-latest
id: macOS-nodepends-latest
os: macos-14
packages: [email protected] berkeley-db@4 [email protected] miniupnpc libnatpmp pkg-config zmq libevent qrencode gmp libsodium
packages: berkeley-db@4 [email protected] miniupnpc libnatpmp pkg-config zmq libevent qrencode gmp libsodium

steps:
- name: Initialize Python
uses: actions/setup-python@v5
with:
python-version: '3.8'

- name: Setup Environment
run: |
if [[ ${{ matrix.config.os }} = ubuntu* ]]; then
Expand All @@ -368,6 +383,7 @@ jobs:
if [[ ${{ matrix.config.os }} = macos* ]]; then
brew install ${{ matrix.config.packages }}
fi
pip install pyzmq
- name: Download Build Artifact
uses: actions/download-artifact@v4
Expand Down Expand Up @@ -406,17 +422,17 @@ jobs:
- name: ARM 32-bit
os: ubuntu-20.04
host: arm-linux-gnueabihf
packages: python3 g++-arm-linux-gnueabihf
packages: g++-arm-linux-gnueabihf

- name: AARCH64
os: ubuntu-20.04
host: aarch64-linux-gnu
packages: python3 g++-aarch64-linux-gnu
packages: g++-aarch64-linux-gnu

- name: Win64
os: ubuntu-20.04
host: x86_64-w64-mingw32
packages: python3 nsis g++-mingw-w64-x86-64 wine-binfmt wine64
packages: nsis g++-mingw-w64-x86-64 wine-binfmt wine64

- name: 32-bit + dash
os: ubuntu-20.04
Expand All @@ -432,14 +448,19 @@ jobs:
- name: macOS 10.12
os: ubuntu-20.04
host: x86_64-apple-darwin16
packages: cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools python3-dev python3-setuptools
packages: cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools
XCODE_VERSION: 11.3.1
XCODE_BUILD_ID: 11C505

steps:
- name: Get Source
uses: actions/checkout@v4

- name: Initialize Python
uses: actions/setup-python@v5
with:
python-version: '3.8'

- name: Setup Environment
run: |
sudo apt-get update
Expand Down Expand Up @@ -520,7 +541,7 @@ jobs:
id: ARM64-build
os: ubuntu-20.04
host: aarch64-linux-gnu
packages: python3 g++-aarch64-linux-gnu
packages: g++-aarch64-linux-gnu
unit_tests: false
functional_tests: false
goal: install
Expand All @@ -530,7 +551,7 @@ jobs:
id: Win64-build
os: ubuntu-20.04
host: x86_64-w64-mingw32
packages: python3 nsis g++-mingw-w64-x86-64 wine-binfmt wine64
packages: nsis g++-mingw-w64-x86-64 wine-binfmt wine64
unit_tests: false
functional_tests: false
symbol_check: true
Expand All @@ -551,7 +572,7 @@ jobs:
id: macOS10.12-build
os: ubuntu-20.04
host: x86_64-apple-darwin16
packages: cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools python3-dev python3-setuptools
packages: cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools
XCODE_VERSION: 11.3.1
XCODE_BUILD_ID: 11C505
unit_tests: false
Expand All @@ -564,6 +585,11 @@ jobs:
- name: Get Source
uses: actions/checkout@v4

- name: Initialize Python
uses: actions/setup-python@v5
with:
python-version: '3.8'

- name: Setup Environment
run: |
sudo apt-get update
Expand Down Expand Up @@ -720,18 +746,26 @@ jobs:
id: macos-x86_64-tests
os: macos-12
host: x86_64-apple-darwin16
packages: [email protected]
packages: None
test_runner_extra: "--all --exclude feature_dbcrash"

steps:
- name: Initialize Python
uses: actions/setup-python@v5
with:
python-version: '3.8'

- name: Setup Environment
run: |
if [[ ${{ matrix.config.os }} = ubuntu* ]]; then
sudo apt-get install --no-install-recommends --no-upgrade -qq ${{ matrix.config.packages }}
fi
if [[ ${{ matrix.config.os }} = macos* ]]; then
brew install ${{ matrix.config.packages }}
if [[ ${{ matrix.config.packages }} != None ]]; then
if [[ ${{ matrix.config.os }} = ubuntu* ]]; then
sudo apt-get install --no-install-recommends --no-upgrade -qq ${{ matrix.config.packages }}
fi
if [[ ${{ matrix.config.os }} = macos* ]]; then
brew install ${{ matrix.config.packages }}
fi
fi
pip install pyzmq
- name: Download Build Artifact
uses: actions/download-artifact@v4
Expand Down

0 comments on commit 428ead2

Please sign in to comment.