Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds a GitHub workflow to generate zip files only of the Windows distribution #952

Open
wants to merge 14 commits into
base: master
Choose a base branch
from
60 changes: 60 additions & 0 deletions .github/workflows/workflows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: Build and ZIP for Windows

on: [push]
jobs:
build:
runs-on: ubuntu-latest

steps:
# - name: Get current date
# id: date
# run: echo "date=$(date +'%Y%m%d-%H%M%S')" >> $GITHUB_OUTPUT
- uses: actions/checkout@v3
with:
fetch-depth: 1
- uses: actions/setup-node@v3
with:
node-version: 18
cache: npm
# hydrate node modules
- run: npm install
# install wine64
- run: sudo apt-get update -y
- run: sudo apt-get install -y wine64
# make the windows client
- run: node mk w
# import package.json
- run: |
echo 'PACKAGE_JSON<<EOF' >> $GITHUB_ENV
cat ./package.json >> $GITHUB_ENV
echo 'EOF' >> $GITHUB_ENV
# convert date to string usable in file name
- run: npm install strftime
- uses: actions/github-script@v6
id: date
with:
result-encoding: string
script: |
const strftime = require('strftime');
const {stdout} = await exec.getExecOutput('git show -s HEAD --pretty=format:%ci'); // "2023-05-02 12:01:02 +0200"
const date = new Date(stdout);
const fmt = strftime('%Y%m%d-%H%M%S',date);
return fmt;
# rename exe and zip client
- name: Prepare zip
run: |
cd _/${{ fromJson(env.PACKAGE_JSON).name }}/${{ fromJson(env.PACKAGE_JSON).productName }}-win32-ia32
mv ${{ fromJson(env.PACKAGE_JSON).productName }}.exe Ride.exe
zip -r -9 ../../../ride.zip *
- name: Create Release and Upload Assets
uses: lstefano71/github-release@2.0.4
with:
token: ${{ secrets.GITHUB_TOKEN }}
tag: v${{ steps.date.outputs.result }}
name: Release ${{ steps.date.outputs.result }} (${{ github.ref }})
files: ride-${{ steps.date.outputs.result }}.zip:./ride.zip
gzip: false
draft: false
prerelease: false