Commit Graph

617 Commits

Author SHA1 Message Date
Ralph Bean
83db7d07bf Whitespace. 2016-11-21 15:36:34 -05:00
Ralph Bean
2357691c03 Add a test for resolve_profiles. 2016-11-21 13:50:55 -05:00
Ralph Bean
439721da99 Gather build groups from module profiles.
Fixes #181.

When initializing the buildroot for a module build, we used to set up
some build 'groups' for the tag: `build` and `srpm-build`.  These are
the lists of RPMs that koji is supposed to install into the buildroot
before anything else is done.  Crucial stuff goes here, like `git` in
the `srpm-build` group so that koji can clone the repo in the first
place.

We had those lists hardcoded before.  This list changes that to use the
`buildroot` and `srpm-buildroot` profiles of the modules which are our
dependencies (recursively).

This will allow people like @psabata and the base-runtime to make
changes to the build groups for the generational core and work around
their own problems, instead of having to ask us to expand that list.

There were a couple ways to do this:

- I could've cloned the SCM repos for all dependencies and gotten their
  profiles from the modulemd source there.  This seemed flimsy because
  we only want to depend on the profiles of modules that were *really*
  built.
- We could modify PDC to stuff the modulemd contents in there.  We
  already get some dep and tag info from PDC.  My thought here was that
  it would be too heavyweight to store every copy of the modulemd file
  in PDC for every build ever.  We already have it in MBS.
- Lastly, and this is what I did here, I just referred to MBS' own
  database to get the profiles.  This seems to work just fine.

One side-effect is that we need the build profiles from the manually
bootstrapped modules that were put together by hand, and were never
built in the MBS.  In order to work around that, I added an alembic
upgrade script which pre-populates the database with one fake
bootstrapped base-runtime module.  We can expand on that in the future
if we need.
2016-11-21 13:25:52 -05:00
Ralph Bean
e278ffa5a4 build.buildroot_task_id is not a thing.
... and it never was, as far as I can tell from the gitlog.
2016-11-21 13:25:52 -05:00
Ralph Bean
641639b5b2 Remove this dockerfile stuff.
It isn't actually used by Jenkins, and is therefore confusing.

Fixes #182.
2016-11-21 09:44:17 -05:00
Jan Kaluza
528b6ab20a Do not submit failed components for a build 2016-11-21 13:07:18 +01:00
Jan Kaluza
9aca8057a3 Handle the exception in builder.build(...) code and do not mark whole module as failed - mark just the particular component. 2016-11-18 19:09:03 +01:00
Ralph Bean
5e8013f429 A koji configuration for the tests. 2016-11-18 10:22:50 -05:00
Ralph Bean
d83f210297 Get tests of the retry decorator working in the test suite. 2016-11-18 10:19:41 -05:00
Ralph Bean
c65cf0ab7f Merge #207 Fix tests and move duplicate code to separate class. 2016-11-18 14:26:03 +00:00
Jan Kaluza
936c22f33e Fix tests and move duplicate code to separate class. 2016-11-18 15:12:04 +01:00
Filip Valder
8c6a5f4919 Merge #196 Fix #94 - handle IOError 2016-11-18 14:11:20 +00:00
Filip Valder
9b808d4354 test buildroot_read() incl. FakeKojiModuleBuilder and FakeKojiSession 2016-11-18 14:39:27 +01:00
Filip Valder
99c3c1e717 catch on IOError and retry 2016-11-18 14:37:54 +01:00
Jan Kaluža
b2b63e6a1f Merge #204 Resolve component refs on build submission. 2016-11-18 12:25:57 +00:00
Filip Valder
2b9885241a resolved conflicts with #179 2016-11-18 10:33:51 +01:00
Filip Valder
35781690a7 wip: new test for KojiModuleBuilder.buildroot_ready() 2016-11-18 10:24:34 +01:00
Filip Valder
37cde8cf2f Load testing values from config 2016-11-18 10:24:34 +01:00
Filip Valder
eee1283a14 PEP8 2016-11-18 10:24:34 +01:00
Filip Valder
62b4a34ffd Load config 2016-11-18 10:24:34 +01:00
Filip Valder
d8942ba44a Load defaults from config 2016-11-18 10:24:34 +01:00
Filip Valder
951a54576f add: Testing config values for koji 2016-11-18 10:24:34 +01:00
Filip Valder
2a53b74bcf Lint 2016-11-18 10:24:34 +01:00
Filip Valder
2227d88333 Uncomment /etc/module_build_service stuff kor koji.conf 2016-11-18 10:24:34 +01:00
Filip Valder
ca198daebf Default network timeouts 2016-11-18 10:24:34 +01:00
Filip Valder
708b9a52a8 Network timeouts + lint 2016-11-18 10:22:35 +01:00
Filip Valder
225d116d45 lint 2016-11-18 10:22:35 +01:00
Ralph Bean
bf9e854046 Store the reason for failure. 2016-11-17 16:14:22 -05:00
Ralph Bean
411da3def5 Resolve component refs on build submission.
Fixes #203.

The modulemd files we had used to all pin the commit hashes of the
components they were pulling in.  We changed this with modulemd-1.0 and
now modules can define their components in terms of their *stream*
(a.k.a. their dist-git *branch*).  This is awesome, and is a big
stepping stone towards greater things.

The problem is that we used to take that git ref literally from the
modulemd and pass it on to koji.  Now that instead we are passing on a
branch name to koji, it falls down.  Koji requires us to send it an
explicit commit hash.

This change takes that branch name and converts it to an explicit commit
hash when the module is first submitted.

Verified that things are working again:
- http://koji.stg.fedoraproject.org/koji/taskinfo?taskID=90084980
2016-11-17 14:49:48 -05:00
Matt Prahl
7857f3a373 Remove krb5-stg.fp.o 2016-11-16 16:26:59 -05:00
Matt Prahl
03df8d5865 Move docs to docs folder 2016-11-16 16:16:43 -05:00
Matt Prahl
e470f79ffb Remove information on manual kerberos configuration 2016-11-16 16:15:56 -05:00
Matt Prahl
efd5d203b3 Merge #184 Add Build Rate Limiting 2016-11-16 20:51:07 +00:00
Ralph Bean
a45eba41e8 Merge #194 Allow configurable mock resultsdir and backup logs after each component build 2016-11-16 20:47:18 +00:00
Matt Prahl
244b77f54c Add component build throttling 2016-11-16 15:24:17 -05:00
Matt Prahl
67d07023c5 Rename function to start_build_batch for further flexibility in the future 2016-11-16 15:24:16 -05:00
Matt Prahl
2cb7ce99c6 Add NUM_CONSECUTIVE_BUILDS configuration option 2016-11-16 15:24:16 -05:00
Matt Prahl
fb043cd2c7 Add TODO comment 2016-11-16 15:24:16 -05:00
Matt Prahl
02c245961b Start fedmsg-relay on boot in Vagrant 2016-11-16 15:24:16 -05:00
Matt Prahl
62654f871f Fixes bug where the build tag was not returned 2016-11-16 15:24:16 -05:00
Matt Prahl
28d684331f Remove stale code from previous modulemd version 2016-11-16 15:24:16 -05:00
Ralph Bean
d6418a7de5 Merge #195 This repo_from_tag belongs to copr builder 2016-11-16 14:53:28 +00:00
Filip Valder
e2e6639ba7 wip: new test for KojiModuleBuilder.buildroot_ready() 2016-11-16 15:24:53 +01:00
Filip Valder
45cdd608dc Load testing values from config 2016-11-16 15:23:40 +01:00
Filip Valder
431a56e148 PEP8 2016-11-16 15:22:48 +01:00
Filip Valder
d5dfbde5d5 Load config 2016-11-16 15:22:29 +01:00
Filip Valder
371f3196c9 Load defaults from config 2016-11-16 15:21:56 +01:00
Filip Valder
797a339b99 add: Testing config values for koji 2016-11-16 15:21:32 +01:00
Filip Valder
f2a8801277 Lint 2016-11-16 14:00:50 +01:00
Filip Valder
47ccf6d318 Uncomment /etc/module_build_service stuff kor koji.conf 2016-11-16 13:55:07 +01:00