Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider using nightly.link for easier artifact downloading #588

Open
OverloadedOrama opened this issue Dec 29, 2023 · 1 comment
Open

Comments

@OverloadedOrama
Copy link

Is your feature request related to a problem? Please describe.
In order to download the module, one needs to be logged in to GitHub to download the generated artifacts.

Describe the solution you'd like
https://nightly.link/ allows users to download the module without having to be logged in to GitHub, thus making it easier and more accessible to more people. It automatically provides a way to download the latest artifact, without maintainers having to do any extra steps, besides the initial authorization.

Describe alternatives you've considered
I'm not aware of any alternatives, besides manually uploading the builds to somewhere else, which is extra work.

@Zylann
Copy link
Owner

Zylann commented Dec 29, 2023

Nightly.link is quite a hack and seems like it requires to install the Github App, which I don't use.
There are workarounds mentionned in actions/upload-artifact#51, which involves Github Releases, by having some special release tagged "nightly", which could get updated by Github Action jobs (example here). If something like that is possible I would prefer it, because it doesnt need to setup an extra service/middleman. However I have no idea how that would work with multiple workflow files each having their own artifact. Maybe there is a way to have a workflow run after specific ones, so it can grab their artifacts and generate/update a nightly Release?

Also, at some point (dunno when) I'll have to setup jobs to create Github Releases either way. Releases is the way Github expects builds to be provided. It's missing right now because I dont have a standard release schedule (only symbolic versions when Godot versions are released, which is a slow cycle) and because I just don't know yet how to create Releases using Github Actions (as opposed to publishing them by hand).

It should also be noted that builds right now would be the entire Godot Editor, which occupies a lot of space (especially when you consider all the variants, CPU X OS X template X float), and if you need any other module (or C# support) then you have to build it yourself anyways.
GDExtension builds are the ideal goal to be provided this way, but they arent stable enough at the moment.


Since I just switched development to Godot 4.2, I increased the version, so I decided to create a release that contains all the artifacts currently built by Github Actions: https://github.com/Zylann/godot_voxel/releases/tag/v1.1.0, and will probably do more of these snapshots in the future.
I plan to have more releases in the future with more prebuilt options (some are missing), right now I'm mostly annoyed that Github wants releases to be created by hand.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants