on:
release:
types:
- released
name: Release
jobs:
test:
name: Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
- uses: actions-rs/cargo@v1
with:
command: test
build:
name: Build
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
- uses: actions-rs/cargo@v1
with:
command: build
args: --release
- name: Change Binary Permission
run: chmod +x target/release/pct
- name: Archive Binary as an Artifact
uses: actions/upload-artifact@v2
with:
name: binary
path: target/release/pct
- name: Upload as a Release Assets
uses: softprops/action-gh-release@v1
with:
files: |
target/release/pct
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
crate:
name: Crate
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- uses: katyo/publish-crates@v1
with:
registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }}