Commit Graph

33 Commits

Author SHA1 Message Date
mprahl
df48d4e184 Fix typos in some of the code comments 2018-10-30 11:37:44 -04:00
Jan Kaluza
13ab18425a Import -devel CG build with RPMs which are filtered out of the current real CG build.
For some modules, modularity-wg wants to be able to ship the "-devel" modules containing
the RPMs which are normally filtered out from the module.

This PR generates second Koji CG module with -devel suffix in a name with final modulemd
files containing the filtered out RPMs.
2018-10-30 13:49:12 +01:00
Jan Kaluza
ff758a48f1 Include also 'src' RPMs in the final RPMs list.
This fixes regression introduced in previous bcb104a16 commit.
2018-10-25 09:08:52 +02:00
Jan Kaluza
bcb104a16a Fix wrong inclusion of non-multilib packages in final MMD.
The original Pungi code, on which MBS code is based on, always passed only RPMs
with valid architectures to further decide if their subset should end up in a
final modulemd file.

In MBS, we pass RPMs with all architecture and there was no code to actually filter
out the RPMs which are from architectures which should never end up in a final MMD.

This commit checks that RPMs for completely different architectures will never
be considered to be included in a final MMD.
2018-10-16 09:08:14 +02:00
Lubomír Sedlář
388b31b693 Fix filtering noarch RPMs
The list of arches we compare against should not include multilib
arches. Otherwise excluding does not behave correctly.

Example:
A build has ExcludeArch: i686 (because it only works on 64 bit arches).
A noarch package is built there, but it would be excluded from x86_64.

Relates: https://pagure.io/pungi/pull-request/1050
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2018-09-27 15:12:03 +02: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
f0cdb5030d Set modulemd 'arch' field in arch-specific modulemd files imported to CG build. 2018-09-24 09:45:43 +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
eb2643703f Fix a syntax error that caused the Koji session to not be returned when the Koji CG is running 2018-06-27 10:44:41 -04:00
Ralph Bean
6981449853 Fix local builds.
I discovered that local builds have been broken by recent (good) changes in
dnf.  At the end of every batch, we regenerate the local repo with createrepo
and we also call modifyrepo to include the modulemd file as we progress.  This
was added in #467.

What we really want, is for the modulemd file to be present at the *end* of the
build.

Recently, dnf started respecting the modulemd file natively, such that builds
we built in batch0 would not show up in batch1.  They would be present in the
repo, but they would be marked as belonging to a module which was not enabled,
and so could not be pulled in.  Every module build would fail because
module-srpm-macros was in a disabled module (the module being built at the
time).

This change makes it so that the module metadata is only added to the repo at
the very end of the build.  I moved it into a `finalize` method on the builder
which the copr builder was using, and for symmetry's sake I moved the koji
content generator code to the same method on that builder.

There was a circular import issue to solve between the koji module builder and
the koji content generator modules that generated a larger diff, but is mostly
cosmetic and mock changes.
2018-06-25 17:05:22 -04:00
mprahl
2e6589ae41 Check the libmodulemd version instead of modulemd 2018-05-31 14:32:06 -04:00
mprahl
aa990d3de3 Use six instead of future 2018-04-05 11:32:21 -04:00
mprahl
19db295795 Fix flake8 errors 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
477fa2ed6a Set the owner on Koji CG builds 2018-01-30 09:23: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
b0eada3e33 Fix KojiContentGenerator from a bug in PR 771 2017-11-10 08:33:53 -05: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
Jan Kaluza
ad6874b0e6 Fix #670 - Tag Content Generator Koji build to special tag based on the base module stream 2017-09-25 08:36:29 +02:00
Ralph Bean
ef4acf0641 Add the koji tag for the content to the CG metadata.
@puiterwijk will want to use this in robosignatory to figure out what
content needs to be signed.
2017-09-07 11:38:45 -04:00
Jan Kaluza
7d3b4f5147 Upload build logs to Koji, use .txt extension instead of .yaml by default. 2017-08-07 15:39:44 +02:00
Ralph Bean
cbb75d34e6 Also, only remove the dir if we succeed in passing the buck to koji. 2017-08-03 14:27:26 -04:00
Ralph Bean
dad4500397 Some improved logging for the content generator.
We failed with an error on the first try today, but not enough logging
to figure out why.  This adds more.
2017-08-03 14:26:42 -04:00
Filip Valder
7ef2975984 PEP8 fixes 2017-07-17 18:29:10 +02:00
Stanislav Ochotnicky
747b60f4b4 Add build logs into the koji content generator
This change adds another output next to the mmd file - a build.log which
will contain builds collected during the module build
2017-07-03 13:07:43 +02:00
Stanislav Ochotnicky
db44ce8c3c Convert mmd strings to unicode
This makes it easier to spot testsuite issues as well since json.loads
returns unicode strings
2017-07-03 11:48:41 +02:00
Ralph Bean
c907ff1205 Provide a traceback for mohan.
... in case he ever wants it.
2017-06-22 14:12:57 -04:00
Stanislav Ochotnicky
5eb4c1652f Modify content generator based on Koji dev feedback
- Change the type of build from modulemd to just module
- Change build output type from modulemd to file
- Provide the typeinfo also for the modulemd.yaml output
- Convert dashes to underscores for build version (i.e. mbs stream).
  koji build versions can't have dashes - we can provide real value in
  the extra section
- Add name, stream, version data into build extra section
- Add tool information for modulemd
- Add buildroot components from host running mbs
- Added few methods licensed under BSD 3-clause (from atomic-reactor)
2017-05-15 10:39:01 +02:00
Stanislav Ochotnicky
9127687fee Implement import content generator output into koji
This commit prepares a directory with outputs that will be uploaded to
koji (just the mmd file for now). It also adjusts koji_import to call
CGImport with the metadata and the directory to import the results.

Last step will be to call this method at the end of successful module
build
2017-05-04 15:45:46 +02:00
Stanislav Ochotnicky
bb464b80b2 Fix content generator using name instead of mmd content
The original variable name was confusing and caused the misuse. This has
been fixed as well
2017-05-04 15:45:45 +02:00
Stanislav Ochotnicky
33add7aff7 Add Koji content generator class
This commit adds support classes for koji content generator imports.
Using this class will come later
2017-05-02 10:55:40 +02:00