We need to set up GitHub Actions to automatically create releases with builds for all major platforms upon successful merges to the master branch. This will streamline our release process and ensure that we consistently provide up-to-date binaries for our users.
Requirements:
Set Up GitHub Actions Workflow:
Trigger on successful merges to the master branch.
Build the project for all major platforms: Windows, macOS, and Linux.
Build Configuration:
Ensure the build process includes all necessary dependencies and configurations for each platform.
Optimize the build process to minimize time and resource usage.
Automate Release Creation:
Automatically create a new release on GitHub.
Include build artifacts (binaries) for each platform in the release.
Tag the release with the appropriate version number.
Testing:
Implement steps to run tests on each build to ensure stability and correctness before creating the release.
The current release (metadata-1.0.0-beta.2) was built on a Linux computer, which means it includes only the Linux-specific artifacts of JavaFX. As a result, attempting to run this release on Windows results in the following error:
WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @77ec78b9'
Error initializing QuantumRenderer: no suitable pipeline found
java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
...
Exception in thread "main" java.lang.RuntimeException: No toolkit found
...
To resolve this issue, we need to include JavaFX artifacts for all major platforms (Windows, macOS, and Linux) in our release builds.
Description:
We need to set up GitHub Actions to automatically create releases with builds for all major platforms upon successful merges to the
master
branch. This will streamline our release process and ensure that we consistently provide up-to-date binaries for our users.Requirements:
master
branch.Example Workflow Snippet:
Important Note
Current Release Runs on Linux Only
The current release (metadata-1.0.0-beta.2) was built on a Linux computer, which means it includes only the Linux-specific artifacts of JavaFX. As a result, attempting to run this release on Windows results in the following error:
To resolve this issue, we need to include JavaFX artifacts for all major platforms (Windows, macOS, and Linux) in our release builds.