diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9c1e563dfa..4fd312ec09 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,6 +38,7 @@ jobs: - nightly-mips - nightly-arm - macos + - macos-arm - win-msvc - win-gnu include: @@ -77,6 +78,10 @@ jobs: - build: macos os: macos-latest rust: nightly + - build: macos-arm + os: macos-latest + rust: nightly + target: aarch64-apple-darwin - build: win-msvc os: windows-2022 rust: nightly diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index bde40c7a80..c83b5e89e1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,7 +24,7 @@ on: jobs: create-release: name: create-release - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest # env: # Set to force version number, e.g., when no tag exists. # RG_VERSION: TEST-0.0.0 @@ -61,30 +61,34 @@ jobs: PCRE2_SYS_STATIC: 1 strategy: matrix: - build: [linux, linux-arm, macos, win-msvc, win-gnu, win32-msvc] + build: [linux, linux-arm, macos, macos-arm, win-msvc, win-gnu, win32-msvc] include: - build: linux - os: ubuntu-22.04 + os: ubuntu-latest rust: nightly target: x86_64-unknown-linux-musl - build: linux-arm - os: ubuntu-22.04 + os: ubuntu-latest rust: nightly target: arm-unknown-linux-gnueabihf - build: macos - os: macos-12 + os: macos-latest rust: nightly target: x86_64-apple-darwin + - build: macos-arm + os: macos-latest + rust: nightly + target: aarch64-apple-darwin - build: win-msvc - os: windows-2022 + os: windows-latest rust: nightly target: x86_64-pc-windows-msvc - build: win-gnu - os: windows-2022 + os: windows-latest rust: nightly-x86_64-gnu target: x86_64-pc-windows-gnu - build: win32-msvc - os: windows-2022 + os: windows-latest rust: nightly target: i686-pc-windows-msvc @@ -93,12 +97,12 @@ jobs: uses: actions/checkout@v3 - name: Install packages (Ubuntu) - if: matrix.os == 'ubuntu-22.04' + if: matrix.os == 'ubuntu-latest' run: | ci/ubuntu-install-packages - name: Install packages (macOS) - if: matrix.os == 'macos-12' + if: matrix.os == 'macos-latest' run: | ci/macos-install-packages @@ -125,8 +129,8 @@ jobs: - name: Build release binary run: ${{ env.CARGO }} build --verbose --release --features pcre2 ${{ env.TARGET_FLAGS }} - - name: Strip release binary (linux and macos) - if: matrix.build == 'linux' || matrix.build == 'macos' + - name: Strip release binary (linux, macos and macos-arm) + if: matrix.build == 'linux' || matrix.build == 'macos' || matrix.build == 'macos-arm' run: strip "target/${{ matrix.target }}/release/rg" - name: Strip release binary (arm) @@ -150,7 +154,7 @@ jobs: cp "$outdir"/{rg.bash,rg.fish,_rg.ps1} "$staging/complete/" cp complete/_rg "$staging/complete/" - if [ "${{ matrix.os }}" = "windows-2022" ]; then + if [ "${{ matrix.os }}" = "windows-latest" ]; then cp "target/${{ matrix.target }}/release/rg.exe" "$staging/" 7z a "$staging.zip" "$staging" certutil -hashfile "$staging.zip" SHA256 > "$staging.zip.sha256"