diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index db8aca9..9208c70 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,91 +23,84 @@ jobs: - os_name: FreeBSD-x86_64 os: ubuntu-20.04 target: x86_64-unknown-freebsd - bin: omegasort name: omegasort-FreeBSD-x86_64.tar.gz skip_tests: true - os_name: Linux-x86_64 os: ubuntu-20.04 target: x86_64-unknown-linux-musl - bin: omegasort name: omegasort-Linux-x86_64-musl.tar.gz - os_name: Linux-aarch64 os: ubuntu-20.04 target: aarch64-unknown-linux-musl - bin: omegasort name: omegasort-Linux-aarch64-musl.tar.gz - os_name: Linux-arm os: ubuntu-20.04 target: arm-unknown-linux-musleabi - bin: omegasort name: omegasort-Linux-arm-musl.tar.gz - os_name: Linux-i686 os: ubuntu-20.04 target: i686-unknown-linux-musl - bin: omegasort name: omegasort-Linux-i686-musl.tar.gz - os_name: Linux-powerpc os: ubuntu-20.04 target: powerpc-unknown-linux-gnu - bin: omegasort name: omegasort-Linux-powerpc-gnu.tar.gz - os_name: Linux-powerpc64 os: ubuntu-20.04 target: powerpc64-unknown-linux-gnu - bin: omegasort name: omegasort-Linux-powerpc64-gnu.tar.gz - os_name: Linux-powerpc64le os: ubuntu-20.04 target: powerpc64le-unknown-linux-gnu - bin: omegasort name: omegasort-Linux-powerpc64le.tar.gz - os_name: Linux-riscv64 os: ubuntu-20.04 target: riscv64gc-unknown-linux-gnu - bin: omegasort name: omegasort-Linux-riscv64gc-gnu.tar.gz - os_name: Linux-s390x os: ubuntu-20.04 target: s390x-unknown-linux-gnu - bin: omegasort name: omegasort-Linux-s390x-gnu.tar.gz - os_name: NetBSD-x86_64 os: ubuntu-20.04 target: x86_64-unknown-netbsd - bin: omegasort name: omegasort-NetBSD-x86_64.tar.gz skip_tests: true - os_name: Windows-aarch64 os: windows-latest target: aarch64-pc-windows-msvc - bin: omegasort.exe name: omegasort-Windows-aarch64.zip skip_tests: true - os_name: Windows-i686 os: windows-latest target: i686-pc-windows-msvc - bin: omegasort.exe name: omegasort-Windows-i686.zip - os_name: Windows-x86_64 os: windows-latest target: x86_64-pc-windows-msvc - bin: omegasort.exe name: omegasort-Windows-x86_64.zip - os_name: macOS-x86_64 os: macOS-latest target: x86_64-apple-darwin - bin: omegasort name: omegasort-Darwin-x86_64.tar.gz - os_name: macOS-aarch64 os: macOS-latest target: aarch64-apple-darwin - bin: omegasort name: omegasort-Darwin-aarch64.tar.gz skip_tests: true toolchain: - stable - - beta - - nightly + include: + - platform: + os_name: Linux-x86_64 + os: ubuntu-20.04 + target: x86_64-unknown-linux-musl + toolchain: beta + - platform: + os_name: Linux-x86_64 + os: ubuntu-20.04 + target: x86_64-unknown-linux-musl + toolchain: nightly steps: - uses: actions/checkout@v3 - name: Cache cargo & target directories @@ -122,7 +115,7 @@ jobs: strip: true cross-version: 19be834 - name: Run tests - uses: houseabsolute/actions-rust-cross@cross-git + uses: houseabsolute/actions-rust-cross@v0 with: command: "test" target: ${{ matrix.platform.target }} @@ -130,37 +123,9 @@ jobs: args: "--locked --release" cross-version: 19be834 if: ${{ !matrix.platform.skip_tests }} - - name: Package as archive - shell: bash - run: | - cd target/${{ matrix.platform.target }}/release - if [[ "${{ matrix.platform.os }}" == "windows-latest" ]]; then - 7z a ../../../${{ matrix.platform.name }} ${{ matrix.platform.bin }} - else - tar czvf ../../../${{ matrix.platform.name }} ${{ matrix.platform.bin }} - fi - cd - - if: | - matrix.toolchain == 'stable' && - ( startsWith( github.ref, 'refs/tags/v' ) || - github.ref == 'refs/tags/test-release' ) - - name: Publish release artifacts - uses: actions/upload-artifact@v3 - with: - name: omegasort-${{ matrix.platform.os_name }} - path: "omegasort*" - if: matrix.toolchain == 'stable' && github.ref == 'refs/tags/test-release' - - name: Generate SHA-256 - run: shasum -a 256 ${{ matrix.platform.name }} - if: | - matrix.toolchain == 'stable' && - matrix.platform.os == 'macOS-latest' && - ( startsWith( github.ref, 'refs/tags/v' ) || - github.ref == 'refs/tags/test-release' ) - - name: Publish GitHub release - uses: softprops/action-gh-release@v2 + - name: Publish artifacts and release + uses: houseabsolute/actions-rust-release@v0 with: - draft: true - files: "omegasort*" - body_path: Changes.md - if: matrix.toolchain == 'stable' && startsWith( github.ref, 'refs/tags/v' ) + executable-name: omegasort + target: ${{ matrix.platform.target }} + if: matrix.toolchain == 'stable'