#48 Replace the call to tagHistory to a call to queryHistory
Merged 3 years ago by puiterwijk. Opened 3 years ago by pingou.
pingou/robosignatory fix_deprecation  into  master

file modified
+2 -2
@@ -155,13 +155,13 @@ 

  

              # Verify that the build was tagged into the tag by one of the

              # trusted taggers.

-             for hist_event in sorted(instance['client'].tagHistory(build_id),

+             for hist_event in sorted(instance['client'].queryHistory(build=build_id)['tag_listing'],

build=build_id it should be build=build_nvr

Its expecting the nvr not the id of the build

Are you sure? Upstream used binfo['id'] cf: https://pagure.io/koji/pull-request/938#_1__7

Seems to work for both:

>>> import koji
>>> session = koji.ClientSession("https://koji.fedoraproject.org/kojihub")
>>> session.queryHistory(build=1641955)
{'tag_listing': [{'active': True, 'build.state': 1, 'build_id': 1641955, 'create_event': 64135013, 'create_ts': 1605260574.688745, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': None, 'revoke_ts': None, 'revoker_id': None, 'revoker_name': None, 'tag.name': 'f34', 'tag_id': 27033, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134966, 'create_ts': 1605260426.726113, 'creator_id': 253, 'creator_name': 'remi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135007, 'revoke_ts': 1605260570.882685, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-candidate', 'tag_id': 27040, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134969, 'create_ts': 1605260439.171993, 'creator_id': 3638, 'creator_name': 'autopen', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135004, 'revoke_ts': 1605260570.195553, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-testing-pending', 'tag_id': 27042, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134967, 'create_ts': 1605260428.198525, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64134969, 'revoke_ts': 1605260439.171993, 'revoker_id': 3638, 'revoker_name': 'autopen', 'tag.name': 'f34-signing-pending', 'tag_id': 27046, 'version': '1.4.5'}]}
>>> session.queryHistory(build='php-composer-xdebug-handler-1.4.5-1.fc34')
{'tag_listing': [{'active': True, 'build.state': 1, 'build_id': 1641955, 'create_event': 64135013, 'create_ts': 1605260574.688745, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': None, 'revoke_ts': None, 'revoker_id': None, 'revoker_name': None, 'tag.name': 'f34', 'tag_id': 27033, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134966, 'create_ts': 1605260426.726113, 'creator_id': 253, 'creator_name': 'remi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135007, 'revoke_ts': 1605260570.882685, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-candidate', 'tag_id': 27040, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134969, 'create_ts': 1605260439.171993, 'creator_id': 3638, 'creator_name': 'autopen', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135004, 'revoke_ts': 1605260570.195553, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-testing-pending', 'tag_id': 27042, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134967, 'create_ts': 1605260428.198525, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64134969, 'revoke_ts': 1605260439.171993, 'revoker_id': 3638, 'revoker_name': 'autopen', 'tag.name': 'f34-signing-pending', 'tag_id': 27046, 'version': '1.4.5'}]}

                                       key=lambda ev: ev['create_ts'],

                                       reverse=True):

                  # We want to verify the latest matching tagging event only.

                  if (

                      hist_event['active']

-                     and hist_event['tag_name'] == tag

+                     and hist_event['tag.name'] == tag

                  ):

                      if hist_event['creator_name'] in sidetag_matched['trusted_taggers']:

                          # This is how it should be, break out of the loop.

file modified
+10 -8
@@ -275,15 +275,17 @@ 

              tagger = 'bodhi'

  

          if error == 'missing-from-history':

-             tag_history = []

+             tag_history = {'tag_listing': []}

          else:

-             tag_history = [

-                 {'active': True,

-                  'create_ts': 1554076800,

-                  'creator_name': tagger,

-                  'tag_name': sidetag_pending},

-             ]

-         self.koji_client.tagHistory.return_value = tag_history

+             tag_history = {'tag_listing':

+                 [

+                     {'active': True,

+                      'create_ts': 1554076800,

+                      'creator_name': tagger,

+                      'tag.name': sidetag_pending},

+                 ]

+             }

+         self.koji_client.queryHistory.return_value = tag_history

  

          return tag_conf, tagger

  

Koji has deprecated the tagHistory method in favor of the queryHistory
one. This commit attempts to port the code from the deprecated method
to the new one using as an example the changes made in the upstream PR:
https://pagure.io/koji/pull-request/938

Fixes https://pagure.io/robosignatory/issue/47

Signed-off-by: Pierre-Yves Chibon pingou@pingoured.fr

rebased onto 53f8597

3 years ago

Note that this is a short in the dark based on the upstream PR

rebased onto 85b6f32

3 years ago

Based on the upstream PR, I think we also need to change line 164: tag_name -> tag.name.

rebased onto 9c8913c

3 years ago

rebased onto 783a180

3 years ago

build=build_id it should be build=build_nvr

Its expecting the nvr not the id of the build

Seems to work for both:

>>> import koji
>>> session = koji.ClientSession("https://koji.fedoraproject.org/kojihub")
>>> session.queryHistory(build=1641955)
{'tag_listing': [{'active': True, 'build.state': 1, 'build_id': 1641955, 'create_event': 64135013, 'create_ts': 1605260574.688745, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': None, 'revoke_ts': None, 'revoker_id': None, 'revoker_name': None, 'tag.name': 'f34', 'tag_id': 27033, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134966, 'create_ts': 1605260426.726113, 'creator_id': 253, 'creator_name': 'remi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135007, 'revoke_ts': 1605260570.882685, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-candidate', 'tag_id': 27040, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134969, 'create_ts': 1605260439.171993, 'creator_id': 3638, 'creator_name': 'autopen', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135004, 'revoke_ts': 1605260570.195553, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-testing-pending', 'tag_id': 27042, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134967, 'create_ts': 1605260428.198525, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64134969, 'revoke_ts': 1605260439.171993, 'revoker_id': 3638, 'revoker_name': 'autopen', 'tag.name': 'f34-signing-pending', 'tag_id': 27046, 'version': '1.4.5'}]}
>>> session.queryHistory(build='php-composer-xdebug-handler-1.4.5-1.fc34')
{'tag_listing': [{'active': True, 'build.state': 1, 'build_id': 1641955, 'create_event': 64135013, 'create_ts': 1605260574.688745, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': None, 'revoke_ts': None, 'revoker_id': None, 'revoker_name': None, 'tag.name': 'f34', 'tag_id': 27033, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134966, 'create_ts': 1605260426.726113, 'creator_id': 253, 'creator_name': 'remi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135007, 'revoke_ts': 1605260570.882685, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-candidate', 'tag_id': 27040, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134969, 'create_ts': 1605260439.171993, 'creator_id': 3638, 'creator_name': 'autopen', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135004, 'revoke_ts': 1605260570.195553, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-testing-pending', 'tag_id': 27042, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134967, 'create_ts': 1605260428.198525, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64134969, 'revoke_ts': 1605260439.171993, 'revoker_id': 3638, 'revoker_name': 'autopen', 'tag.name': 'f34-signing-pending', 'tag_id': 27046, 'version': '1.4.5'}]}

Seems to work for both:
````

import koji
session = koji.ClientSession("https://koji.fedoraproject.org/kojihub")
session.queryHistory(build=1641955)
{'tag_listing': [{'active': True, 'build.state': 1, 'build_id': 1641955, 'create_event': 64135013, 'create_ts': 1605260574.688745, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': None, 'revoke_ts': None, 'revoker_id': None, 'revoker_name': None, 'tag.name': 'f34', 'tag_id': 27033, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134966, 'create_ts': 1605260426.726113, 'creator_id': 253, 'creator_name': 'remi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135007, 'revoke_ts': 1605260570.882685, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-candidate', 'tag_id': 27040, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134969, 'create_ts': 1605260439.171993, 'creator_id': 3638, 'creator_name': 'autopen', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135004, 'revoke_ts': 1605260570.195553, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-testing-pending', 'tag_id': 27042, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134967, 'create_ts': 1605260428.198525, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64134969, 'revoke_ts': 1605260439.171993, 'revoker_id': 3638, 'revoker_name': 'autopen', 'tag.name': 'f34-signing-pending', 'tag_id': 27046, 'version': '1.4.5'}]}
session.queryHistory(build='php-composer-xdebug-handler-1.4.5-1.fc34')
{'tag_listing': [{'active': True, 'build.state': 1, 'build_id': 1641955, 'create_event': 64135013, 'create_ts': 1605260574.688745, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': None, 'revoke_ts': None, 'revoker_id': None, 'revoker_name': None, 'tag.name': 'f34', 'tag_id': 27033, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134966, 'create_ts': 1605260426.726113, 'creator_id': 253, 'creator_name': 'remi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135007, 'revoke_ts': 1605260570.882685, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-candidate', 'tag_id': 27040, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134969, 'create_ts': 1605260439.171993, 'creator_id': 3638, 'creator_name': 'autopen', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64135004, 'revoke_ts': 1605260570.195553, 'revoker_id': 428, 'revoker_name': 'bodhi', 'tag.name': 'f34-updates-testing-pending', 'tag_id': 27042, 'version': '1.4.5'}, {'active': None, 'build.state': 1, 'build_id': 1641955, 'create_event': 64134967, 'create_ts': 1605260428.198525, 'creator_id': 428, 'creator_name': 'bodhi', 'epoch': None, 'name': 'php-composer-xdebug-handler', 'release': '1.fc34', 'revoke_event': 64134969, 'revoke_ts': 1605260439.171993, 'revoker_id': 3638, 'revoker_name': 'autopen', 'tag.name': 'f34-signing-pending', 'tag_id': 27046, 'version': '1.4.5'}]}
````

For some reason, it didn't work for me when I tried it, anyway, as long as its working :thumbsup:

Reading the code, this looks right to me. :thumbsup:

Looks reasonable to me :thumbsup:

Pull-Request has been merged by puiterwijk

3 years ago