Closed GurliGebis closed 1 month ago
The version of iproute2 found in the official {circinus|sagitta} repo is 6.6.0. This version is lower than that found in the upstream Bookworm (for Circinus and Sagitta) Debian repos. The version of minisign found in the official Equuleus repo is 0.9. This version is lower than that found in the upstream Bookworm Debian repos. It is not found in the Sagitta repo. The version of ocserv found in the official Equuleus repo is 1.1.6-3. This version is equivalent to that found in the upstream Bookworm Debian repos. It is not found in the Sagitta repo.
You should not build these for Sagitta. I'm unsure of the behavior around ocserv with its matching version, but on Sagitta .iso build, even if these packages are present in your repo, you should pull in the upstream version instead.
The evidence that this is the case can be found in the 1.5 rolling .iso where the current
repo has the mentioned packages, but the .iso built has newer versions.
From vyos-1.5-rolling-202406060020-amd64.iso
iproute2 6.9.0-1~bpo12+1
minisign 0.11-1
ocserv 1.1.6-3
@GurliGebis These packages are only in equuleus branch. If you don't see the Jenkinsfile on the GIT for sagitta then Jenkins doesn't do anything and acts like the branch doesn't exist. Thus this looks like visual bug, I will mark it as equuleus only.
@Crushable1278 We don't really build these but I would like to clear some things up.
Let's take iproute2 as example - http://dev.packages.vyos.net/?dir=repositories/sagitta/pool/main/i/iproute2 the official repo has this version (iproute2_6.6.0-1~bpo12+1_amd64.deb). It's the same for current.
Why they have it there? The 6.6.0 in repo is just leftover from the previous times and exists there for no reason?
That's not issue though. If the Debian has newer version and the package isn't specifically pinned to VyOS repository (iproute2 isn't) then the apt install
decides for it self what it wants and takes the Debian version since it's newer.
That's why you don't need to worry if we would build some redundant package with older version - it will be left unused like it does with the official repository. It's not the case with these packages but I know you likely will find some where we do this.
We take the simpler route to replicate whatever VyOS has since if you have many packages then it's not easy to verify all of them - specifically for branches where we don't even have official ISO. I know sagitta is very close to rolling but equuleus is not.
Do you agree that this way its non-issue to have some redundant packages with older version?
I was more thinking how jenkins handles it (being asked to compile for a branch where the Jenkinsfile is missing) š
@GurliGebis You can see what it does if you look at the branch indexing log:
Checking branches...
Checking branch equuleus
āpackages/iproute2/Jenkinsfileā found
Met criteria
No changes detected: equuleus (still at b3da0d46ea029b65a8853b3197374931703a4b60)
Checking branch sagitta
āpackages/iproute2/Jenkinsfileā not found
Does not meet criteria
Processed 10 branches
[Fri Jun 07 07:07:07 CEST 2024] Finished branch indexing. Indexing took 1.7 sec
Finished: SUCCESS
The condition is generally - 1) branch exists 2) there is Jenkinsfile. If one of those isn't met then Jenkins silently waits for you to create branch or put Jenkinsfile there.
Okay, that makes sense š
I just noticed something - not sure if it is a problem though.
The following three packages is defined for
sagitta
in thejobs.json
file, pointing to thevyos/vyos-build
repo:However, if you look here: https://github.com/vyos/vyos-build/tree/sagitta/packages - those folders are missing from the
sagitta
branch. How does the system handle this?