xen-orchestra
xen-orchestra copied to clipboard
Encourage source user to be on latest master commit
This is a pretty important thing, helping both users and us to get more feedback on latest code (also avoiding useless requests on outdated XO source install).
To do that, we could have a way to detect if the current source install is not the latest one available on master, and display the information in the UI. I think that's not too hard to do, what do you think?
I think this would be good as long as you don't make the notification obnoxious. Maybe a simple indicator that you could hover or click to get more info.
Yes, I didn't have in mind something that would be too bothering. It should be visible and understandable :)
Detecting that XO is on latest commit is not an easy thing to do.
And it's even harder to check that all apps have been correctly rebuilt.
Maybe a monthly reminder that the installation is xxx commits behind?
I doubt there’s a way to determine the current commit from XO itself. Version number could probably be checked but even then one might not even have internet access from their XO, depending on usecase so some other message should replace that then.
Not against making a reminder to stay up to date, but trying to make it too smart probably causes more confusion as there’s so many cornercases.
That's easy as long you get the .git
folder, which should be the case on sources installations :)
That's easy as long you get the
.git
folder, which should be the case on sources installations :)
Sure technically you can. Personally I wouldn't expect a software to dig this though. You can't tell right away where the thing was cloned from and .git directory might even contain sensitive information, like passwords. Also nothing prevents to skip using git at all and then .git directory wouldn't exist. One can't make assumptions just based on the correct way of installation.
If there's a .git
folder, it's almost sure it's because it was installed via a git clone :) At least, that's the intended way we document :)
That's why we'll try to get to make a PoC on this, but obviously this won't block XO installation if it's not the case, something like "unknown" version or so.
Yeah 9/10 it's installed following your official documentation. Trying to say that .git directory is sort of something where one doesn't expect the software to go to. I mean for example, i've forked xen-orchestra repo and have cloned it using some credentials from my own fork which are now stored inside .git directory. Do you think XO has any business to go poke inside that directory even if it wouldn't look at the config file where the credentials are? I think no. That's what i meant that there are cases which you can't predict just because there's a .git directory.
There's already existing Open Source software fetching the latest git commit from git log, so I'm sure it will be trivial to do it :)
It is indeed quite trivial to do, and git allows to even correctly format the latest commit hash to only get the hash back without the commit message.
The code should exclusively check current hash version, query what is the latest commit hash in origin/
Maybe a (1) badge in the same page XOA people can register their emails for updates, as it is already a dedicated "fetch updates" page.
Telling users they are outdated might be doable yes :) (as long they have the .git folder)
We might wanna use the GitHub REST API for this: https://api.github.com/repos/vatesfr/xen-orchestra/commits/master
Sounds like a great option indeed.
- Remove xo-web/server version number
- Fetch commit number and compare to see if up to date