# .github/workflows/build.yml name: Build on: workflow_dispatch: push: branches: - master jobs: build: name: Build runs-on: ubuntu-latest strategy: fail-fast: false matrix: include: # - target: x86_64-pc-windows-gnu # archive: zip - target: x86_64-unknown-linux-musl archive: tar.gz tar.xz tar.zst # - target: x86_64-apple-darwin # archive: zip steps: - uses: actions/checkout@master - name: Set up cargo cache uses: actions/cache@v3 continue-on-error: false with: path: | ~/.cargo/bin/ ~/.cargo/registry/ ~/.cargo/git/db/ target/ key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} restore-keys: ${{ runner.os }}-cargo- - name: Compile id: compile uses: rust-build/rust-build.action@v1.4.3 env: # "-C target-feature=-crt-static" is required to be able # to run in an alpine docker container RUSTFLAGS: "-C target-feature=-crt-static" with: RUSTTARGET: ${{ matrix.target }} ARCHIVE_TYPES: ${{ matrix.archive }} UPLOAD_MODE: none SRC_DIR: "" - name: Upload artifact uses: actions/upload-artifact@v3 with: name: Binary path: | ${{ steps.compile.outputs.BUILT_ARCHIVE }} ${{ steps.compile.outputs.BUILT_CHECKSUM }}