subsurface/.github/workflows/windows.yml
Dirk Hohndel 2463b315bb Create GitHub release with Windows artifacts
This is using the outdated existing build container. Updating that one should
be next on the todo list.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2023-12-07 01:33:08 -08:00

67 lines
2.1 KiB
YAML

name: Windows
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
buildWindows:
runs-on: ubuntu-latest
container:
image: docker://subsurface/mxe-build-container:2.2
steps:
- name: checkout sources
uses: actions/checkout@v1
- name: create release name
id: tag
run: |
export tag=""
export is_latest=false
if [ "${{ github.ref_type }}" = "tag" ] ; then tag="${{ github.ref_name }}" ; else tag="latest"; is_latest=true ; fi
echo "tag=${tag}" >> $GITHUB_OUTPUT
echo "is_latest=${is_latest}" >> $GITHUB_OUTPUT
- name: tag current version as latest if we don't have a tag
if: ${{ steps.tag.outputs.is_latest == true }}
uses: rickstaa/action-create-tag@v1
with:
tag: "latest"
tag_exists_error: false
force_push_tag: true
message: "latest commit to allow 'release' uploads"
- name: get other dependencies
env:
SUBSURFACE_REPO_PATH: ${{ github.workspace }}
run: |
echo "Running script to install additional dependancies into container"
git config --global --add safe.directory ${SUBSURFACE_REPO_PATH}
git config --global --add safe.directory ${SUBSURFACE_REPO_PATH}/libdivecomputer
cd /win
ln -s /__w/subsurface/subsurface .
bash -x subsurface/.github/workflows/scripts/windows-container-prep.sh 2>&1 | tee pre-build.log
- name: run build
run: |
cd /win
bash -x subsurface/.github/workflows/scripts/windows-in-container-build.sh 2>&1 | tee build.log
grep "Built target installer" build.log
- name: upload binaries
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ steps.tag.outputs.tag }}
prerelease: ${{ steps.tag.outputs.is_latest }}
body: CICD release artifact
fail_on_unmatched_files: false
files: |
./subsurface-installer.exe
./subsurface.exe
./subsurface.exe.debug
./smtk2ssrf-installer.exe
./smtk2ssrf.exe