Commit Graph

154 Commits

Author SHA1 Message Date
Filip Valder
316dd43778 better use conf items/vars 2016-12-05 15:17:37 +01:00
Filip Valder
d9976818a4 change security bits for cert_key_file 2016-12-05 15:17:37 +01:00
Filip Valder
56a2004320 not very smart... 2016-12-05 15:17:37 +01:00
Filip Valder
7c4443fd3e this shall be accessible for module_build_service's product users in order to be able to upgrade underlying DB 2016-12-05 15:16:41 +01:00
Filip Valder
77cd112275 move & lint 2016-12-05 15:16:41 +01:00
Filip Valder
d166b7e213 move & lint 2016-12-05 15:16:41 +01:00
Filip Valder
3eb152f7d6 simplify things 2016-12-05 15:16:41 +01:00
Filip Valder
3d0e83d8e1 load source file config.py as module 2016-12-05 15:16:41 +01:00
Jan Kaluza
8b3244405f Make the OIDC error messages more verbose and include non-secret client-secrets.json 2016-12-05 11:40:00 +01:00
Jan Kaluza
8cb4e0de5d Use OIDC to auth the users, replace submit-build.sh by submit-build.py which does hackish way of OIDC just to test things. 2016-12-02 14:52:04 +01:00
Ralph Bean
d453352f84 Merge #231 Copr - real building && finalize method 2016-12-01 21:47:21 +00:00
Ralph Bean
9303be7a4e Merge #228 Drop alembic fake base-runtime code. 2016-12-01 15:56:10 +00:00
Jakub Kadlčík
bdec1bb85f Dont create module if any build failed 2016-12-01 02:54:53 +01:00
Jakub Kadlčík
74ab8ab8cc Refactor duplicit build_from_scm method 2016-12-01 02:19:06 +01:00
Jakub Kadlčík
c68a1908bd Wait in loop until all builds are finished 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
fffefb5f48 Fallback to koji when module is not in copr 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
99d2dfbc87 There really should be 'failed' 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
84b7b08f25 Upgrade copr builder to support modulemd 1.0.2 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
94c1b80cb2 Workaround missing module_build_tag in copr 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
83a71e0443 Wait some time until builds are finished 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
0134f3a32d Move module composing in copr to finalize method 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
7c8349e50c Call finalize method on builder 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
f9220a4470 Pretend that build was successful so that rida submits next batch 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
0e3083fc4c Copy build_srpm and build_from_scm from MockModuleBuilder 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
638a287a29 Add TODO that is much clearer than docstring 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
6702b9498f Send module information in multiple fields 2016-12-01 02:16:56 +01:00
Jakub Kadlčík
e03272e966 Convert characters not supported in copr project names 2016-12-01 02:16:56 +01:00
Matt Prahl
91af4a1840 Change cancel build API to be a PATCH instead 2016-11-30 15:00:32 -05:00
Ralph Bean
a2122f84a4 Move insert_fake_baseruntime to utils.py. 2016-11-30 13:11:14 -05:00
Jan Kaluža
016c4f4c54 Merge #229 Mock backend: set the metadata_expire to 3600 seconds, install the module-build-macros package, fix the logs rename after build. 2016-11-30 16:12:15 +00:00
Jan Kaluža
bb5dd5f75c Merge #227 Fix #105 - Add new cancel API call which can be used to cancel the module build. 2016-11-30 15:56:34 +00:00
Jan Kaluza
6a0ad1074b Mock backend: set the metadata_expire to 3600 seconds, install the module-build-macros package, fix the logs rename after build. 2016-11-30 16:54:39 +01:00
Jan Kaluza
1e4e1be91e Fix #105 - Add new cancel API call which can be used to cancel the module build. 2016-11-30 12:20:50 +01:00
Jan Kaluza
f7350a395f Allow file:// URLs when building modules locally 2016-11-30 10:33:20 +01:00
Ralph Bean
27484f2c32 Merge #225 Fix #223, #224 - Use generated Mock config, define local RPM repository there and make it available in Mock chroot after batch is built. 2016-11-28 16:39:21 +00:00
Ralph Bean
20cf4a9ea8 Merge #218 Try to build testmodule.yaml as unit-test with fake builder backend. 2016-11-28 16:35:10 +00:00
Jan Kaluza
dd3eb61b53 Fix #223, #224 - Use generated Mock config, define local RPM repository there and make it available in Mock chroot after batch is built. 2016-11-25 12:15:32 +01:00
Jan Kaluza
77366b94ce Try to build testmodule.yaml as unit-test with fake builder backend. 2016-11-24 14:01:28 +01:00
Jan Kaluza
4f6d683645 Fix #173 - Handle includedmodules by building their components recursively. 2016-11-23 06:38:16 +01:00
Jan Kaluza
c719e1d0c1 Fix the buildroot_connect calls in repos and models and set 'system' to 'mock' when invoked from manage.py using build_module_locally 2016-11-22 10:54:38 +01:00
Filip Valder
88e6ddf953 configuration logic goes to config.py 2016-11-21 22:54:18 +01:00
Filip Valder
f8496379eb cosmetic changes 2016-11-21 22:54:18 +01: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
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
d83f210297 Get tests of the retry decorator working in the test suite. 2016-11-18 10:19:41 -05:00
Filip Valder
8c6a5f4919 Merge #196 Fix #94 - handle IOError 2016-11-18 14:11:20 +00: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