Implement GitHub Actions Workflow for Building and Releasing Application
Closed this issue · 0 comments
soaressgabriel commented
Describe the solution you'd like
-
I would like to replace the existing manual building and releasing the application with a GitHub Actions workflow. This workflow should be triggered whenever a new tag is pushed to the repository. The tag name should be used as the version for the software. The workflow should perform the following steps:
- Checkout the repository.
- Set up Python.
- Install the necessary dependencies.
- Create the version file using pyinstaller_versionfile.
- Create the software package with PyInstaller.
- Compress the package into a zip file.
- Test the zip file.
- Compute the SHA512 hash of the zip file.
- Upload the zip file and the hash file as artifacts.
- Create a GitHub release with the version name and upload the zip file as a release asset.
Describe alternatives you've considered
- An alternative solution would be to create a Python script and manually trigger it whenever a new release needs to be built. However, this solution is not as automated and may lead to errors if the script is not run correctly.
Additional context
- This new workflow will make the release process more automated and less error-prone. It will also allow us to track the history of our releases and their corresponding artifacts directly on GitHub.