Project

Profile

Help

Test #4930

Pulp - Test #4942: [EPIC] - Pulp2 - 2.20

NaUse RPMTAG_MODULARITYLABEL to determine modular RPM

Added by bherring 4 months ago. Updated 2 months ago.

Status:
CLOSED - COMPLETE
Priority:
High
Assignee:
Category:
-
Sprint/Milestone:
Version:
Platform Release:
2.20.0
Tags:
Pulp 2
Sprint:

Description

Original Dev Text

According to information from modularity folks RPMTAG_DISTTAG is no longer in use for modularity purposes.
RPMTAG_MODULARITYLABEL should be used instead.

This affects applicability calculations which rely on the correct identification of modular RPMs.
The problem should not be huge or broad, most modular RPMs are identified as such at sync time using metadata.

This tag is supported in old versions of rpm, just the name is not exposed and numeric key should be used:
The constant rpm. RPMTAG_MODULARITYLABEL is not available on Centos7 and < F30, instead the id if the header 5096 can be used directly: headers[5096].

QE Text

Talked with Tanya, and it it looks like we need test coverage for rpm upload checking for is_modular.

The following test can be used as a baseline logic for the test, replacing a sync action with an upload action:

Also, need to ensure that the relevant RPM_WITH_MODULES_FEED_URL 's RPMs are being built correctly (F30 base image now) to ensure the fixture contains what we expect for test.


Related issues

Copied from RPM Support - Issue #4869: Use RPMTAG_MODULARITYLABEL to determine modular RPM CLOSED - CURRENTRELEASE Actions

Associated revisions

Revision 2253a11a View on GitHub
Added by bherring 4 months ago

Adding check for modular RPM upload

Issue #4869 updates the DISTAG check to a new backwards compatible
check for ``is_modular`` for RPM uploads.

Adding verfications for RPM uploads with and without ``is_modular``
to ensure the RPM tags are being read correctly.

See: https://pulp.plan.io/issues/4869

closes #4930

History

#1 Updated by bherring 4 months ago

  • Copied from Issue #4869: Use RPMTAG_MODULARITYLABEL to determine modular RPM added

#2 Updated by bherring 4 months ago

Additional Information about RPMs in fixtures

I have not seen evidence the fixture is actually building modular RPMs as the header information is not present in any source spec files within the fixture (that I have seen yet).

Therefore, I currently believe a change/addition is needed to build modular RPMs for the test.

10:25 <ttereshc> I asked on #fedora-modularity on a freenode [15:42:44] <ttereshc> I need a dummy
                 package with modularitylabel header set (just not being empty). Any hints/recipes
                 how to build such package?
10:25 <ttereshc> [15:53:33] <ignatenkobrain> ttereshc: you need to set macro '%modularitylabel' to
                 some value
10:26 <ttereshc> that simple
10:26 <bherring> Within the .spec file, no?
10:26 <ttereshc> yes
10:26 <ttereshc> that's my understanding

#3 Updated by bherring 4 months ago

  • Parent task set to #4942

#4 Updated by bherring 4 months ago

  • Assignee set to bherring

#5 Updated by bherring 4 months ago

  • Status changed from NEW to ASSIGNED

#6 Updated by bherring 4 months ago

  • Priority changed from Normal to High

#7 Updated by bherring 4 months ago

  • Status changed from ASSIGNED to MODIFIED

#8 Updated by bherring 4 months ago

How to check the Modularity Label in an RPM

The RPM comes from here: https://repos.fedorapeople.org/repos/pulp/pulp/fixtures/rpm-with-modular/

I looked at the RPM headers with this command I got from the internet.

rpm -qp nodejs-10.15.2-1.module_f30+3181+3be24b3a.x86_64.rpm --qf "$(rpm --querytags | sed -nr 's/(.*)/\1:%{\1}/p' | tr '[:space:]' '\n')" 

and it gave

MODULARITYLABEL:nodejs:10:3020190301191749:a5b0195c

#10 Updated by ttereshc 4 months ago

  • Sprint/Milestone set to 2.20.0

#11 Updated by bherring 2 months ago

  • Status changed from MODIFIED to CLOSED - COMPLETE

Please register to edit this issue

Also available in: Atom PDF