name: Release Build
on:
release:
types: [created]
env:
CARGO_TERM_COLOR: always
jobs:
build:
name: Build for ${{ matrix.os }}
runs-on: ${{matrix.os}}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
steps:
- name: Get release
id: get_release
uses: bruceadams/get-release@v1.2.2
env:
GITHUB_TOKEN: ${{ github.token }}
- uses: actions/checkout@v2
- name: Build
run: cargo build --release --verbose --example ggpk
- name: Package
if: matrix.os == 'windows-latest'
run: powershell Compress-Archive target/release/examples/ggpk.exe ${{ matrix.os }}.zip
- name: Package
if: matrix.os != 'windows-latest'
run: zip --junk-paths ${{ matrix.os }} target/release/examples/ggpk
- name: Upload
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.get_release.outputs.upload_url }}
asset_path: ./${{ matrix.os }}.zip
asset_name: ${{ matrix.os }}.zip
asset_content_type: application/zip