Commit Graph

73 Commits

Author SHA1 Message Date
Qixiang Wan
d83e6897ca Change ModuleBuild.context to db column
1. Changed ModuleBuild's context property to db column, it's
non-nullable and default value is '00000000' to keep it consistent
with previous behaviour.

2. Changed ModuleBuild.contexts_from_mmd to return a tuple of
(ref_build_context, build_context, runtime_context, context).

3. Updated tests affected by this change.
2018-04-28 11:46:31 +08:00
Qixiang Wan
8b807a9fcd Generate koji tag from MBS and use informative name
koji now supports tags with max length of 256, we can use
more informative tag name instead of the hash one.

The new format of koji tag name is:

    module-<name>-<stream>-<version>-<context>

However when the generated tag's length > (256 - len('build')), we
fallback to the old way of name in hash format (module-<hash>).

In this change, koji tag is always generated from MBS itself, even
with pdc resolver.

FIXES: #918 #925
2018-04-26 22:04:16 +08:00
Matt Prahl
8351713828 Merge #922 Generate 'context' from hash based on buildrequires/requires stream. Reuse components only from module with the same stream_build_context. 2018-04-24 22:50:02 +00:00
Jan Kaluza
8d1d439737 Generate 'context' from hash based on buildrequires/requires stream. Reuse components only from module with the same stream_build_context. 2018-04-24 15:45:26 +02:00
Jan Kaluza
836fb9db10 Keep the 'module_name:[]' in requires unexpanded in generate_expanded_mmds. 2018-04-06 10:48:59 +02:00
mprahl
c2824138d3 Fix a bug in MSE when a module requires a module that isn't also a buildrequire 2018-04-05 10:58:29 -04:00
Jan Kaluza
65513afd1a Share the same in the dist tag between all MSE builds. 2018-04-05 10:42:56 +02:00
Jan Kaluza
9b6fd2ba39 Split utils.py to multiple files based on the methods use-case. 2018-04-03 09:58:57 -04:00
Jan Kaluza
9503e4624e Support local build of modules with MSE. 2018-04-03 09:58:57 -04:00
Jan Kaluza
e5e9a24fce Allow adding bool to XMD. Fix flake8 issues. 2018-04-03 09:58:57 -04:00
Jan Kaluza
2482e47c07 Fix issues from review. Drop xmd['mbs']['requires']. Do not allow building MSE builds against non-MSE builds. 2018-04-03 09:58:57 -04:00
Jan Kaluza
31ddbe51a5 Add generate_expanded_mmds which returns list of MMDs which can be submitted as MSE builds and submit them. 2018-04-03 09:58:57 -04:00
mprahl
eb0b2e1c38 Add the database resolver plugin 2018-04-03 09:58:57 -04:00
Jan Kaluza
253d29bcef Rewrite ModuleBuild methods to get all streams and all builds using the latest version, not build id. 2018-04-03 09:58:57 -04:00
Jan Kaluza
e22cbbab31 Add get_modules_build_required_by_module_recursively to get the input for libsolv solver. 2018-04-03 09:58:57 -04:00
mprahl
f0852d9009 Port to libmodulemd and support v2 modulemd without module stream expansion 2018-04-03 09:58:57 -04:00
Yash Nanavati
ed25afd9ec Code changes for Python 3 support 2018-03-04 03:22:38 -05:00
mprahl
f5530d9b16 Fix flake8 errors made by jkaluza 2018-02-09 09:12:00 -05:00
Jan Kaluza
6a5d7267fd Save another 20s in tests. 2018-02-09 11:46:12 +01:00
mprahl
8f024e6b04 Remove the dependency on vcrpy in unit tests and modernize some of the test data 2018-02-05 22:17:18 -05:00
mprahl
e820fe655c Remove duplicate test that tests a module resubmission 2018-02-05 22:11:31 -05:00
mprahl
e91d09f7ca Change the format of the unit tests to pytest 2018-01-31 16:34:21 -05:00
Ralph Bean
01c8295269 Add an incrementing prefix to the dist_hash.
For #823.
2018-01-17 16:54:02 -05:00
mprahl
430ac4ba31 Use the "build_context" field when evaluating if a previous module's buildrequires changed 2018-01-16 10:36:09 -05:00
mprahl
a67b53f5c3 Add a "context" field on component and module releases in Koji for uniqueness for when Module Stream Expansion is implemented 2018-01-16 10:36:09 -05:00
mprahl
c1dbe9be27 Remove unused yaml argument in utils.submit_module_build 2017-12-11 14:14:39 -05:00
Jan Kaluza
7de120c17b Get the weight of Koji tasks and use it to sort the components in a batch instead of builds time. 2017-11-28 10:52:17 -05:00
mprahl
30ef85af01 Fix "instant complete" builds and reusing all components 2017-11-27 16:20:28 -05:00
mprahl
78fea1678b Flake8 fix 2017-11-27 16:20:11 -05:00
Martin Curlej
a1fd9daa73 Moved skiptests cli option 2017-11-21 09:07:32 +01:00
Matt Prahl
ea26e0281a Merge #788 Fix bug and clean up scm.get_latest 2017-11-14 13:38:23 +00:00
mprahl
1622494b17 Replace the name of the "branch" parameter in "scm.get_latest" to "ref" 2017-11-13 09:20:20 -05:00
Ralph Bean
8431d2698b Explicit imports of builders in the test suite. 2017-11-10 16:03:14 -05:00
mprahl
d8f126e978 Allow resuming from a failure during the "init" phase
This also shifts build failure transitions from individual functions
in utils.py to the init module handler.
2017-11-06 14:15:12 -05:00
mprahl
58d160cce4 Transition a failed module to wait instead of init upon resuming 2017-11-03 15:12:39 -04:00
mprahl
45cce653eb Add the ability to specify different rebuild methods 2017-11-01 15:39:43 -04:00
Martin Curlej
60b3d97c97 flake8 cleanup
Signed-off-by: Martin Curlej <mcurlej@redhat.com>

removed some noqa tags
2017-10-25 12:13:59 +02:00
mprahl
f5de140521 Schedule components based on build time 2017-10-23 15:33:57 -04:00
mprahl
8e41f9f335 Try to reuse all components in the batch before starting it 2017-10-23 15:33:57 -04:00
Igor Gnatenko
1e6708b34f MockedSCM -> FakeSCM
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2017-10-18 17:37:13 +02:00
mprahl
62d438651a Fix tests 2017-10-16 15:09:42 -04:00
Jan Kaluza
7ebb4a8bc5 Conflict with packages filtered out from the build-requires to ensure they won't appear in a buildroot. 2017-09-15 13:47:33 +02:00
Jan Kaluza
83628ec74f Add 'requires' of 'build-required' modules to buildroot when building module. 2017-09-08 09:25:44 +02:00
Jan Kaluza
4f4a6c92b0 Use PDC ordering to get the latest module. 2017-09-07 09:16:19 +02:00
Jan Kaluza
aac4227eb8 Add 'mbs-build local [[--add-local-build n:s:v], ...]' to use local builds as dependency. 2017-08-17 10:00:19 +02:00
Filip Valder
09b3f32dbb Fix #619: Support for module YAML file validation within a SCM repository 2017-08-07 13:10:53 +02:00
Filip Valder
7ef2975984 PEP8 fixes 2017-07-17 18:29:10 +02:00
Jan Kaluza
b4c0f49e4b Fix get_reusable_component in case when database returns components in different order than what we have in MBS. 2017-06-05 15:03:59 +02:00
Jan Kaluza
af2d2f8ad1 Do not reuse components when rpm macros change 2017-05-22 13:42:02 +02:00
mprahl
6f44a995f4 Raise an error when a module includes a module with the same component 2017-04-24 08:55:25 -04:00