Skip to content

build-release

build-release #2

Workflow file for this run

name: build-release
on:
workflow_dispatch:
push:
paths:
- 'version.h'
jobs:
build_kkpviewer:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
path: KKPViewer
submodules: recursive
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v2
- name: Get version number
id: version
working-directory: ./KKPViewer/
run: |
$version = (Get-Content version.h | Select-String -Pattern "#define VERSION \"(.*)\"").Matches.Groups[1].Value
echo "version=$($version)" >> $env:GITHUB_OUTPUT
- name: Create tag
working-directory: ./KKPViewer/
run: |
git config --global user.name "${{ github.actor }} (automated)"
git config --global user.email "${{ github.actor }}@users.noreply.github.com"
git tag '${{ steps.version.outputs.version }}'
git push
- name: Build Release|x64
run: msbuild .\KKPViewer\KKPViewer.sln /p:Configuration=Release /p:Platform=x64
- name: Build Release|x86
run: msbuild .\KKPViewer\KKPViewer.sln /p:Configuration=Release /p:Platform=x86
- name: Create subdirs
working-directory: ./
run: |
$packageFolder = "./package/"
if (Test-Path $packageFolder) {
Remove-Item $packageFolder -Recurse -Force
}
mkdir $packageFolder
- name: Collect package
working-directory: ./package/
run: |
cp ../KKPViewer/Release/kkpViewer.exe ./kkpView-x86.exe
cp ../KKPViewer/x64/Release/kkpViewer.exe ./kkpView-x64.exe
cp ../KKPViewer/README.md
- name: ZIP package
working-directory: ./package/
run: 7z a -r -tzip kkpView-${{ steps.version.outputs.version }}.zip * -mx9
- name: Create and Upload Release
uses: softprops/action-gh-release@v2
with:
name: ${{ steps.version.outputs.version }}
tag_name: ${{ steps.version.outputs.version }}
files: ./package/kkpView-${{ steps.version.outputs.version }}.zip
draft: true