Commit graph

6737 commits

Author SHA1 Message Date
Ken Dreyer
b194a9ad3c kojivmd: cleanup VMs with UNDEFINE_NVRAM
Newer virtual machines may use nvram, and libvirt needs a special flag
to clean these up. Prior to this change (with libvirt-8.0.0-8.1.el9_0):

  File "/usr/sbin/kojivmd", line 1072, in cleanupVM
    vm.undefine()
  File "/usr/lib64/python3.9/site-packages/libvirt.py", line 3178, in undefine
    raise libvirtError('virDomainUndefine() failed')
  libvirt.libvirtError: Requested operation is not valid: cannot undefine
    domain with nvram

RHEL 7 first introduced the libvirt.VIR_DOMAIN_UNDEFINE_NVRAM flag in
libvirt-python-1.2.8-7.el7 (rhbz#1144284)
2022-09-16 09:10:19 +02:00
Tomas Kopecek
041bbc3502 PR#3504: kojivmd: narrow error handling for missing VMs
Merges #3504
https://pagure.io/koji/pull-request/3504
2022-09-16 09:04:33 +02:00
Ken Dreyer
953bbba183 kojivmd: narrow error handling for missing VMs
lookupByName() could raise libvirt.libvirtError for many different
reasons (libvirt connection problems, etc).

If this kojivmd host does not have this VM available
(VIR_ERR_NO_DOMAIN), and we should log the "VM not available" message
and skip taking the task.

If the error is something else, this is unexpected, and we should raise
it in the logs so the administrator can see it at non-debug log levels.
2022-09-16 09:04:27 +02:00
Tomas Kopecek
90206e38b2 PR#3506: doc: explain waitrepo tasks in vm channel
Merges #3506
https://pagure.io/koji/pull-request/3506
2022-09-16 09:01:45 +02:00
Ken Dreyer
68a6036d45 doc: explain waitrepo tasks in vm channel
Explain how to handle waitrepo tasks in the vm channel.
2022-09-16 09:01:28 +02:00
Tomas Kopecek
bc3aa421cd PR#3503: kojivmd: import xmlrpc.server
Merges #3503
https://pagure.io/koji/pull-request/3503
2022-09-16 09:00:27 +02:00
Ken Dreyer
4db109cbaf kojivmd: import xmlrpc.server
The xmlrpc.server module is separate from the main xmlrpc module, and we
must explicitly import it in order to use it in DaemonXMLRPCServer.
2022-09-16 09:00:21 +02:00
Tomas Kopecek
9f71d3ca4d PR#3505: kojivmd: pass "-F qcow2" to qemu-img create
Merges #3505
https://pagure.io/koji/pull-request/3505
2022-09-16 08:59:00 +02:00
Ken Dreyer
fa5cba7117 kojivmd: pass "-F qcow2" to qemu-img create
In RHEL 9 (qemu-img-6.2.0-11.el9_0.3), the "qemu-img create" command
requires the "-F" flag that specifies the second image's format.

qemu-img-1.5.3-175.el7_9.6 recognizes this -F flag also, so it should be
safe to use on all supported platforms.
2022-09-15 11:58:04 -04:00
Tomas Kopecek
45a581eb16 PR#3469: Fix dist-repo repo.json url
Merges #3469
https://pagure.io/koji/pull-request/3469

Fixes: #3468
https://pagure.io/koji/issue/3468
www: wrong dist repo 'repo.json' url
2022-09-12 15:45:41 +02:00
Jana Cupova
611c073419 Fix dist-repo repo.json url
Fixes: https://pagure.io/koji/issue/3468
2022-09-12 15:45:34 +02:00
Tomas Kopecek
93ca7ff10b PR#3484: Use nextval function instead of query 'SELECT nextval'
Merges #3484
https://pagure.io/koji/pull-request/3484

Fixes: #3483
https://pagure.io/koji/issue/3483
use nextval() instead of SQL
2022-09-05 10:54:03 +02:00
Jana Cupova
3fc402d5f2 Use nextval function instead of query 'SELECT nextval'
Fixes: https://pagure.io/koji/issue/3483
2022-09-05 10:42:11 +02:00
Tomas Kopecek
06718df3f9 PR#3479: fix flake8 errors
Merges #3479
https://pagure.io/koji/pull-request/3479

Related #3480
https://pagure.io/koji/issue/3480
2022-08-29 15:03:48 +02:00
Tomas Kopecek
59f7f8642a fix flake8 errors
Related: https://pagure.io/koji/issue/3480
2022-08-29 15:03:05 +02:00
Tomas Kopecek
a4ae298162 PR#3481: Fix URLs to pull requests
Merges #3481
https://pagure.io/koji/pull-request/3481
2022-08-29 13:27:34 +02:00
Alex Iribarren
154decaff4
Fix URLs to pull requests 2022-08-29 13:10:22 +02:00
Tomas Kopecek
3de81ab8c4 PR#3467: Release notes koji 1.30
Merges #3467
https://pagure.io/koji/pull-request/3467

Fixes: #3465
https://pagure.io/koji/issue/3465
1.30 release notes
2022-08-29 09:38:20 +02:00
Tomas Kopecek
192458f08b emphasize clone-tag incompatibility 2022-08-29 09:37:47 +02:00
Tomas Kopecek
43fa6c7730 Release notes koji 1.30
Related: https://pagure.io/koji/issue/3465
2022-08-29 09:37:47 +02:00
Tomas Kopecek
20b809e01f PR#3478: Order download tasks and download only first srpm
Merges #3478
https://pagure.io/koji/pull-request/3478

Fixes: #3461
https://pagure.io/koji/issue/3461
koji changed behaviour when downloading task rpms
2022-08-25 13:33:31 +02:00
Jana Cupova
cb5515aca4 Order download tasks and download only first srpm
Fixes: https://pagure.io/koji/issue/3461
2022-08-25 13:33:23 +02:00
Tomas Kopecek
a5a2ac38df PR#3472: doc: gssapi debug update
Merges #3472
https://pagure.io/koji/pull-request/3472

Fixes: #3471
https://pagure.io/koji/issue/3471
[Documentation] Possible misleading info at https://docs.pagure.org/koji/kerberos_gssapi_debug
2022-08-24 12:59:48 +02:00
Tomas Kopecek
92f5554b63 doc: gssapi debug update
Related: https://pagure.io/koji/issue/3471
2022-08-24 12:59:42 +02:00
Tomas Kopecek
a5e029af4f PR#3460: Increase unit tests
Merges #3460
https://pagure.io/koji/pull-request/3460
2022-08-23 10:14:50 +02:00
Jana Cupova
4f5b69f8a7 Increase unit tests 2022-08-23 09:26:13 +02:00
Tomas Kopecek
d81033c71d PR#3462: Allow rewrite src.rpm files in download-task
Merges #3462
https://pagure.io/koji/pull-request/3462

Fixes: #3461
https://pagure.io/koji/issue/3461
koji changed behaviour when downloading task rpms
2022-08-19 15:25:34 +02:00
Jana Cupova
c1f7b9db04 Allow rewrite src.rpm files in download-task
Fixes: https://pagure.io/koji/issue/3461
2022-08-19 06:42:44 +02:00
Tomas Kopecek
b0ca9984a2 PR#3459: Fix arch in download-task
Merges #3459
https://pagure.io/koji/pull-request/3459

Fixes: #3456
https://pagure.io/koji/issue/3456
arch filtering broken since https://pagure.io/koji/pull-request/3343
2022-08-18 15:32:24 +02:00
Jana Cupova
f017ec28f6 Fix arch in download-task
Fixes: https://pagure.io/koji/issue/3456
2022-08-18 11:12:17 +02:00
Tomas Kopecek
10cf87b862 PR#3438: CLI: More details when files conflict in download-task
Merges #3438
https://pagure.io/koji/pull-request/3438

Fixes: #3433
https://pagure.io/koji/issue/3433
CLI download-task: more info details when duplicate name of file
2022-08-18 10:10:21 +02:00
Jana Cupova
310331c3f7 CLI: More details when files conflict in download-task
Fixes: https://pagure.io/koji/issue/3433
2022-08-18 10:10:13 +02:00
Tomas Kopecek
37b207cf44 PR#3450: convert data to string in escapeHTML first
Merges #3450
https://pagure.io/koji/pull-request/3450

Fixes: #3449
https://pagure.io/koji/issue/3449
Fix html escaping for non-strings
2022-08-17 11:16:21 +02:00
Tomas Kopecek
9d289bc336 convert data to string in escapeHTML first
Related: https://pagure.io/koji/issue/3449
2022-08-17 11:16:13 +02:00
Tomas Kopecek
3cf8cc50ed PR#3364: Catch koji.AuthError and bail out
Merges #3364
https://pagure.io/koji/pull-request/3364

Related #3376
https://pagure.io/koji/issue/3376
2022-08-17 10:49:48 +02:00
Alex Iribarren
8113448282 Catch koji.AuthError and bail out 2022-08-17 10:49:41 +02:00
Tomas Kopecek
9d99bbec68 PR#3440: Parse_arches allows string and list of arches
Merges #3440
https://pagure.io/koji/pull-request/3440

Fixes: #3434
https://pagure.io/koji/issue/3434
parse_arch should support list of arches
2022-08-17 10:42:57 +02:00
Jana Cupova
9287f672ee Parse_arches allows string and list of arches
Fixes: https://pagure.io/koji/issue/3434
2022-08-17 10:42:49 +02:00
Tomas Kopecek
de93831d5f PR#3457: Fix query with LIKE string in getAverageBuildDirection
Merges #3457
https://pagure.io/koji/pull-request/3457

Fixes: #1128
https://pagure.io/koji/issue/1128
getAverageBuildDuration returns None for containers
2022-08-16 10:23:10 +02:00
Jana Cupova
263266fe85 Fix query with LIKE string in getAverageBuildDirection
Fixes: https://pagure.io/koji/issue/1128
2022-08-09 12:04:14 +02:00
Tomas Kopecek
fad0eed2f5 PR#3406: Add a utility function to watch builds
Merges #3406
https://pagure.io/koji/pull-request/3406

Fixes: #2981
https://pagure.io/koji/issue/2981
Add a utility function to watch builds
2022-08-01 15:33:36 +02:00
Tomas Kopecek
4daea4dab9 rename function 2022-08-01 15:33:29 +02:00
Tomas Kopecek
4e6aca0bd0 exception-free watch_builds
Related: https://pagure.io/koji/issue/2981
2022-08-01 15:33:29 +02:00
Otto Urpelainen
d2247940b6 Add utility function to watch builds
External tools that interact with Koji
need to wait for builds to appear in a repo.
For example, Fedora cli tools 'bodhi' and 'fedpkg'
can create buildroot overrides,
which only become useful
after the override's build appears in the correct repo.
At the moment, 'bodhi' waits for a repo
by invoking the 'koji wait-repo' cli tool
while 'fedpkg' does not wait at all.
In order to make it easier for such tools to wait for a repo,
the wait implementation from 'koji wait-repo'
is moved to koji_cli.lib namespace
where it is available for use through Python import.
2022-08-01 15:33:29 +02:00
Otto Urpelainen
f48d6d2b71 Add unit test for buildLabel 2022-08-01 15:33:29 +02:00
Tomas Kopecek
7a1778a752 PR#3404: don't propagate SIGHUP ignore to child processes
Merges #3404
https://pagure.io/koji/pull-request/3404

Fixes: #672
https://pagure.io/koji/issue/672
Koji's child processes ignore SIG_HUP
2022-08-01 11:35:40 +02:00
Tomas Kopecek
b3f7d7c34e remove unused import 2022-08-01 11:34:41 +02:00
Tomas Kopecek
2006ab1dd8 don't propagate SIGHUP ignore to child processes
Related: https://pagure.io/koji/issue/672
2022-08-01 11:34:41 +02:00
Tomas Kopecek
b5ff9d8b51 PR#3402: Correct getAverageDuration values for most GC builds
Merges #3402
https://pagure.io/koji/pull-request/3402

Fixes: #1128
https://pagure.io/koji/issue/1128
getAverageBuildDuration returns None for containers
2022-08-01 09:37:51 +02:00
Tomas Kopecek
80318fc0cf Correct getAverageDuration values for most GC builds
Fixes: https://pagure.io/koji/issue/1128
2022-08-01 09:37:42 +02:00