How to update Hog to a newer release
How to update Hog to a newer release¶
This guide will help you to update Hog to the version you want. We assume you already have a repository handled with Hog that is hosted on CERN Gitlab.
On your project’s Gitlab website, create a new merge request and a new branch starting from master.
Note
If you are already working on a branch on your HDL repository, you can update Hog within that branch. (You can also create a new branch locally and open the merge request on the website later.)
Checkout the branch and go into the Hog directory. Now if you want to update Hog to the latest version:
cd Hog
git checkout master
git pull
Now execute a git describe
to find out what version you got:
git describe
You should obtain something like HogYYYY.n
(e.g. Hog2020.1
) or vX.Y.Z
(e.g. v1.2.3
).
If you want to update to a specific version, go to Hog [repository][https://gitlab.cern.ch/hog/Hog/-/releases] and choose what version you want to update to, let’s say you pick version v1.2.3
.
cd Hog
git checkout v1.2.3
Now you have to update your .gitlab-ci.yml
file, used to configure the GitLab continuous integration (CI). If you are not using Gitlab CI you can skip this part.
Go back to your repo and edit the .gitlab-ci.yml
with your favourite editor, say emacs:
cd ..
emacs .gitlab-ci.yml
At the beginning of the file, in the include section you have a ref, similar to this:
include:
- project: 'hog/Hog'
file: '/hog.yml'
ref: 'va.b.c'
Tip
In older Hog versions, the file used to be called gitlab-ci.yml
, so if you were using an older version of Hog, please change gitlab-ci.yml
to hog.yml
.
Change the ref to the new version you’ve just pulled:
include:
- project: 'hog/Hog'
file: '/hog.yml'
ref: 'vX.Y.Z'
Save the file and close the editor.
Note
If you are using the dynamic CI, the include section would look like:
include:
- project: 'hog/Hog'
file: '/hog-dynamic.yml'
ref: 'vX.Y.Z'
Add the modified files (Hog
submodule and .gitlab-ci.yml
), commit, and push:
git add .gitlab-ci.yml Hog
git commit -m "Update Hog to vX.Y.Z"
git push
Finally go to your project’s GitLab website, open a merge request for your branch (if you have not done already) and merge it.