59 lines
No EOL
2 KiB
YAML
59 lines
No EOL
2 KiB
YAML
# .github/workflows/release.yml
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'release*'
|
|
|
|
jobs:
|
|
release:
|
|
name: release ${{ matrix.target }}
|
|
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
|
|
steps:
|
|
- uses: actions/checkout@master
|
|
with:
|
|
ssh-key: "${{secrets.RELEASE_KEY}}"
|
|
- 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: Compile and release
|
|
uses: rust-build/rust-build.action@v1.4.3
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
RUSTTARGET: ${{ matrix.target }}
|
|
ARCHIVE_TYPES: ${{ matrix.archive }} |