name: Publish
on:
push:
tags:
- 'v*'
jobs:
build:
name: Build release artifacts for ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
name: [
linux,
windows,
macos
]
include:
- name: linux
os: ubuntu-18.04
artifact_name: "target/dist/*.zip"
asset_name: mdbook-linkcheck-linux
- name: windows
os: windows-latest
artifact_name: "target/dist/*.zip"
asset_name: mdbook-linkcheck-windows
- name: macos
os: macos-latest
artifact_name: "target/dist/*.zip"
asset_name: mdbook-linkcheck-macos
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
- name: Build
run: cargo xtask dist
- name: Upload binaries to release
uses: actions/upload-artifact@v2
with:
name: ${{ matrix.asset_name }}
path: ${{ matrix.artifact_name }}
create-release:
name: Create Release
runs-on: ubuntu-latest
needs: build
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Fetch Pre-Compiled Binaries
uses: actions/download-artifact@v2
with:
path: public
- name: Publish the Release
uses: ncipollo/release-action@v1
with:
artifacts: "public/mdbook-linkcheck-*/*.zip"
body: |
Released ${{ github.ref }}.
token: ${{ secrets.GITHUB_TOKEN }}