Add initial code for KojiResolver class.

This commit:

- Adds KojiResolver class and KojiResolver tests.
- Changes the GenericResolver and its subclasses to pass base_module_mmds
  instead of base_module_nsvc to get_buildrequired_modulemds. This is needed,
  because KojiResolver needs to access XMD section of base module.
- Implements KojiResolver.get_buildrequired_modulemds to ask Koji for list of
  modules tagged in the Koji tag and return their modulemds.
This commit is contained in:
Jan Kaluza
2019-09-24 15:26:24 +02:00
parent 3d5dd91cf7
commit a7540452cd
9 changed files with 393 additions and 15 deletions

View File

@@ -65,10 +65,9 @@ class TestDBModule:
db_session.add(build)
db_session.commit()
platform_nsvc = platform_f300103.mmd().get_nsvc()
resolver = mbs_resolver.GenericResolver.create(db_session, tests.conf, backend="db")
result = resolver.get_buildrequired_modulemds("testmodule", "master", platform_nsvc)
result = resolver.get_buildrequired_modulemds(
"testmodule", "master", platform_f300103.mmd())
nsvcs = {m.get_nsvc() for m in result}
assert nsvcs == {"testmodule:master:20170109091357:123"}