Add New Build and Automated Release Workflow, Eliminating Dependence on External Update Servers#271
Conversation
…nfo.json in the main branch after the new version changes from draft to public release. - Add comments for workflow configuration. - Workflow is built on Windows and may change in the future.
|
Hi @pauliyobo @mush42 |
|
@cary-rowen |
|
Hi @mush42 Here’s a simplified and concise guide to creating a GitHub Personal Access Token (PAT) with only Step 1: Create a Personal Access Token (PAT)
Step 2: Add PAT to GitHub Secrets
|
|
Hi @mush42 |
|
@cary-rowen doing it now. |
|
@cary-rowen please check your role. |
|
Thanks @mush42 Looks like I have permission, |
|
Hi @mush42 Happily, I discovered that we can directly utilize GITHUB's default TOKEN without using PAT, however this was not possible when I tested it in my own forked repo. |
Link to issue number:
None
Description
This Pull Request introduces significant enhancements to the project's automation processes by updating the GitHub Actions workflow and refining the
invokecommands. The primary objectives and changes include:Key Changes
Automated Generation of
update_info.jsonupdate_info.jsonfile to provide necessary update information, including the update bundle, its corresponding hash, and download URL.invoke gen-update-info-filecommand to automatically generate theupdate_info.jsonfile, ensuring consistency and reducing manual intervention.Transition from External Update Server to GitHub Repository
update_info.jsonwas hosted on an external server to provide update information.update_info.jsonfile is placed directly in the main branch of the GitHub repository. When a new version is promoted from draft to official release, the automated workflow submits this file as a Pull Request. To maintain control and ensure accuracy, the PR requires manual merging.Build Enhancements
x86andx64architectures using a matrix strategy, ensuring comprehensive compatibility.Error Handling and Security Improvements
try-catchblocks in PowerShell scripts to gracefully handle failures during asset fetching and downloading.PAT_TOKEN) securely to manage authentication for downloading assets and creating pull requests, preventing exposure of sensitive information.Known Issues
GITHUB_TOKEN. Instead, a separate Personal Access Token (PAT) has been created and is used for this workflow. Specifically, theGITHUB_TOKENcannot access assets in draft status, necessitating the use of the PAT to handle asset downloads and submissions effectively.