Skip to content

Commit

Permalink
Update CI runners for MacOS (#548)
Browse files Browse the repository at this point in the history
* Update CI runners for MacOS

* Ninja only needed for Windows/FIPS builds
  • Loading branch information
justsmth authored Sep 30, 2024
1 parent c0d30b8 commit 9f8f822
Show file tree
Hide file tree
Showing 8 changed files with 35 additions and 57 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
steps:
- uses: actions/checkout@v3
with:
Expand Down Expand Up @@ -180,7 +180,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
steps:
- uses: actions/checkout@v3
with:
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/cross.yml
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ jobs:
aws-lc-rs-ios-aarch64:
if: github.repository_owner == 'aws'
name: iOS aarch64 cross-platform build
runs-on: macos-13-xlarge
runs-on: macos-14-xlarge
steps:
- uses: actions/checkout@v3
with:
Expand All @@ -128,7 +128,7 @@ jobs:
aws-lc-rs-ios-x86_64:
if: github.repository_owner == 'aws'
name: iOS x86-64 cross-platform build
runs-on: macos-13-xlarge
runs-on: macos-14-xlarge
steps:
- uses: actions/checkout@v3
with:
Expand All @@ -153,6 +153,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Install build dependencies
# cargo-xwin apparently require ninja-build
run: |
sudo apt-get update && sudo apt-get install --assume-yes nasm clang ninja-build llvm
- uses: actions/checkout@v3
Expand Down Expand Up @@ -251,7 +252,7 @@ jobs:
strategy:
fail-fast: false
matrix:
version: [13.4, 14.1]
version: [ 13.4, 14.1 ]
steps:
- uses: actions/checkout@v4
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/fips-bindings-generator.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
strategy:
fail-fast: true
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -107,7 +107,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
steps:
- uses: actions/checkout@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/fips.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
fail-fast: false
matrix:
rust: [ stable ]
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
args:
- --release --all-targets --features fips,unstable
- --profile release-lto --all-targets --features fips,unstable
Expand Down
23 changes: 6 additions & 17 deletions .github/workflows/integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
env:
GIT_CLONE_PROTECTION_ACTIVE: false
steps:
Expand All @@ -49,7 +49,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
steps:
- uses: actions/checkout@v3
with:
Expand All @@ -72,7 +72,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
features: [ aws-lc-rs, aws-lc-rs-fips, aws-lc-sys, aws-lc-fips-sys ]
steps:
- uses: actions/checkout@v3
Expand Down Expand Up @@ -106,7 +106,7 @@ jobs:
fail-fast: false
matrix:
rust: [ stable ]
os: [ windows-latest, ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ windows-latest, ubuntu-latest, macos-13, macos-14-xlarge ]
crate: [ aws-lc-sys, aws-lc-rs, aws-lc-fips-sys ]
args:
- publish --dry-run
Expand Down Expand Up @@ -182,33 +182,22 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
steps:
- uses: actions/checkout@v3
with:
submodules: 'recursive'
lfs: true

- if: ${{ matrix.os == 'macos-13-xlarge' }}
- if: ${{ startsWith(matrix.os, 'macos-') }}
run: |
brew install llvm
echo 'export PATH="/opt/homebrew/opt/llvm/bin:$PATH"'
echo 'export LIBCLANG_PATH=/opt/homebrew/opt/llvm' >> "$GITHUB_ENV"
- if: ${{ matrix.os == 'macos-12' }}
run: |
brew install llvm
echo 'export PATH="/usr/local/opt/llvm/bin:$PATH"'
echo 'export LIBCLANG_PATH=/usr/local/opt/llvm' >> "$GITHUB_ENV"
- name: Install NASM on Windows
if: runner.os == 'Windows'
uses: ilammy/setup-nasm@v1

- name: Install ninja-build tool
if: runner.os == 'Windows'
uses: seanmiddleditch/gha-setup-ninja@v4

- name: Install MSRV Rust version
uses: dtolnay/rust-toolchain@stable
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pregen-bindings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
- name: Install OS Dependencies
run: |
sudo apt-get update
sudo apt-get -y --no-install-recommends install cmake gcc clang ninja-build golang
sudo apt-get -y --no-install-recommends install cmake gcc clang golang
- name: Regenerate aws-lc-sys crate
working-directory: ./aws-lc-sys
run: |
Expand Down Expand Up @@ -87,7 +87,7 @@ jobs:
- name: Install OS Dependencies
run: |
sudo apt-get update
sudo apt-get -y --no-install-recommends install cmake gcc clang ninja-build golang
sudo apt-get -y --no-install-recommends install cmake gcc clang golang
- name: Regenerate aws-lc-fips-sys crate
working-directory: ./aws-lc-fips-sys
run: |
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/sys-bindings-generator.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
strategy:
fail-fast: true
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -156,7 +156,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -238,7 +238,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
steps:
- uses: actions/checkout@v3
with:
Expand Down
42 changes: 15 additions & 27 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
fail-fast: false
matrix:
rust: [ stable ]
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
args:
- --all-targets --features unstable
- --release --all-targets --features unstable
Expand Down Expand Up @@ -151,7 +151,7 @@ jobs:
fail-fast: false
matrix:
rust: [ stable ]
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
c_std: [ "11", "99" ]
cmake: [ '0', '1' ]
steps:
Expand Down Expand Up @@ -187,24 +187,19 @@ jobs:
fail-fast: false
matrix:
rust: [ stable ]
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
args:
- --no-default-features --features aws-lc-sys,bindgen,unstable
- --release --all-targets --features bindgen,unstable
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- if: ${{ matrix.os == 'macos-13-xlarge' }}
- if: ${{ startsWith(matrix.os, 'macos-') }}
run: |
brew install llvm
echo 'export PATH="/opt/homebrew/opt/llvm/bin:$PATH"' >> "$GITHUB_ENV"
echo 'export LIBCLANG_PATH=/opt/homebrew/opt/llvm' >> "$GITHUB_ENV"
- if: ${{ matrix.os == 'macos-12' }}
run: |
brew install llvm
echo 'export PATH="/usr/local/opt/llvm/bin:$PATH"' >> "$GITHUB_ENV"
echo 'export LIBCLANG_PATH=/usr/local/opt/llvm' >> "$GITHUB_ENV"
- uses: dtolnay/rust-toolchain@master
id: toolchain
with:
Expand Down Expand Up @@ -320,7 +315,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
static: [ 0, 1 ]
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -405,22 +400,20 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- uses: dtolnay/rust-toolchain@stable
- if: ${{ matrix.os == 'windows-latest' }}
uses: ilammy/setup-nasm@v1
- if: ${{ matrix.os == 'windows-latest' }}
uses: seanmiddleditch/gha-setup-ninja@v5
- name: Install bindgen-cli
run: cargo install --locked bindgen-cli
- name: Remove bindings
run: |
rm ./aws-lc-fips-sys/src/x86_64*
rm ./aws-lc-fips-sys/src/aarch64*
rm ./aws-lc-sys/src/x86_64*
rm ./aws-lc-sys/src/aarch64*
- name: Run cargo test
run: cargo test --tests -p aws-lc-rs --no-default-features --features aws-lc-sys

Expand All @@ -433,7 +426,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge ]
static: [ 0, 1 ]
steps:
- uses: actions/checkout@v4
Expand All @@ -458,7 +451,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -493,7 +486,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -532,7 +525,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-12, macos-13-xlarge, windows-latest ]
os: [ ubuntu-latest, macos-13, macos-14-xlarge, windows-latest ]
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -563,8 +556,8 @@ jobs:
matrix:
os:
- ubuntu-latest
- macos-12
- macos-13-xlarge
- macos-13
- macos-14-xlarge
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -575,16 +568,11 @@ jobs:
with:
toolchain: ${{ env.RUST_NIGHTLY_TOOLCHAIN }}
components: 'rust-src'
- if: ${{ matrix.os == 'macos-13-xlarge' }}
- if: ${{ startsWith(matrix.os, 'macos-') }}
run: |
brew install llvm
echo 'export PATH="/opt/homebrew/opt/llvm/bin:$PATH"'
echo 'export LIBCLANG_PATH=/opt/homebrew/opt/llvm' >> "$GITHUB_ENV"
- if: ${{ matrix.os == 'macos-12' }}
run: |
brew install llvm
echo 'export PATH="/usr/local/opt/llvm/bin:$PATH"'
echo 'export LIBCLANG_PATH=/usr/local/opt/llvm' >> "$GITHUB_ENV"
- name: Set Rust toolchain override
run: rustup override set ${{ steps.toolchain.outputs.name }}
- name: Install cargo-careful
Expand Down

0 comments on commit 9f8f822

Please sign in to comment.