sbt/.github/workflows/sbtw-release.yml

54 lines
1.4 KiB
YAML

name: sbtw Release
on:
release:
types: [published]
workflow_dispatch:
permissions:
contents: write
jobs:
build-and-upload:
runs-on: windows-latest
steps:
- uses: actions/checkout@v6
- name: Setup JDK
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: "23"
cache: sbt
- name: Setup sbt
uses: sbt/setup-sbt@v1
- name: Setup Windows C++ toolchain
uses: ilammy/msvc-dev-cmd@v1
- name: Build sbtw native image
uses: nick-fields/retry@v3
with:
timeout_minutes: 15
max_attempts: 3
shell: bash
command: sbt -Dsbt.io.virtual=false sbtw/nativeImage
env:
JAVA_OPTS: -Xms800M -Xmx2G -Xss6M -XX:ReservedCodeCacheSize=128M -server -Dfile.encoding=UTF-8
- name: Upload sbtw to Release
if: github.event_name == 'release'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ github.event.release.tag_name }}
files: sbtw/target/bin/sbtw*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload sbtw artifact (manual run)
if: github.event_name == 'workflow_dispatch'
uses: actions/upload-artifact@v4
with:
name: sbtw-windows-${{ github.sha }}
path: sbtw/target/bin/sbtw*