OpenAsar/.github/workflows/release_nightly.yml

55 lines
No EOL
1.6 KiB
YAML

name: Release Nightly
on:
push:
branches: [ main ]
paths:
- 'src/**'
- 'polyfills/**'
- '.github/workflows/release_nightly.yml'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Setup Node.js v16.x
uses: actions/setup-node@v2
with:
node-version: 16.x
- name: NPM Install
run: cd src; npm i; cd ..
- name: Pack base asar
run: |
npm i -g asar
node injectPolyfills.js
rm -rf src/package-lock.json src/node_modules/.package-lock.json src/splash/splashScreen.js.self src/node_modules/**/package.json src/node_modules/**/*.md src/node_modules/**/.*.yml src/node_modules/**/.npmignore src/node_modules/**/LICENSE src/node_modules/**/test*
npx asar pack src app.asar
- name: Pack minified asar
run: |
npm i -g esbuild uglifyjs minify-json
npx esbuild ./src --bundle --platform=node --external:electron --external:original-fs --external:auto-updater --outfile=index.js
npx uglifyjs --compress --mangle -o index.js -- index.js
cp src/package.json .
npx minify-json package.json
rm -rf src/*
cp index.js src
cp package.json src
npx asar pack src minified.asar
- name: GitHub Release
run: |
gh release delete ${{ env.VERSION }} -y
gh release create ${{ env.VERSION }} -p -t "${{ env.NAME }}" ${{ env.FILES }}
env:
GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
VERSION: 'nightly'
NAME: 'Nightly'
FILES: app.asar minified.asar