Files
mcaselector-lite/.github/workflows/release.yaml

50 lines
1.6 KiB
YAML

# Copyright (c) 2025 Quinn
# Licensed under the MIT Licence. See LICENSE for details
name: release
on:
release:
types:
- published
workflow_dispatch:
inputs:
release_tag:
required: true
description: the tag to release for
default: ""
jobs:
release:
runs-on: ubuntu-latest
container:
image: ghcr.io/thepigeongenerator/mcaselector-lite:latest
strategy:
matrix:
include:
- kernel: linux
march: x86_64
cc: x86_64-linux-gnu-gcc
- kernel: mingw
march: x86_64
cc: x86_64-w64-mingw32-gcc
env:
OUT: ${{github.workspace}}/mcaselector-lite-${{matrix.march}}-${{matrix.kernel}}-${{github.event.release.tag_name || github.event.inputs.release_tag}}.zip
steps:
- uses: actions/checkout@v4
- name: compile ${{matrix.march}}-${{matrix.kernel}}
run: make compile MARCH=${{matrix.march}} KERNEL=${{matrix.kernel}} CC=${{matrix.cc}} -j
- name: compress binary information
run: |
cd "${{github.workspace}}/bin/${{matrix.march}}-${{matrix.kernel}}/${{github.event.release.tag_name || github.event.inputs.release_tag}}/rel/" || exit 1
zip -rv "${{env.OUT}}" *
cd -
# upload to the release
- name: upload release
uses: softprops/action-gh-release@v2
if: ${{!env.ACT}}
with:
files: ${{env.OUT}}
# upload to the artefact directory if running locally with act
- uses: actions/upload-artifact@v4
if: ${{env.ACT}}
with:
path: ${{env.OUT}}