Commit Graph

1949 Commits

Author SHA1 Message Date
Owen W. Taylor
3d3e4121cc MBSResolver: only return the latest version for get_module_modulemds()
get_module_modulemds() was documented to return only the latest version,
but actually returned all versions. Because this wasn't anticipated in
the libsolv usage for module resolution, a more-or-less arbitrary version
would be picked to build local builds against instead of the latest one.
2018-10-05 15:42:31 -04:00
Jan Kaluža
d5747b19eb Merge #1026 Add singleton system_resolver 2018-10-01 14:11:33 +00:00
Chenxiong Qi
0a15989f88 Add koji_tag into resolved buildrequires
This is useful for an issue I'm working on, for which I need to get
platform module's koji_tag.

Signed-off-by: Chenxiong Qi <cqi@redhat.com>
2018-09-28 12:09:07 +08:00
Chenxiong Qi
520a979d3d Add singleton system_resolver
system_resolver is created based on loaded configuration, which could
avoid calls like `GenericResolver.create(conf)` repeatedly in the code.

However, if some cases need to create a specific resolver explicitly,
`GenericResolver.create` could be called with addition argument, for
example db or mbs is passed to argument backend in tests.

Signed-off-by: Chenxiong Qi <cqi@redhat.com>
2018-09-28 11:00:52 +08:00
Chenxiong Qi
2c58471630 Fix and reword some docstrings again
During I'm reading through the code base to learn MBS, I found out some
typos and minor issues in some other docstrings, and I also found some
docstrings with extra informative description could make it easier to
understand the code.

Signed-off-by: Chenxiong Qi <cqi@redhat.com>
2018-09-26 14:12:39 +08:00
Jan Kaluza
4eb3fa8fee 2.6.2 v2.6.2 2018-09-24 14:27:30 +02:00
Jan Kaluza
f0cdb5030d Set modulemd 'arch' field in arch-specific modulemd files imported to CG build. 2018-09-24 09:45:43 +02:00
Chenxiong Qi
e606840c47 Fix and reword some docstrings
Signed-off-by: Chenxiong Qi <cqi@redhat.com>
2018-09-14 21:44:25 +08:00
Matt Prahl
e180ad88bf Merge #1018 Replace dup_nsvc() in test_mbs.py 2018-09-13 13:06:56 +00:00
Chenxiong Qi
2d162b97a1 Replace dup_nsvc() in test_mbs.py
dup_nsvc prints version in hexadecimal instead of integer. This is found
in libmodulemd 1.6.2 f28 build. This bug has been fixed in upstream but
not release yet. Before the release, this patch formats NSVC manually to
workaround it.

Signed-off-by: Chenxiong Qi <cqi@redhat.com>
2018-09-13 11:41:20 +08:00
Chenxiong Qi
cf4e5f47c0 Avoid repeating default context with literal text
Signed-off-by: Chenxiong Qi <cqi@redhat.com>
2018-09-13 10:08:17 +08:00
Jan Kaluza
f7557283ec 2.6.1 v2.6.1 2018-09-12 08:35:36 +02:00
Jan Kaluza
410f65ac3c Get the RPM license headers from Koji and use it to fill the MMD content licenses field. 2018-09-12 07:45:46 +02:00
Jan Kaluza
0d66adbc17 Add list of built RPMs to architecture specific modulemd files in CG builds. 2018-09-12 07:45:46 +02:00
Jan Kaluza
19e9febec9 Attach architecture specific mmd files to content generator build, for now without arch-specific data. 2018-09-12 07:45:46 +02:00
mprahl
586767e59e Fix the unit tests 2018-09-11 09:26:01 -04:00
Ralph Bean
cfbe031218 Fix bug breaking local builds.
This bug was reported by @nphilipp here https://bodhi.fedoraproject.org/updates/FEDORA-2018-c9c3a37d96

The issue is that the `record_filtered_rpms` method returns a new xmd
buildrequires block, but whole buildrequires entries were omitted in the return
value for local builds.  This one-liner includes them again.
2018-09-10 20:53:29 -04:00
Ralph Bean
63e4d4aac7 2.6.0 v2.6.0 2018-09-07 13:56:03 -04:00
Filip Valder
598347e1b6 Import module API 2018-09-07 17:12:01 +02:00
Ralph Bean
cfe32afcd0 Rename LocalBuilder to SRPMBuilder and change type detection.
First, rename LocalBuilder to SRPMBuilder.  Reading the manpage for mock tells
me that the `--rebuild` option is specifically for rebuilding a given srpm.
The class was just named poorly (imo).

Second, change the type detection.  The bug I'm trying to fix is if you try to
pass a string for the `repository:` in your modulemd like
`file:///home/user/repos/libfoo/`.  The old logic here would assume that it is
an srpm since it didn't start with "git" or "http", but that's not correct.  We
have people who want to experiment with building modules with components that
are not publicly accessible over the network - which are only local.  This
change allows that.
2018-09-07 09:23:11 -04:00
mprahl
9d40718895 Allow module components to use a git ref outside of the master branch 2018-09-06 15:04:24 -04:00
Ralph Bean
e7089d7be0 Rename this to be PDC-agnostic. 2018-09-04 09:51:56 -04:00
Ralph Bean
0aff640ef3 Optionally, block building modules with EOL streams.
Requested by @mboddu in:

- https://pagure.io/fm-orchestrator/issue/960
- https://pagure.io/modularity/issue/102
2018-08-31 15:23:04 -04:00
Matt Prahl
1077f11b2a Merge #999 ISSUE-991: Added a method to the producer that will move stuck builds into 'failed' state 2018-08-30 14:17:31 +00:00
Martin Curlej
5a3d3d99d3 ISSUE-991: Added a method to the producer that will move stuck builds into 'failed' state
Signed-off-by: Martin Curlej <mcurlej@redhat.com>
2018-08-30 16:02:24 +02:00
Matt Prahl
18a53695bb Merge #1002 Cosmetic fixes in mmd_resolver.py 2018-08-29 13:05:06 +00:00
mprahl
44dfd0c37f Return the exit code from tox in docker/test.sh 2018-08-29 09:01:25 -04:00
mprahl
6ce92e8ad0 Rename a variable in mmd_resolver.py to not shadow the function input 2018-08-28 10:06:00 -04:00
mprahl
c37a0e880b Fix the typos in the mmd_resolver.py comments 2018-08-28 10:04:40 -04:00
Matt Prahl
e5230ef519 Merge #1001 Add some comments to MMDResolver. 2018-08-28 13:57:01 +00:00
Jan Kaluza
dad03d3742 Copy the buildrequires which are not in requires list to expanded MMD. 2018-08-28 15:15:58 +02:00
Jan Kaluza
c36e6f2ec3 Add some comments to libsolv code. 2018-08-28 11:56:43 +02:00
Jan Kaluza
78f94d117b Cast 'version' in get_build_from_nsvc to str. 2018-08-22 09:45:00 +02:00
Jan Kaluza
8e5b9334e6 Release 2.5.1 v2.5.1 2018-08-21 14:58:06 +02:00
Matt Prahl
0cec1ef2f3 Merge #997 Return string representation of exception instead of e.args[0] in Flask error handlers. 2018-08-21 12:52:53 +00:00
Jan Kaluza
a10abcdbcc Return string representation of exception instead of e.args[0] in Flask error handlers. 2018-08-21 11:21:04 +02:00
Jan Kaluza
56fe201c33 Fill in the 'filterer_rpms' in backend to not access Koji from frontend. 2018-08-21 07:58:52 +02:00
Ralph Bean
84762891f7 Close threadpools after use. 2018-08-15 12:47:18 -04:00
Ralph Bean
2e06199aa8 Release 2.5.0 v2.5.0 2018-08-14 11:53:38 -04:00
mprahl
713172e1d5 Remove some other noisy debug logs 2018-08-14 11:22:04 -04:00
mprahl
79be63a7e7 Remove the debug log saying the MBS received a message to reduce noise 2018-08-14 10:03:53 -04:00
Matt Prahl
09edb4cba8 Merge #990 Allow overriding the name and stream from scm repos. 2018-08-14 13:03:52 +00:00
Jan Kaluza
f0b35be067 Add BASE_MODULE_KOJI_ARCHES to override default Koji arches. 2018-08-14 13:18:56 +02:00
Ralph Bean
4279e947be Allow overriding the name and stream from scm repos.
If configured on the server side, disabled by default.
2018-08-13 14:08:36 -04:00
mprahl
d54422adeb Don't filter RPMs of reused components from a module that depends on itself
If a module has filters set and it buildrequires itself, issues occur
during component reuse. In that event, the filtered RPMs from the
previous module build will not be available in the buildroot because the NVRs
in the filters will match the RPMs from the reused component.

Co-authored-by: Jan Kaluza <jkaluza@redhat.com>
2018-08-13 11:13:40 -04:00
mprahl
f422b82ce7 Make _get_reusable_module a public method so it can be used elsewhere 2018-08-09 19:25:35 -04:00
Jan Kaluza
6d2e4bbffa Fix filters generation 2018-08-09 15:16:13 +02:00
mprahl
7bdba31439 Release v2.4.2 v2.4.2 2018-08-07 14:42:59 -04:00
mprahl
4c9c338298 Fix a log statement in the tag handler 2018-08-07 14:38:42 -04:00
mprahl
28acfd8a44 Construct the NVR for the KojiTagChange messages
Brew publishes the NVR on tag change messages, but Koji upstream does
not. This constructs the NVR based on the name, version, and release
in the messages.
2018-08-07 14:38:42 -04:00