Missing dep8 tests

Bug #1679386 reported by Joshua Powers
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
rabbitmq-server (Ubuntu)
Fix Released
High
Mitchell Dzurick
Focal
Fix Released
High
Mitchell Dzurick
Jammy
Fix Released
High
Mitchell Dzurick
Noble
Triaged
High
Unassigned
Oracular
Fix Released
High
Mitchell Dzurick

Bug Description

[ Impact ]
There are no dep8 tests in this package. In addition, the debian/watch file is not working correctly which is corrected in this bug.

[ Test Plan ]
(1) The new dep8 tests pass
(2) the new debian/watch pulls the correct file. e.g. running the following command: `uscan --download-current-version` creates the file properly.

[ Where things could go wrong ]
* New dep8 tests could fail if package dependencies are upgraded. Since these are relatively new, it is unseen if they can be flaky when systems are slow.

[ Original Description ]
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

As of April 3, 2017, this source package did not contain package tests
in the current development release of Ubuntu, named Zesty. This was
determined by running `pull-lp-source rabbitmq-server zesty` and then
checking for the existence of 'debian/tests/' and
'debian/tests/control'. The package was also checked for 1) a test suite
declaration in the debian/control file, 2) any 'test', 'tests',
'testsuite', or 'test-suite' directories, 3) go tests (if applicable),
and 4) a test suite declared in a setup.py (if applicable).

If you feel this report is incorrect (e.g. this is a library or a source
only package) or the check above missed some other package level test
please reply explaining why and mark this bug as 'invalid'.

Test automation is essential to higher levels of quality and confidence
in updates to packages. dep8 tests [1] specify how automatic testing can
be integrated into packages and then run by package maintainers before
new uploads.

This defect is to report the absence of these tests and to report the
opportunity as a potential item for development by both new and
experienced contributors.

Thanks!

[1] http://packaging.ubuntu.com/html/auto-pkg-test.html

 affects ubuntu/rabbitmq-server
 status new
 importance wishlist
 tag needs-dep8

- ---
Joshua Powers
Ubuntu Server
Canonical Ltd

-----BEGIN PGP SIGNATURE-----

iQIcBAEBCAAGBQJY4svdAAoJEIP8BxPaZgwlY5EP/3SrvRNL/jY88+R+Q+YHPT2e
E1pACCIVNG746W5Wl7VwWO9Il0cIS2SOwChXCwMErAWgtoX/74xKgFAMhMHY3ZSA
CCQ4aJ5KVG74feHuMAogY30B7CPiiEv/35uY7F09iy6y9I3eSem6IH8zGm1YD8o/
yZdk8CDvAUs7te8VX+MHE6HD2Lhebx7Y9hGyeP2P1Yffw7PwYSjUxRUoVy8C83Rs
EVv+RGg8PAZzZxZQ1RtTm8aglXDpYL6WW3vgj5Ha6zMs3WSWEN0RTSs/titiyaQQ
nyINKrnA+30sljj5iKdNxg3oIa7xm9o2fOoeYX7goen0zCyNNSmq/ztAp+07Ojvt
fsG4/2KvXmCUhHjr4jUlIkwFjOjzWKhsXaZU76JNZFJB/IR9mXOobSIbw08DRC++
EFzinkpcq/MN6DBTlPQzs5pA60Y5/0uod/wQVl05whQ+5B8FBgFuZ21FJsTeeiye
5kTHPjINoqVkHZBnsNan4f4AxoehhgxccgJUB0RJf4NyqmfCqpya7y/SMOk9My9P
/Zxec2XsvIGfZicXwk5wnfTwt0/BabSyRoycFIiClQXOj+HwF8IvVUf3F6G85qcg
FaCGLlclMsfxHgzBF25xvwHkSLhyM7+Y5tV1cNeFd/fNReoKqo/oVmr49YinbnK1
8dC3HhWYVHF9sST7gFWh
=sMZR
-----END PGP SIGNATURE-----

Related branches

CVE References

James Page (james-page)
Changed in rabbitmq-server (Ubuntu):
status: New → Triaged
Changed in rabbitmq-server (Ubuntu):
assignee: nobody → Mitchell Dzurick (mitchdz)
Changed in rabbitmq-server (Ubuntu):
status: Triaged → In Progress
Changed in rabbitmq-server (Ubuntu Focal):
status: New → In Progress
Changed in rabbitmq-server (Ubuntu Jammy):
status: New → In Progress
Changed in rabbitmq-server (Ubuntu Noble):
status: New → In Progress
assignee: nobody → Mitchell Dzurick (mitchdz)
Changed in rabbitmq-server (Ubuntu Jammy):
assignee: nobody → Mitchell Dzurick (mitchdz)
Changed in rabbitmq-server (Ubuntu Focal):
assignee: nobody → Mitchell Dzurick (mitchdz)
importance: Undecided → High
Changed in rabbitmq-server (Ubuntu Jammy):
importance: Undecided → High
Changed in rabbitmq-server (Ubuntu Noble):
importance: Undecided → High
Changed in rabbitmq-server (Ubuntu Oracular):
importance: Wishlist → High
Changed in rabbitmq-server (Ubuntu Oracular):
status: In Progress → Fix Committed
tags: added: block-proposed-noble
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package rabbitmq-server - 3.12.1-1ubuntu2

---------------
rabbitmq-server (3.12.1-1ubuntu2) oracular; urgency=medium

  * Added new dep8 tests (LP: #1679386):
    - d/t/hello-world
    - d/t/publish-subscribe
    - d/t/rpc
    - d/t/work-queue
    - d/t/smoke-test: remove unnecessary redirection and shell set
  * d/watch: update to find upstream tarball, and verify its signature
  * d/upstream/signing-key.asc: added, downloaded from
    https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc

 -- Mitchell Dzurick <email address hidden> Tue, 23 Jul 2024 11:43:35 -0700

Changed in rabbitmq-server (Ubuntu Oracular):
status: Fix Committed → Fix Released
Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello Joshua, or anyone else affected,

Accepted rabbitmq-server into noble-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/rabbitmq-server/3.12.1-1ubuntu1.1 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-noble to verification-done-noble. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-noble. 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 rabbitmq-server (Ubuntu Noble):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-noble
description: updated
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Hello Joshua, or anyone else affected,

Accepted rabbitmq-server into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/rabbitmq-server/3.9.27-0ubuntu0.1 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-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. 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 rabbitmq-server (Ubuntu Jammy):
status: In Progress → Fix Committed
tags: added: verification-needed-jammy
Changed in rabbitmq-server (Ubuntu Focal):
status: In Progress → Fix Committed
tags: added: verification-needed-focal
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Hello Joshua, or anyone else affected,

Accepted rabbitmq-server into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/rabbitmq-server/3.8.3-0ubuntu0.1 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.

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (rabbitmq-server/3.9.27-0ubuntu0.1)

All autopkgtests for the newly accepted rabbitmq-server (3.9.27-0ubuntu0.1) for jammy have finished running.
The following regressions have been reported in tests triggered by the package:

ironic/1:20.1.0-0ubuntu1.1 (amd64, s390x)
watcher/2:8.0.0-0ubuntu1 (s390x)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/jammy/update_excuses.html#rabbitmq-server

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (rabbitmq-server/3.12.1-1ubuntu1.1)

All autopkgtests for the newly accepted rabbitmq-server (3.12.1-1ubuntu1.1) for noble have finished running.
The following regressions have been reported in tests triggered by the package:

cinder/2:24.0.0-0ubuntu1.2 (s390x)
ironic/1:24.1.1-0ubuntu1 (s390x)
php-amqplib/3.6.1-3 (armhf)
watcher/2:12.0.0-0ubuntu1 (s390x)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/noble/update_excuses.html#rabbitmq-server

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Mitchell Dzurick (mitchdz) wrote :

I just want to make it clear - the noble package should stay in proposed. There is no need to create an unnecessary update for the users for dep8 test additions and an update to debian/watch. This can be included in a bug update or security update.

tags: added: verification-done-focal verification-done-jammy verification-done-noble
removed: verification-needed-focal verification-needed-jammy verification-needed-noble
Revision history for this message
Andreas Hasenack (ahasenack) wrote :

The dep8 run is clear, we are just missing the d/watch test from the test plan.

tags: added: verification-needed-focal verification-needed-jammy
removed: verification-done-focal verification-done-jammy
Revision history for this message
Mitchell Dzurick (mitchdz) wrote :

The dep8 runs are passing in the excuses page.

Jammy d/watch works, focal fails because the download is now on page 3 instead of page 2, which needs to be updated. This is an unfortunately annoying situation because it will need to be updated in the future anyways.

(jammy)
$ git ubuntu clone rabbitmq-server
$ cd rabbitmq-server
$ git checkout pkg/ubuntu/jammy-devel
$ git log -n 1 --oneline
b1230083 (HEAD, tag: pkg/import/3.9.27-0ubuntu0.1, pkg/ubuntu/jammy-proposed, pkg/ubuntu/jammy-devel) 3.9.27-0ubuntu0.1 (patches unapplied)
$ uscan --download-current-version
Newest version of rabbitmq-server on remote site is 3.9.27, specified download version is 3.9.27
gpgv: Signature made Tue 13 Dec 2022 06:54:41 AM MST
gpgv: using RSA key 0A9AF2115F4687BD29803A206B73A36E6026DFCA
gpgv: Good signature from "RabbitMQ Release Signing Key <email address hidden>"
Successfully symlinked ../rabbitmq-server-3.9.27.tar.xz to ../rabbitmq-server_3.9.27.orig.tar.xz.

(focal)
$ git ubuntu clone rabbitmq-server
$ cd rabbitmq-server
$ git checkout pkg/ubuntu/focal-devel
$ git log -n 1 --oneline
ae55fe91 (HEAD, tag: pkg/import/3.8.3-0ubuntu0.1, pkg/ubuntu/focal-proposed, pkg/ubuntu/focal-devel) 3.8.3-0ubuntu0.1 (patches unapplied)
$ uscan --download-current-version
uscan warn: In debian/watch no matching hrefs for version 3.8.3 in watch line
  https://api.github.com/repos/rabbitmq/rabbitmq-server/releases?per_page=100&page=2 https://github.com/rabbitmq/rabbitmq-server/releases/download/[^/]+/rabbitmq-server-(?:[-_]?[Vv]?(\d[\-+\.:\~\da-zA-Z]*))(?i)(?:\.(?:tar\.xz|tar\.bz2|tar\.gz|tar\.zstd?|zip|tgz|tbz|txz))

tags: added: verification-done-jammy verification-failed-focal
removed: verification-needed-focal verification-needed-jammy
Revision history for this message
Mitchell Dzurick (mitchdz) wrote :
Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Considering d/watch was in worse shape before, I think it's ok to leave as is. Another build and round of testing brings no benefit, when we can easily check that uscan works by locally updating the page number. And the point of this is to verify we are getting the correct upstream version.

It's unfortunate, but I don't think another upload just because of this is worth it now. It's a race, and even if it works today with the new build, it might fail in a few weeks, depending on the upstream release cadence.

To be clear, I can confirm what with this page change from 2 to 3 in d/watch:

- https://api.github.com/repos/rabbitmq/rabbitmq-server/releases?per_page=100&page=2 \
+ https://api.github.com/repos/rabbitmq/rabbitmq-server/releases?per_page=100&page=3 \

uscan works with the focal proposed package 3.8.3-0ubuntu0.1:
$ uscan --download-current-version
uscan: Newest version of rabbitmq-server on remote site is 3.8.3, specified download version is 3.8.3
gpgv: Signature made Mon Mar 9 14:52:21 2020 UTC
gpgv: using RSA key 0A9AF2115F4687BD29803A206B73A36E6026DFCA
gpgv: Good signature from "RabbitMQ Release Signing Key <email address hidden>"
Successfully symlinked ../rabbitmq-server-3.8.3.tar.xz to ../rabbitmq-server_3.8.3.orig.tar.xz.

tags: added: verification-done-focal
removed: verification-failed-focal
Revision history for this message
Mauricio Faria de Oliveira (mfo) wrote :

Hey Mitchell,

Thanks for all the work on this series of rabbitmq-server SRUs.

We're interested in a change included in bug 2060248 for focal,
but it seems jammy/focal releases are blocked by this on noble.

AFAICT,

This SRU for rabbitmq-server is present in {noble,jammy,focal}-proposed,
but noble *blocks* jammy and focal from being released, because this bug
is the only one in noble's upload, and it is marked block-proposed-noble.

That is, unless the noble's upload is combined with another, non-blocking
proposed bugfix, or an exception to release an autopkgtests/dep8 only SRU
is made (ie, this bug only), we cannot release jammy and focal.

Do you have another bug/fix expected for noble soon, or maybe should we
ask for the exception above?

Thanks again!

P.S.: I realize there's a verification step pending in 2060248 too,
unrelated to this, which is blocker too, but would not help with the
issue in this comment.

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

We discussed this in the SRU team, and decided this bug here does not block the SRUs for jammy and focal.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package rabbitmq-server - 3.9.27-0ubuntu0.1

---------------
rabbitmq-server (3.9.27-0ubuntu0.1) jammy; urgency=medium

  * New upstream version 3.9.27 (LP: #2060248):
    - In environments where DNS resolution is not yet available at the time
      RabbitMQ nodes boot and try to perform peer discovery, such as CoreDNS
      with default caching interval of 30s on Kubernetes, nodes now will
      retry hostname resolution (including of their own host) several times
      with a wait interval.
    - LDAP server password could end up in the logs in certain types of
      exceptions.
    - Details about these and many futher changes can be found at
      https://github.com/rabbitmq/rabbitmq-server/blob/main/release-notes/3.9.27.md
      and earlier versions in the same folder.
  * Added new dep8 tests (LP: #1679386):
    - d/t/hello-world
    - d/t/publish-subscribe
    - d/t/rpc
    - d/t/work-queue
  * Packaging changes needed by this update:
    - d/watch: update to find upstream tarball, and verify its signature.
    - d/upstream/signing-key.asc: added, downloaded from
      https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc
    - Remove patches fixed upstream:
      - d/p/lp1999816-fix-rabbitmqctl-status-disk-free-timeout.patch.
    - d/p/CVE-2023-46118-{1,2}.patch: fix fuzz.
    - d/p/lets-use-python3-not-python-binary.patch: refresh.
    - d/p/downgrade_elixir.patch: downgrade the allowed elixir version minimum
      to 1.12.2 to allow Jammy to run. Upstream upgrades the minimum for general
      compiler optimizations, but is too recent for us.
    - d/p/max-ports-compat.patch: before v3.9.23, the maximum number of
      concurrent client connections was set based on the kernel open file handle
      limit. In v3.9.23 the concurrent client connection limit was changed to
      the value of the ERL_MAX_PORTS environment variable, and defaults to 65536
      if the variable is not set. To not change the behavior in upgrades to this
      version, this patch sets ERL_MAX_PORTS to the kernel open file handle
      limit if the variable is not set already. If the variable is set,
      then it's left alone. Note that ERL_MAX_PORTS must never be higher than
      the kernel open file handle limit.
    - d/rabbitmq-server.service: add notice about ERL_MAX_PORTS variable.
  * d/p/0007-Correctly-decrease-global-counters-in-rabbit_channel.patch: Fix
    errors in rabbitmq_global_publishers and rabbitmq_global_consumers counters
    (LP: #2073932).

 -- Mitchell Dzurick <email address hidden> Thu, 04 Apr 2024 12:54:06 -0700

Changed in rabbitmq-server (Ubuntu Jammy):
status: Fix Committed → Fix Released
Revision history for this message
Andreas Hasenack (ahasenack) wrote : Update Released

The verification of the Stable Release Update for rabbitmq-server has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package rabbitmq-server - 3.8.3-0ubuntu0.1

---------------
rabbitmq-server (3.8.3-0ubuntu0.1) focal; urgency=medium

  * New upstream verison 3.8.3 (LP: #2060248).
    - RabbitMQ nodes will now gracefully shutdown when receiving a `SIGTERM`
      signal. Previously the runtime would invoke a default handler that
      terminates the VM giving RabbitMQ no chance to execute its shutdown
      steps.
    - Speedup execution of boot steps by a factor of 2N, where N is the number
      of attributes per step.
    - New health checks that can be used to determine if it's a good moment to
      shut down a node for an upgrade.
    - details about these changes can be found at
      https://github.com/rabbitmq/rabbitmq-server/blob/main/release-notes/3.8.3.md
  * Packaging changes needed by this update:
    - d/watch: update to find upstream tarball, and verify its signature
    - d/upstream/signing-key.asc: added, downloaded from
      https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc
    - d/p/CVE-2023-46118-{1,2}.patch: refresh
    - d/p/lp1999816-fix-rabbitmqctl-status-disk-free-timeout.patch: fix offset
    - d/p/lets-use-python3-not-python-binary.patch: refresh
  * Added new dep8 tests (LP: #1679386):
    - d/t/smoke-test
    - d/t/hello-world
    - d/t/publish-subscribe
    - d/t/rpc
    - d/t/work-queue

 -- Mitchell Dzurick <email address hidden> Wed, 01 May 2024 17:02:31 -0700

Changed in rabbitmq-server (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Fabian Toepfer (fabiantoepfer) wrote :

Hey, just want to let you know that there is a security update for noble that will supersede the 3.12.1-1ubuntu1.1 in noble-proposed.

Revision history for this message
Athos Ribeiro (athos) wrote :

Dropping the block-proposed-noble tag and resetting the noble task here.

Changed in rabbitmq-server (Ubuntu Noble):
status: Fix Committed → Triaged
assignee: Mitchell Dzurick (mitchdz) → nobody
tags: removed: block-proposed-noble
tags: removed: verification-done-noble verification-needed
Jonas Jelten (jj)
tags: added: server-triage-discuss
tags: removed: server-triage-discuss
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.