Hello, I’m using GitLab in Docker container, everything is fine.
But I have some troubles with automatic updates, so I’m just curious, is there an API to get latest version of GitLab?
So far, I can query https://version.gitlab.com/check.svg? …, then parse XML, and then made update if updates is available. But, that’s not very convenient.
Would be great, if I can make some request like https://version.gitlab.com/api/v1/version and get latest stable version available.
Thanks in advance.
hozawa
September 3, 2017, 9:12pm
2
Maybe I missed the point, but how that can help me?
I need to know if there are updates available, not the current version of the GitLab instance
hozawa
September 5, 2017, 2:23am
4
Sorry. You can just curl the following uri in github gitlab repo to the get tags and parse the first name without suffix “.pre” or “-rc”.
https://api.github.com/repos/gitlabhq/gitlabhq/tags
Thanks.
So, when the new release is pulled to Github I can be sure that I can pull this version from Docker Hub?
So far, I use https://version.gitlab.com/check.svg?gitlab_info=eyJ2ZXJzaW9uIjoiOS41LjAifQ==
Where gitlab_info is base64-encoded version of my GitLab instance, and then I can parse reply, which is something like this:
update available
And I can be sure, that newer version is available from Docker Hub.
hozawa
September 5, 2017, 8:38pm
6
It’s the source repository for the docker images.
If you want to be absolutely sure, you can try querying the dockerhub repo to get the tag list.
curl -s https://hub.docker.com/v2/repositories/gitlab/gitlab-ce/tags/?page_size=5 | sed “s/,/\n/g” | grep name | cut -d ‘"’ -f 4
Huh, thanks mate. I’ll try this.
Sadly, that there is no convenient way to do this, something like Update API.
I didn’t see this when I opened this: Monitoring For Gitlab Software Package Updates and CVEs?
TLDR; you can get available updates with something like this:
VERSION=`echo '{"version": "16.8.1"}' | base64`
curl -e "https://myserver.some.domain" "https://version.gitlab.com/check.json?gitlab_info=${VERSION}"
iwalker
February 16, 2024, 10:09am
9
There is the metadata API which gives you the version for Gitlab:
It supercedes the version API which is mentioned here:
You can run both of those against your instance, and the Gitlab SaaS one and compare the results.