cli: drop nvr sorting from list-builds

We've never prperly supported this option as it would need rpm compare
algorithm and there is also no other place in koji where we compare
NVRs. More sense makes to order builds by id (age) by default.

Related: https://pagure.io/koji/issue/3416
This commit is contained in:
Tomas Kopecek 2022-10-10 15:39:44 +02:00
parent 59f677321d
commit be554fef99
2 changed files with 15 additions and 15 deletions

View file

@ -3315,7 +3315,7 @@ def anon_handle_list_builds(goptions, session, args):
parser.add_option("--volume", help="List builds by volume ID")
parser.add_option("-k", "--sort-key", action="append", metavar='FIELD',
default=[], help="Sort the list by the named field. Allowed sort keys: "
"nvr, owner_name, state")
"build_id, owner_name, state")
parser.add_option("-r", "--reverse", action="store_true", default=False,
help="Print the list in reverse order")
parser.add_option("--quiet", action="store_true", default=goptions.quiet,
@ -3404,10 +3404,10 @@ def anon_handle_list_builds(goptions, session, args):
else:
parser.error("Filter must be provided for list")
if not options.sort_key:
options.sort_key = ['nvr']
options.sort_key = ['build_id']
else:
for s_key in options.sort_key:
if s_key not in ['nvr', 'owner_name', 'state']:
if s_key not in ['build_id', 'owner_name', 'state']:
warn("Invalid sort_key: %s." % s_key)
data = sorted(data, key=lambda b: [b.get(k) for k in options.sort_key],

View file

@ -195,9 +195,9 @@ build-test-1-12 kojiadmin CANCE
@mock.patch('sys.stdout', new_callable=StringIO)
def test_list_builds_opt_owner_sorted_nvr(self, stdout):
expected_output = """build-test-1-12 kojiadmin CANCELED
test-build-11-12 kojiadmin COMPLETE
expected_output = """test-build-11-12 kojiadmin COMPLETE
test-build-8-12 kojiadmin DELETED
build-test-1-12 kojiadmin CANCELED
"""
self.session.getUser.return_value = self.user_info
self.session.listBuilds.return_value = [self.list_build[0], self.list_build[1],
@ -261,9 +261,9 @@ build-test-1-12 kojiadmin CANCE
def test_list_builds_opt_prefix_sorted_owner(self, stdout):
expected_output = """test-build-11-12 kojiadmin COMPLETE
test-build-8-12 kojiadmin DELETED
build-test-1-12 kojiadmin CANCELED
test-build-11-9 kojitest COMPLETE
test-build-10-12 kojitest CANCELED
build-test-1-12 kojiadmin CANCELED
"""
self.session.listBuilds.return_value = self.list_build
rv = anon_handle_list_builds(self.options, self.session, ['--prefix', 'test-build',
@ -280,11 +280,11 @@ test-build-10-12 kojitest CANCE
@mock.patch('sys.stdout', new_callable=StringIO)
def test_list_builds_opt_prefix_sorted_owner_nvr(self, stdout):
expected_output = """build-test-1-12 kojiadmin CANCELED
test-build-11-12 kojiadmin COMPLETE
expected_output = """test-build-11-12 kojiadmin COMPLETE
test-build-8-12 kojiadmin DELETED
test-build-10-12 kojitest CANCELED
test-build-11-9 kojitest COMPLETE
test-build-10-12 kojitest CANCELED
build-test-1-12 kojiadmin CANCELED
"""
self.session.listBuilds.return_value = self.list_build
rv = anon_handle_list_builds(self.options, self.session, ['--prefix', 'test-build',
@ -302,9 +302,9 @@ test-build-11-9 kojitest COMPL
@mock.patch('sys.stdout', new_callable=StringIO)
def test_list_builds_opt_owner_reverse(self, stdout):
expected_output = """test-build-8-12 kojiadmin DELETED
expected_output = """build-test-1-12 kojiadmin CANCELED
test-build-8-12 kojiadmin DELETED
test-build-11-12 kojiadmin COMPLETE
build-test-1-12 kojiadmin CANCELED
"""
self.session.getUser.return_value = self.user_info
self.session.listBuilds.return_value = [self.list_build[0], self.list_build[1],
@ -376,8 +376,8 @@ test-build-8-12 kojiadmin DELET
@mock.patch('sys.stdout', new_callable=StringIO)
def test_list_builds_volume_not_int(self, stdout):
volume = 'test-volume'
expected_output = """build-test-1-12 kojiadmin CANCELED
test-build-11-12 kojiadmin COMPLETE
expected_output = """test-build-11-12 kojiadmin COMPLETE
build-test-1-12 kojiadmin CANCELED
"""
self.session.listBuilds.return_value = [self.list_build[0], self.list_build[4]]
self.session.listVolumes.return_value = [{'id': 0, 'name': 'DEFAULT'},
@ -396,8 +396,8 @@ test-build-11-12 kojiadmin COMPL
@mock.patch('sys.stdout', new_callable=StringIO)
def test_list_builds_volume_int(self, stdout):
volume = 1
expected_output = """build-test-1-12 kojiadmin CANCELED
test-build-11-12 kojiadmin COMPLETE
expected_output = """test-build-11-12 kojiadmin COMPLETE
build-test-1-12 kojiadmin CANCELED
"""
self.session.listBuilds.return_value = [self.list_build[0], self.list_build[4]]
rv = anon_handle_list_builds(self.options, self.session, ['--volume', volume])