1name: CI23on: [push]45jobs:6 test:7 name: Test Suite8 runs-on: ubuntu-latest9 steps:10 - name: Checkout sources11 uses: actions/checkout@v212 - name: Install stable toolchain13 uses: actions-rs/toolchain@v114 with:15 toolchain: stable16 override: true17 - name: Run tests18 uses: actions-rs/cargo@v119 with:20 command: test21 args: --all22 release:23 if: startsWith(github.ref, 'refs/tags/')24 needs: [test]25 strategy:26 matrix:27 os: [ubuntu-latest, macOS-latest, windows-latest]28 include:29 - os: ubuntu-latest30 rust: stable31 target: x86_64-unknown-linux-musl32 bin: jrsonnet33 name: jrsonnet-linux-amd6434 - os: windows-latest35 rust: stable36 target: x86_64-pc-windows-msvc37 bin: jrsonnet.exe38 name: jrsonnet-windows-amd64.exe39 - os: macOS-latest40 rust: stable41 target: x86_64-apple-darwin42 bin: jrsonnet43 name: jrsonnet-darwin-amd6444 runs-on: ${{ matrix.os }}45 steps:46 - name: Install stable toolchain47 uses: actions-rs/toolchain@v148 with:49 toolchain: ${{ matrix.rust }}50 override: true51 target: ${{ matrix.target }}52 - name: Checkout53 uses: actions/checkout@v254 - name: Run build55 uses: actions-rs/cargo@v156 with:57 command: build58 args: --bin=jrsonnet --release --target ${{ matrix.target }}59 - name: Package60 shell: bash61 run: |62 strip target/${{ matrix.target }}/release/${{ matrix.bin }}63 cd target/${{ matrix.target }}/release6465 cp ${{ matrix.bin }} ../../../${{ matrix.name }}66 cd -67 - name: Generate SHA-25668 run: shasum -a 256 ${{ matrix.name }} > ${{ matrix.name }}.sha25669 - name: Publish70 uses: softprops/action-gh-release@v171 with:72 draft: true73 files: "jrsonnet*"74 env:75 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}