From 0bf70cbe072d7412179378d5080ad31944a920dd Mon Sep 17 00:00:00 2001 From: Jordon Brooks Date: Sat, 10 Jun 2023 23:38:19 +0100 Subject: [PATCH] Added release workflow --- .github/workflows/release.yml | 64 +++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..7d34d6a --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,64 @@ +name: 'release' +on: + workflow_dispatch: + release: + types: [created] + +jobs: + test-tauri: + strategy: + fail-fast: false + matrix: + platform: [ubuntu-22.04, windows-latest] + include: + - target: x86_64-pc-windows-gnu + archive: zip + - target: x86_64-unknown-linux-musl + archive: tar.gz + + runs-on: ${{ matrix.platform }} + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: install Rust stable + uses: dtolnay/rust-toolchain@stable + + - name: Setup and use cache + uses: Swatinem/rust-cache@v2 + with: + # The prefix cache key, this can be changed to start a new cache manually. + # default: "v0-rust" + prefix-key: "" + + # A cache key that is used instead of the automatic `job`-based key, + # and is stable over multiple jobs. + # default: empty + shared-key: "" + + # An additional cache key that is added alongside the automatic `job`-based + # cache key and can be used to further differentiate jobs. + # default: empty + key: "" + + # A whitespace separated list of env-var *prefixes* who's value contributes + # to the environment cache key. + # The env-vars are matched by *prefix*, so the default `RUST` var will + # match all of `RUSTC`, `RUSTUP_*`, `RUSTFLAGS`, `RUSTDOC_*`, etc. + # default: "CARGO CC CFLAGS CXX CMAKE RUST" + env-vars: "" + + # The cargo workspaces and target directory configuration. + # These entries are separated by newlines and have the form + # `$workspace -> $target`. The `$target` part is treated as a directory + # relative to the `$workspace` and defaults to "target" if not explicitly given. + # default: ". -> target" + workspaces: ". -> target" + + - name: Build and archive + uses: rust-build/rust-build.action@v1.4.3 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + RUSTTARGET: ${{ matrix.platform }} + EXTRA_FILES: "README.md LICENSE"