From 74ac2d2170914d0e88365a7eec07fc21f4a616de Mon Sep 17 00:00:00 2001 From: spacemeowx2 Date: Sat, 5 Dec 2020 00:16:02 +0800 Subject: [PATCH] ci: add release and cache, fix typo --- .github/workflows/build.yml | 51 --------------------- .github/workflows/rust.yml | 88 +++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+), 51 deletions(-) delete mode 100644 .github/workflows/build.yml create mode 100644 .github/workflows/rust.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index d91efe6..0000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,51 +0,0 @@ -on: [push, pull_request] - -name: Build - -jobs: - build: - name: Build - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: - - ubuntu-latest - - macOS-latest - - windows-latest - - steps: - - uses: actions/checkout@v2 - - - uses: actions-rs/toolchain@v1 - with: - toolchain: stable - target: ${{ matrix.target }} - override: true - - - uses: actions-rs/cargo@v1 - with: - use-cross: true - command: build - args: --release - - cross_compile: - name: Cross compile - runs-on: ubuntu-latest - strategy: - matrix: - target: - - armv7-unknown-linux-gnueabihf - steps: - - uses: actions/checkout@v2 - - uses: actions-rs/toolchain@v1 - with: - toolchain: stable - target: ${{ matrix.target }} - override: true - - uses: actions-rs/cargo@v1 - with: - use-cross: true - command: build - args: --release --target=${{ matrix.target }} - - \ No newline at end of file diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml new file mode 100644 index 0000000..98d000b --- /dev/null +++ b/.github/workflows/rust.yml @@ -0,0 +1,88 @@ +on: [push, pull_request] + +name: Build + +jobs: + build: + name: Build + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + include: + - os: ubuntu-latest + artifact_name: blflash + release_name: blflash-linux-amd64 + - os: windows-latest + artifact_name: blflash.exe + release_name: blflash-windows-amd64.exe + - os: macos-latest + artifact_name: blflash + release_name: blflash-macos-amd64 + + steps: + - uses: actions/checkout@v2 + - name: Cache Cargo build + uses: actions/cache@v1 + with: + path: target/ + key: ${{ matrix.os }}-stable-target + restore-keys: | + ${{ matrix.os }}-stable-target + - uses: actions-rs/toolchain@v1 + with: + toolchain: stable + target: ${{ matrix.target }} + override: true + + - uses: actions-rs/cargo@v1 + with: + use-cross: true + command: build + args: --release + + - name: Upload binaries to release + uses: svenstaro/upload-release-action@v1-release + if: startsWith(github.ref, 'refs/tags/') + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: target/release/${{ matrix.artifact_name }} + asset_name: ${{ matrix.release_name }} + tag: ${{ github.ref }} + + cross_compile: + name: Cross compile + runs-on: ubuntu-latest + strategy: + matrix: + target: + - armv7-unknown-linux-gnueabihf + steps: + - uses: actions/checkout@v2 + - name: Cache Cargo build + uses: actions/cache@v1 + with: + path: target/ + key: ${{ matrix.os }}-stable-target + restore-keys: | + ${{ matrix.os }}-stable-target + - uses: actions-rs/toolchain@v1 + with: + toolchain: stable + target: ${{ matrix.target }} + override: true + - uses: actions-rs/cargo@v1 + with: + use-cross: true + command: build + args: --release --target=${{ matrix.target }} + - name: Upload binaries to release + uses: svenstaro/upload-release-action@v1-release + if: startsWith(github.ref, 'refs/tags/') + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: target/${{ matrix.target }}/release/blflash + asset_name: blflash-${{ matrix.target }} + tag: ${{ github.ref }} + + \ No newline at end of file