[SRU] FTBFS in Focal

Bug #1897967 reported by Lucas Kanashiro on 2020-09-30
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
prometheus-alertmanager (Ubuntu)
Undecided
Unassigned
Focal
Undecided
Unassigned

Bug Description

[Impact]

The package FTBFS in Focal because a newer version of golang-github-prometheus-common was introduced after prometheus-alertmanager and a rebuild was not done. Not being able to build the package from source does not allow uploads of eventual fixes (security or regular ones) which is definitely not good for the users.

The Prometheus common lib API change which is impacting prometheus-alertmanager is minor. There is an extra argument in NewClientFromConfig function to enable or not HTTP/2. The proposed fix apply a patch enabling HTTP/2 in all the calls made to NewClientFromConfig, since this was the previous behavior (http/2 enabled).

[Test Case]

Try to build the package in Focal:

$ lxc launch ubuntu-daily:focal builder
$ lxc shell builder
# echo "deb-src http://archive.ubuntu.com/ubuntu/ focal main universe" > \
         /etc/apt/sources.list.d/source.list
# apt update && apt upgrade -y
# apt install -y dpkg-dev
# apt source prometheus-alertmanager
# apt build-dep -y prometheus-alertmanager
# cd prometheus-alertmanager-0.15.3+ds
# dpkg-buildpackage

To fix the FTBFS apply the debdiff attached to this bug and build the package again.

[Regression Potential]

This SRU would not change the current behavior because this extra argument was added to allow users to disable HTTP/2, check out this upstream commit:

https://github.com/prometheus/common/commit/273427a9fd1

So I believe the potential of a regression is quite low.

[Original Description]

Currently, prometheus-alertmanager version 0.15.3+ds-3 FTBFS in Focal:

https://paste.ubuntu.com/p/CcCYC3w3YC/

The Prometheus common golang library changed its API and the alertmanager version we have in Focal is not ready for it.

The attached debdiff fixes the FTBFS in Focal, complying to the Prometheus common lib API change. It basically enables HTTP/2 in all calls to NewClientFromConfig.

tags: added: patch
description: updated
Changed in prometheus-alertmanager (Ubuntu):
status: New → Invalid
summary: - FTBFS in Focal
+ [SRU] FTBFS in Focal
description: updated
Andreas Hasenack (ahasenack) wrote :

As you said on MM, looks like https://github.com/prometheus/common/commit/273427a9fd1 was added to allow to disable http/2, so it was being used already and this debdiff should not introduce a behavior change, which is good.

Have you checked which other rdeps fail to build?

description: updated
description: updated
description: updated

I haven't checked the other rdeps but they are potentially broken. Those are the rdeps:

$ reverse-depends -b -r focal golang-github-prometheus-common-dev
Reverse-Build-Depends
* etcd
* gitlab-workhorse
* golang-github-prometheus-client-golang
* nomad
* prometheus
* prometheus-alertmanager
* prometheus-apache-exporter
* prometheus-bind-exporter
* prometheus-bird-exporter
* prometheus-blackbox-exporter
* prometheus-haproxy-exporter
* prometheus-ipmi-exporter
* prometheus-mysqld-exporter
* prometheus-nginx-vts-exporter
* prometheus-node-exporter
* prometheus-postgres-exporter
* prometheus-pushgateway
* prometheus-snmp-exporter
* prometheus-sql-exporter
* prometheus-squid-exporter

Prometheus itself already FTBFS in Focal but because of another issue:

https://bugs.launchpad.net/ubuntu/+source/prometheus/+bug/1878709

Hello Lucas, or anyone else affected,

Accepted prometheus-alertmanager into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/prometheus-alertmanager/0.15.3+ds-3ubuntu1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in prometheus-alertmanager (Ubuntu Focal):
status: New → Fix Committed
tags: added: verification-needed verification-needed-focal

I have verified the package in focal-proposed and it indeed fixes the FTBFS. I did the following to test it:

$ lxc launch ubuntu-daily:focal builder
$ lxc shell builder
# echo "deb-src http://archive.ubuntu.com/ubuntu/ focal-proposed main universe" > \
         /etc/apt/sources.list.d/source.list
# apt update && apt upgrade -y
# apt install -y dpkg-dev
# apt source prometheus-alertmanager
# apt build-dep -y prometheus-alertmanager
# cd prometheus-alertmanager-0.15.3+ds
# dpkg-buildpackage -us -uc

tags: added: verification-done verification-done-focal
removed: verification-needed verification-needed-focal
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers