#1072 Get the NSVC from Koji module CG build metadata to fix composes of modules with dash in stream name.
Closed 5 years ago by lsedlar. Opened 5 years ago by jkaluza.
jkaluza/pungi stream-dash  into  master

@@ -148,13 +148,15 @@ 

          except ValueError:

              version = md["release"]

              context = "00000000"

-         md["stream"] = md["version"]

-         md["version"] = version

-         md["context"] = context

- 

          try:

              md["modulemd"] = md["extra"]["typeinfo"]["module"]["modulemd_str"]

              md["tag"] = md["extra"]["typeinfo"]["module"]["content_koji_tag"]

+             # Get the NSVC from module metadata, because the original Koji build

+             # has '-' replaced with "_".

+             md["name"] = md["extra"]["typeinfo"]["module"]["name"]

+             md["stream"] = md["extra"]["typeinfo"]["module"]["stream"]

+             md["version"] = md["extra"]["typeinfo"]["module"]["version"]

+             md["context"] = md["extra"]["typeinfo"]["module"]["context"]

          except KeyError:

              continue

  

@@ -340,7 +340,11 @@ 

              'typeinfo': {

                  'module': {

                      'content_koji_tag': 'module-b62270b82443edde',

-                     'modulemd_str': mock.Mock()}

+                     'modulemd_str': mock.Mock(),

+                     'name': 'testmodule2',

+                     'stream': 'master',

+                     'version': '20180406051653',

+                     'context': '96c371af'}

              }

          }

          mock_build_md = [
@@ -464,14 +468,22 @@ 

                  'typeinfo': {

                      'module': {

                          'content_koji_tag': 'module-b62270b82443edde',

-                         'modulemd_str': mock.Mock()}

+                         'modulemd_str': mock.Mock(),

+                         'name': 'testmodule2',

+                         'stream': 'master',

+                         'version': '20180406051653',

+                         'context': '2e6f5e0a'}

                  }

              },

              {

                  'typeinfo': {

                      'module': {

                          'content_koji_tag': 'module-52e40b9cdd3c0f7d',

-                         'modulemd_str': mock.Mock()}

+                         'modulemd_str': mock.Mock(),

+                         'name': 'testmodule2',

+                         'stream': 'master',

+                         'version': '20180406051653',

+                         'context': '96c371af'}

                  }

              }

          ]

Stream can contain dash sign and when MBS imports such NSVC to Koji, the dash is replaced with
underscore. The current Pungi code does not respect that and tries to use the stream from Koji
directly, which results in wrong stream being using in some Pungi internal data.

In this PR, the NSVC is taken from module metadata section of CG Koji build, which contains
real stream including the dashes.

Signed-off-by: Jan Kaluza jkaluza@redhat.com

Looks good to me. Thank you!

I merged the patch manually, and I don't know why Pagure refuses to acknowledge that.

Pull-Request has been closed by lsedlar

5 years ago