This file ( 4kB ) exceeds the allowed full mode (48 kb) size.
The editor full hight is disabled, only scrolling is allowed..
If you wish to edit a file, it is recommended to use the scroll mode as some users do not like the full height
mode, although some users like it.
name: Build and Publish on Tag
on:
push:
tags:
- 'v*'
permissions:
contents: write
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: ['lts/*']
steps:
- uses: actions/checkout@v5
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- name: Run unit tests
run: npx vitest run
- run: npm i -g grunt-cli
- run: grunt
publish-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v5
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version: 'lts/*'
- name: Install dependencies
run: npm install
- name: Fix dependencies before
run: node ./scripts/fix-packages-publish.js before
- name: Publish Windows application
run: npm run publish-windows
env:
GH_TOKEN: ${{ github.token }}
GITHUB_TOKEN: ${{ github.token }}
- name: Fix dependencies after
run: node ./scripts/fix-packages-publish.js after
- name: Upload Windows build to GitHub Release
uses: softprops/action-gh-release@v2.5.0
with:
tag_name: ${{ github.ref_name }}
token: ${{ github.token }}
fail_on_unmatched_files: true
overwrite_files: true
files: |
dist/*.exe
dist/*.blockmap
dist/latest.yml
package-and-release-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v5
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version: 'lts/*'
- name: Install dependencies
run: npm install
- name: Fix dependencies before
run: node ./scripts/fix-packages-publish.js before
- name: Build and package macOS app
run: npm run publish-macos
- name: Fix dependencies after
run: node ./scripts/fix-packages-publish.js after
- name: Upload macOS build to GitHub Release
uses: softprops/action-gh-release@v2.5.0
with:
tag_name: ${{ github.ref_name }}
token: ${{ github.token }}
fail_on_unmatched_files: true
overwrite_files: true
files: |
dist/*.dmg
dist/*.zip
dist/*.blockmap
dist/latest-mac.yml
snap-arm64:
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v5
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version: 'lts/*'
- name: Install dependencies
run: |
npm install
rm -rf node_modules/cpu-features/ || true
- name: Update apt and install snapcraft
run: |
sudo apt-get update
sudo snap install snapcraft --classic
- name: Fix dependencies before
run: |
node ./scripts/fix-packages-publish.js before
node ./scripts/fix-packages-publish.js snap-before
- name: Build arm64 snap
env:
SNAPCRAFT_BUILD_ENVIRONMENT: host
run: npm run publish-electron-arm64
- name: Fix dependencies after
run: |
node ./scripts/fix-packages-publish.js snap-after
node ./scripts/fix-packages-publish.js after
- name: Upload arm64 snap to Snap Store
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_STORE_CREDENTIALS }}
run: |
cd dist
snapcraft upload --release=stable p3x-onenote_*_arm64.snap