Commit graph

773 commits

Author SHA1 Message Date
Tomas Kopecek
b4cfca052b hub: more verbose assertPerm error
Fixes: https://pagure.io/koji/issue/2429
2020-08-31 08:48:57 +02:00
Ken Dreyer
e35b571196 util: handle ENOENT in _stripcwd() listdir loop
After we call listdir(), another thread or process might delete files
from the current directory. We cannot always expect lstat() to succeed
in a loop over the initial listdir entries.

If lstat() raises ENOENT, consider this file deleted and move on.
2020-08-27 13:36:27 +02:00
Tomas Kopecek
7855b98ca2 formatTime/Long can handle timestamp
Also replaced *_time with *_ts wherever possible.
2020-08-26 09:26:00 +02:00
Tomas Kopecek
b0efed5e37 Fix time formatting for timezone values
Fixes: https://pagure.io/koji/issue/2423
2020-08-26 09:26:00 +02:00
Christopher O'Brien
66ec44a8f6 some safety netting 2020-08-18 16:28:01 +02:00
Christopher O'Brien
22fcdc1ad2 allow getRPMHeaders to get all headers if none are explicitly requested 2020-08-18 16:28:01 +02:00
Simo Sorce
2c663f0b73 Use requests_gssapi instead of requests_kerberos
Retain ability to use the old requests_kerberos where request_gssapi is
not available yet.

Signed-off-by: Simo Sorce <simo@redhat.com>
2020-07-24 15:32:42 -04:00
Tomas Kopecek
bbe8ce9700 backward compat wrapper for krb_login 2020-07-24 15:08:47 -04:00
Tomas Kopecek
f8419e3626 remove deprecated krbV support
Fixes: https://pagure.io/koji/issue/1991
2020-07-24 15:08:47 -04:00
Tomas Kopecek
72c701225b turn off dnf_warning in mock.cfg
Related: https://pagure.io/koji/issue/2026
2020-07-21 23:57:20 -04:00
Yu Ming Zhu
54f047fc2a TaskManager: clean both result and results dirs
fixes: #1988
2020-07-21 23:29:13 -04:00
Tomas Kopecek
50bcb6f3bc replace md5 with sha256 2020-06-24 14:42:01 +02:00
Yu Ming Zhu
a893e8bf2b a wrapper ignoring FIPS for hashlib.md5 2020-06-24 14:42:00 +02:00
Tomas Kopecek
ac38549992 make mock depsolver policy configurable
Fixes: https://pagure.io/koji/issue/826
2020-06-23 09:02:15 +02:00
Tomas Kopecek
477fb48b67 per-tag settings for mock's sign plugin
Based on amessina's patch

Fixes: https://pagure.io/koji/issue/84
2020-06-19 13:21:53 +02:00
Tomas Kopecek
1169f4be83 fix option name 2020-06-09 14:38:23 +02:00
Tomas Kopecek
d1cf0040c8 extend to allow also boostrap-image
Fixes: https://pagure.io/koji/issue/1017
2020-06-09 14:38:23 +02:00
Tomas Kopecek
2b930de206 kojid: remove bootstrap dir
Fixes: https://pagure.io/koji/issue/1988
2020-06-05 14:06:03 +02:00
Tomas Kopecek
db1110a5b9 fix flake8 issues 2020-06-05 10:58:38 +02:00
Tomas Kopecek
f69824041d fix checking signed files
Rpms which are signed with unknown key would raise an error. Ignore
checking of signing key validity.
2020-06-05 10:58:38 +02:00
Tomas Kopecek
3d698be2a7 use downloadFile for localPath and openRemoteFile 2020-06-05 10:58:38 +02:00
Tomas Kopecek
a4863c0f26 lib: check consistency of rpm from openRemoteFile
Fixes: https://pagure.io/koji/issue/2130
2020-06-05 10:58:38 +02:00
Tomas Kopecek
8ea4a7245b lib: retry openRemoteFile and check size 2020-06-05 10:58:38 +02:00
Tom Stellard
afc0efb122 Support tag specific environment variables
This makes it possible to specify an environment variable for a tag
that will be used during builds. e.g.

koji edit-tag -x rpm.env.CC=clang
2020-05-27 14:28:39 +02:00
Mike McLean
d30ac98325 clarify reason for decoding in comment 2020-05-25 09:14:51 +02:00
Mike McLean
b3687f2b25 don't decode signature headers
Fixes https://pagure.io/koji/issue/2221

some headers, like sigmd5, are inherently binary
2020-05-25 09:14:51 +02:00
Alex Iribarren
2087561fe6 Correctly identify "hostname doesn't match" errors 2020-05-20 10:50:56 +02:00
Yu Ming Zhu
21ff8143c4 warning for both cli and config file option 2020-05-18 09:29:04 +02:00
Yu Ming Zhu
80cf5ac94a deprecated warning for cli option --ca as well
fixes: #2182
2020-05-18 09:29:04 +02:00
Tomas Kopecek
0e5b54f32d cli: deprecate --ca
Fixes: https://pagure.io/koji/issue/2182
2020-05-13 10:45:37 +02:00
Tomas Kopecek
64a0033150 fix additional flake8 problems 2020-05-13 09:56:36 +02:00
Tomas Kopecek
0132313f92 replace logging.warn with warning
call is deprected in python 3.7

Fixes: https://pagure.io/koji/issue/2135
2020-04-22 13:47:15 +02:00
Tomas Kopecek
f2a57c8485 always set utf8 pg client encoding
Related: https://pagure.io/koji/issue/2104
2020-04-01 16:19:03 +02:00
Tomas Kopecek
f60fe79379 remove unneeded condition 2020-03-30 16:48:43 +02:00
Tomas Kopecek
79f6333629 delete main part of data 2020-03-30 16:48:43 +02:00
Tomas Kopecek
e3b7f326ef add real delete 2020-03-30 16:48:43 +02:00
Tomas Kopecek
98d25bf384 delete oldest failed buildroot, when there is no space
Fixes: https://pagure.io/koji/issue/1913
2020-03-30 16:48:43 +02:00
Owen W. Taylor
3227462528 koji.ClientSession: fix erroneous conversion to latin-1
For Python 3, we need to always encode what we are sending to the server as
utf-8; encoding strings that have only latin-1 as latin-1 causes us to
send something that the server can't parse. (When no encoding is specified
xmlclient.client.dumps creates an XML document with an xml declaration
for UTF-8.)
2020-03-25 09:54:11 +01:00
Ken Dreyer
19dabc0eda client: use default CA store during client auth if serverca is unset
Prior to this change, if the following conditions were true:

1) A Koji client uses SSL authentication,
2) The user does not set the "serverca" option for their profile,
3) The user does not have a "~/.koji/serverca.crt" file present,

Then Koji did not use the default CA store to validate the hub's CA.
read_defaults() was setting the "serverca" value to an empty string ""
in these cases. This led to an AuthError in ssl_login() for the empty
string:

  raise AuthError("Server CA %s doesn't exist or is not accessible" % serverca)

Update ssl_login() to ignore empty strings in this case, treating them
the same as None.

The code in _sendOneCall() already checks this value in a similar way,
with "if verify:", so we're matching that behavior here.

With this change, Koji clients will fall back to using the default CA
store.
2020-03-11 13:33:39 +01:00
Yuming Zhu
d21083a11b still use BaseException for logging purpose 2020-03-03 21:38:22 +08:00
Yuming Zhu
cf34706f04 use Exception instead of BaseException for bare expection 2020-03-03 21:38:22 +08:00
Yuming Zhu
2a2c5cb729 flake8: apply W rules (prefering W503) 2020-03-03 21:38:22 +08:00
Yuming Zhu
c5db34a8e1 flake8: apply E501 with max-line-length=99 2020-03-03 21:38:22 +08:00
Yuming Zhu
f1ba6cefd7 flake8: apply all rest E7 rules 2020-03-03 21:38:22 +08:00
Yuming Zhu
6ed30954b2 flake8: apply E71x rule 2020-03-03 21:38:22 +08:00
Yuming Zhu
fa69c4904e flake8: apply E70x rule 2020-03-03 21:38:22 +08:00
Yuming Zhu
6dd77e0fa4 flake8: apply E502 rule 2020-03-03 21:38:22 +08:00
Yuming Zhu
0f727a2ab4 flake8: apply E3 rules 2020-03-03 21:38:22 +08:00
Yuming Zhu
05340b146b flake8: apply E2 rules except E266 2020-03-03 21:38:21 +08:00
Yuming Zhu
ce1f9928af flake8: apply E1 rules 2020-03-03 21:38:21 +08:00