|
53 | 53 | strategy:
|
54 | 54 | fail-fast: ${{ github.event_name == 'merge_group' }}
|
55 | 55 | matrix:
|
56 |
| - # smoelius: Test with `macos-latest` once the repository is made public. |
57 |
| - environment: [ubuntu-latest] |
| 56 | + environment: [ubuntu-latest, macos-15] |
58 | 57 | # smoelius: Test with Anchor 0.31.0 once the following issue is resolved:
|
59 | 58 | # https://github.com/solana-foundation/anchor/issues/3643
|
60 | 59 | anchor-version: [0.30.1]
|
|
89 | 88 | - name: Rustup
|
90 | 89 | run: rustup update
|
91 | 90 |
|
92 |
| - - name: Install Agave prerequisites |
| 91 | + - name: Install Agave prerequisites on Ubuntu |
| 92 | + if: ${{ matrix.environment == 'ubuntu-latest' }} |
93 | 93 | run: sudo apt install libclang-dev libudev-dev llvm protobuf-compiler
|
94 | 94 |
|
| 95 | + - name: Install Agave prerequisites on macOS |
| 96 | + if: ${{ matrix.environment == 'macos-15' }} |
| 97 | + run: | |
| 98 | + brew install coreutils gnu-sed llvm protobuf |
| 99 | + echo "/opt/homebrew/opt/gnu-sed/libexec/gnubin" >> "$GITHUB_PATH" |
| 100 | + # smoelius: ~/lib is one of the directories `librocksdb-sys`'s build script checks |
| 101 | + # for libclang.dylib. |
| 102 | + mkdir ~/lib |
| 103 | + ln -s /opt/homebrew/opt/llvm/lib/libclang.dylib ~/lib/libclang.dylib |
| 104 | +
|
95 | 105 | - name: Install Agave
|
96 | 106 | run: |
|
97 | 107 | if ! ./agave/bin/agave-validator --version; then
|
@@ -130,7 +140,9 @@ jobs:
|
130 | 140 |
|
131 | 141 | # https://github.com/actions/cache/tree/main/save#always-save-cache
|
132 | 142 | - uses: actions/cache/save@v4
|
133 |
| - if: always() && steps.cache-restore.outputs.cache-hit != 'true' |
| 143 | + # smoelius: The cache should be updated regardless of whether it was restored in case |
| 144 | + # further progress is made. |
| 145 | + if: always() # && steps.cache-restore.outputs.cache-hit != 'true' |
134 | 146 | with:
|
135 | 147 | key: ${{ runner.os }}-cargo-${{ hashFiles('Cargo.lock') }}
|
136 | 148 | path: |
|
|
0 commit comments