Release System: Auto Update 'Addon Table' URLs & Upload Addon Zips #123
No reviewers
Labels
No Label
Kind
Breaking
Kind
Bug
Kind: Community
Kind
Documentation
Kind
Easy
Kind
Enhancement
Kind
Feature
Kind
Proposal
Kind
Security
Kind
Studio Request
Kind
Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: studio/blender-studio-tools#123
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "(deleted):feature/release-system-atuo-update-table"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What's Changed:
TODO
WIP: Release System: Automatically Update Table Version Numbeto WIP: Release System: Automatically Update Table Version Number1451289421
toe656198556
@fsiddi per your instructions I have committed the DIST folder to the repo in this branch.
The intention is that all the zips from the dist folder will automatically be pushed to https://studio.blender.org/pipeline/addons/overview to make them available for download.
This PR automatically updates the version numbers in the tables URLs and uploads the Zips (marked as LFS) to the repo. I just wanted to confirm that this is the correct method for submitting the zips before I merged it.
WIP: Release System: Automatically Update Table Version Numberto Release System: Automatically Update Table Version NumberRelease System: Automatically Update Table Version Numberto Release System: Automatically Update Table Version Number & Upload Addon ZipsRelease System: Automatically Update Table Version Number & Upload Addon Zipsto Release System: Auto Update 'Addon Table' URLs & Upload Addon Zips34a72c3683
to30bfc6225f
Hello @fsiddi I had a conference with @ZedDB about this topic. He and I are not a fans of uploading the zips directly to the repo, and after creating this PR I can see that this DIST folder will rapidly expand in size with each new release.
If the purpose of uploading ZIPS to the git repo is to eventually copy it to the web server, this can be seen as redundant; users would be cloning down the DIST folder that they don't need, because they can generate these files themselves with the packaging script.
In light of these concerns we are providing two alternative solutions.
Possible Solutions
1: The Script that Copies the Repo Should also Package the Add-ons
The script that is currently used to push Doc changes to https://studio.blender.org/pipeline/ (which I call
repo->webserver script
)should also handle the creation and uploading of zip folder.The process of releasing would be
repo->webserver script
would find these version bump commits and create zips for each addon and upload them to the webserver.Advantages
Disadvantages
repo->webserver script
is packaging. So these two pieces of code depend on eachother2: Use the Releases Page on Gitea
I know there is some reluctance to integrate further into Gitea, but this does seem like a more logical solution... in my opinion
In this senario each time the add-on release script is run we will create a "mono tag" that will indicate pipeline release. So currently we are on pipeline version 0.0.1. Each Pipeline release would contain all the addon zips with their own version numbers. The Release page would host the zips we intend to be downloaded from the addons table.
For example I created a test release here: https://projects.blender.org/TinyNick/blender-studio-tools/releases/tag/0.0.1
Advantages
repo->webserver script
.Disadvanatages
Please let me know your opinion on this. My preference is solution 2.
30bfc6225f
to2d2399660b
We discussed IRL and agree to use the release pages. Interaction with Gitea should happen through the web API, using the
requests
library in the simplest way possible. The API will require a token, which can be stored in the.env
file.Moving the changes outlines in this pull request into studio/blender-studio-pipeline#134
Pull request closed