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
Support pulling from Gitlab (+ other alternative git repository service providers) #80
Comments
I have not much knowledge about the way of working of the Addon Manager, but it looks like the GitPython library or zip files are used, right? If I understood right, this library isn't limited to GitHub, but serves nearly any git repository and the zip library of course too. |
Nothing, gitlab or any others are also supported. Only detail, people without gitpython installed still rely on downloading and unpacking a zip file. This still use gihub urls iirc, it will require some changes probably |
Ok, I looked through the code and if I see it right, the functions get_zip_url(), get_readme_url(), etc. in addonmanager_utilities.py has to be changed. Probably it is not possible to implement a solution for every git hosting service but support for GitLab would be a beginning. Does anyone know a way to find out, where the repository is hosted? |
Lets remember also that this feature is fixed in the Extension Manager, IIRC. |
maybe each addon could optionally provide a zip url in their metadata.txt? |
Hm, will it be part of the 0.19 release (in the daily version it isn't included so far)?
Is the reading of the file already implemented? I ask, because I think, without GitPython it would be service depend again what the exact path is. |
Yes it is. It's just a matter of extending. I'll try to do that this week. EDIT No need! Already implemented: https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/AddonManager/addonmanager_utilities.py#L251 Might not be too future-proof, though... We should find a way to get that more automatically |
Sort of off-topic but relevant: @yorikvanhavre what about starting to consider Extension Manager? |
Unfortunately we already moved the repo to GitHub, but I think, I will survive this. Then we have the GitLab repo for developing and the GitHub repo for stable versions now :) |
sorry it came late :/ in any case i'd like much to have more addons outside the github universe.. that would reforce all our system.. |
We can for the most part now pull from GitLab (and also Debian Salsa). I have some further refinements to this in mind, but the core functionality is implemented. |
@chennes how do we do this with the new changes to Addon Manager? (Or was this feature temporarily suspended?) |
We support GitHub, Gitlab, Framagit, and salsa.debian.org -- in fact, if the Addon specified the URL to the README in its package.xml file, we support any public git repo at all, regardless of its location. |
Probably something we should specify in https://wiki.freecad.org/Package_Metadata |
That's not really a "metadata" question (the documentation about the metadata is already pretty clear that you must specify the repo, and we highly recommend the README). I might tweak the page about the Addon Manager to spell that out, though, I need to work a lot on that page now. |
Happy to help with that. Let me know how I can! |
I'm going to close this as the core issue at hand is resolved. If there are other git hosts that we want to add it's pretty straightforward (especially if they are just hosted Gitlab instances). Those should get their own feature requests. |
Per a recent discussion on the forum:.
The text was updated successfully, but these errors were encountered: