This document explains how to create releases for the Holdfire application using the automated GitHub Actions workflows.
The following release scripts have been added to package.json:
npm run release: Builds and publishes the app to all configured platforms, always publishingnpm run release:github: Builds and publishes the app specifically to GitHub releases
When you push a tag that matches the pattern v* (e.g., v1.0.0), the release.yml workflow will automatically:
- Check out the code
- Set up Node.js environment
- Install dependencies
- Build the Electron app for macOS, Linux, and Windows
- Create a GitHub release with the built artifacts
To create an automated release:
git tag v1.0.0
git push origin v1.0.0The manual-release.yml workflow can be triggered manually from the GitHub UI:
- Go to the "Actions" tab in your repository
- Select "Manual Release" workflow
- Click "Run workflow"
- Enter the version number (e.g.,
1.0.0) - Optionally mark as pre-release
- The workflow will build and create a release with the specified version
For the release process to work properly, you need:
- A GitHub personal access token with appropriate permissions
- The
GITHUB_TOKENsecret properly configured in your repository settings - Proper signing certificates for macOS (if applicable)
To build the app locally for testing before releasing:
# Build for current platform
npm run electron:build
# Build for specific platforms
npm run electron:build:mac # macOS
npm run electron:build:win # Windows
npm run electron:build:linux # Linux