libpod ftbfs in lunar

Bug #2009851 reported by Shengjing Zhu
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
docker.io (Ubuntu)
Fix Released
Undecided
Lucas Kanashiro
libpod (Ubuntu)
Fix Released
Undecided
Reinhard Tartler
runc (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

3.4.4+ds1-1ubuntu1 in lunar-release ftbfs because golang-github-containers-common is synced to a new version, which drops github.com/containers/common/pkg/defaultnet

src/github.com/containers/podman/libpod/runtime.go:23:2: cannot find package "github.com/containers/common/pkg/defaultnet" in any of:
 /<<PKGBUILDDIR>>/_output/src/github.com/containers/podman/vendor/github.com/containers/common/pkg/defaultnet (vendor tree)
 /usr/lib/go-1.20/src/github.com/containers/common/pkg/defaultnet (from $GOROOT)
 /<<PKGBUILDDIR>>/_output/src/github.com/containers/common/pkg/defaultnet (from $GOPATH)

4.3.1+ds1-5 in lunar-proposed ftbfs because golang-github-opencontainers-runc-dev missing a patch
https://salsa.debian.org/go-team/packages/runc/-/blob/debian/1.1.4+ds1-1/debian/patches/0011-export-blockIODevice.patch

# github.com/containers/podman/libpod
src/github.com/containers/podman/libpod/oci_conmon_linux.go:272:24: undefined: configs.BlockIODevice
src/github.com/containers/podman/libpod/oci_conmon_linux.go:276:14: throttle.BlockIODevice undefined (type *configs.ThrottleDevice has no field or method BlockIODevice)

Shengjing Zhu (zhsj)
tags: added: ftbfs
Shengjing Zhu (zhsj)
tags: added: update-excuse
Revision history for this message
Reinhard Tartler (siretart) wrote :

Thanks Shengjing for pointing this out. I believe the best course of action is to upload this patch to ubuntu, which I did with this upload:

Format: 1.8
Date: Fri, 24 Mar 2023 19:05:09 -0400
Source: runc
Architecture: source
Version: 1.1.4-0ubuntu2
Distribution: lunar-proposed
Urgency: medium
Maintainer: Ubuntu Developers <email address hidden>
Changed-By: Reinhard Tartler <email address hidden>
Changes:
 runc (1.1.4-0ubuntu2) lunar-proposed; urgency=medium
 .
   * Import blockIODevice.patch from Debian (LP: #2009851)
Checksums-Sha1:
 d2e5e049a1818525be428df84a26fbca07720341 2425 runc_1.1.4-0ubuntu2.dsc
 eac586f0c3da4db1300f81853e97af221323cf06 10728 runc_1.1.4-0ubuntu2.debian.tar.xz
 44647bbc1629092a30c6e91053c9c37cfef80182 6719 runc_1.1.4-0ubuntu2_source.buildinfo
Checksums-Sha256:
 d478981f6cf4562e317478495f9361c0396797a938c5a02b1fa8c2245ebbfcd1 2425 runc_1.1.4-0ubuntu2.dsc
 b3012203de5b3ea43c96658c5fa7ed13124913dae8ebe88a6e8234e97d373a35 10728 runc_1.1.4-0ubuntu2.debian.tar.xz
 1a95f9f65a392f2a479e03d99b9e47d5be3acf68dafe1008092b5d71c67e0834 6719 runc_1.1.4-0ubuntu2_source.buildinfo
Files:
 6594a158a57fae177cc237eedfd2202d 2425 devel optional runc_1.1.4-0ubuntu2.dsc
 321b73f6dd4f7de4ad1feca2f383ea49 10728 devel optional runc_1.1.4-0ubuntu2.debian.tar.xz
 31a7146f329b1780d93f27252ee88c6a 6719 devel optional runc_1.1.4-0ubuntu2_source.buildinfo

Changed in runc (Ubuntu):
assignee: nobody → Reinhard Tartler (siretart)
status: New → In Progress
assignee: Reinhard Tartler (siretart) → nobody
status: In Progress → Fix Committed
Revision history for this message
Reinhard Tartler (siretart) wrote (last edit ):

So, now with this runc change in, I'm seeing this error in the buildlog:

# github.com/containers/podman/pkg/api/handlers
src/github.com/containers/podman/pkg/api/handlers/types.go:185:17: cannot use ports (variable of type "github.com/docker/go-connections/nat".PortSet) as "github.com/docker/docker/vendor/github.com/docker/go-connections/nat".PortSet value in struct literal

cf. https://launchpadlibrarian.net/657488822/buildlog_ubuntu-lunar-amd64.libpod_4.3.1+ds1-5_BUILDING.txt.gz

Revision history for this message
Reinhard Tartler (siretart) wrote (last edit ):

@lucaskanashiro The error above appears to be a conflict between the a vendored and non-vendored source.

Looking at the runc source package in ubuntu, I see no less than *three* *identical* copies of the docker/go-connections library, that is in conflict with the *system* golang-github-docker-go-connections package.

What is the best way to resolve this issue?

Changed in runc (Ubuntu):
status: Fix Committed → Fix Released
Changed in libpod (Ubuntu):
status: New → Confirmed
Changed in libpod (Ubuntu):
assignee: nobody → Reinhard Tartler (siretart)
Changed in docker.io (Ubuntu):
assignee: nobody → Lucas Kanashiro (lucaskanashiro)
Changed in libpod (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Shengjing Zhu (zhsj) wrote :

The golang-github-docker-docker-dev in ubuntu is unfortunately unusable.

Well I think the best way to forward is to split docker.io and golang-github-docker-docker-dev to two separated source and manually sync golang-github-docker-docker-dev from debian. Though it looks like a non trivial work.

Revision history for this message
Steve Langasek (vorlon) wrote :

With the split of docker.io into docker.io and docker.io-app, this is now resolved, and libpod has been synced in mantic.

Changed in docker.io (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.