Skip to content

AutoRelease

AutoRelease #20

Workflow file for this run

name: 'AutoRelease'
on:
workflow_dispatch:
inputs:
version_suffix:
description: Suffix of the version number. Can be used to create a preview package.
required: false
type: string
env:
configuration: Release
version_suffix: ${{ github.event.inputs.version_suffix }}
jobs:
build_linux:
name: Build (Linux)
runs-on: ubuntu-latest
container:
image: fedora:latest
env:
DOTNET_SYSTEM_GLOBALIZATION_INVARIANT: 1
defaults:
run:
shell: bash
steps:
- name: Install dependencies
run: sudo dnf -y upgrade && sudo dnf -y install gh meson gobject-introspection-devel git gcc glib2-devel gdk-pixbuf2 gdk-pixbuf2-modules cairo-gobject
- name: Prepare git
run: git config --global core.autocrlf false
shell: bash
- name: Checkout with submodules
uses: actions/checkout@v4
with:
submodules: 'true'
- name: Create Gir.Core
uses: ./.github/actions/create
with:
configuration: ${{ env.configuration }}
source_directory: './src'
script_directory: './scripts'
shell: bash
- name: Pack release version
run: dotnet pack --no-build --nologo -c $configuration --version-suffix "$version_suffix" -o ../Nuget
working-directory: './src'
- name: "Create GitHub release"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
prerelease_flag=""
if [ -n "$version_suffix" ]; then
prerelease_flag="--prerelease"
fi
version=$(dotnet fsi ./scripts/GetVersion.fsx "$version_suffix")
gh release create "$version" --draft --generate-notes --title "$version" $prerelease_flag ../Nuget/*