Commit Graph

301 Commits

Author SHA1 Message Date
Ralph Bean
ca61d6bb29 Allow passing in multiple tag names to the validation decorator.
We have problems when we try to wrap one decorator around another.
There are ways to do that with the
[decorator](https://pypi.python.org/pypi/decorator) module nicely,
however.. they are ugly.

Take a look at this:

https://github.com/micheles/decorator/blob/master/src/decorator.py#L217-L218

And this:

https://github.com/micheles/decorator/blob/master/src/decorator.py#L185-L188

The approach in this PR is.. simpler.
2017-02-28 17:15:55 -05:00
Filip Valder
6dd223fd12 support for dicts + tests 2017-02-28 20:54:03 +01:00
Filip Valder
6b343896dd s/rida/mbs/ 2017-02-28 17:59:02 +01:00
Filip Valder
13b7bcd03e Support for state tracing of modules and components
- DB migration scripts.
- Models: ComponentBuildTrace, ModuleBuildTrace.
- ModuleBuild.state_trace method for querying for a particular module's
state history.
- SQLAlchemy before commit session event handler for recording
module/component state changes.
- REST API verbose mode for getting state trace of a particular module.
- Tests use make_session, so that event handlers are in effect.
- Short info in README about verbose mode.
- Tests verifying whether state trace information about a module appears
in verbose mode.
- Other minor fixes (RidaBase -> MBSBase, PEP8...)
2017-02-28 16:15:43 +01:00
Matt Prahl
7dfb647e08 Merge #347 Possibility to specify optional parameters when submitting build 2017-02-28 14:26:20 +00:00
Filip Valder
a4366d9be7 Koji tag validation
- Decorator supporting str/list args
- ProgrammingError exception which may uncover typos in the names of args to validate
- Configurable whitelist of koji tag prefixes
- Add basic validation to test_build.TestModuleBuilder
2017-02-28 09:08:32 +01:00
Jakub Kadlčík
9429114836 Get empty string if Content-Type is not in headers 2017-02-27 16:20:01 +01:00
Jakub Kadlčík
cef690f260 Not accept copr parameters when different builder is used 2017-02-27 15:53:39 +01:00
Ralph Bean
0fe6c88945 Merge #354 Allow MBS to run behind a reverse proxy. 2017-02-27 13:00:31 +00:00
Jakub Kadlčík
34ea4a8efe Move validate_optional_params function to utils.py 2017-02-26 22:23:50 +01:00
Jakub Kadlčík
48f27cd7ea Get one() result instead of first() 2017-02-26 22:19:31 +01:00
Matt Prahl
56d6d90ece Enforce that the mmd can't define a different module name, stream, or version 2017-02-24 10:37:40 -05:00
Ralph Bean
1cf582e866 Allow MBS to run behind a reverse proxy.
This fixes #352.
2017-02-24 10:23:35 -05:00
Jakub Kadlčík
5c52fce586 Update to the accurate down_revision 2017-02-23 20:55:51 +01:00
Jakub Kadlčík
7799515994 Use function for validating optional params to reduce code duplicity 2017-02-23 20:51:31 +01:00
Jakub Kadlčík
62e26ba652 Use better way of checking for forbidden columns 2017-02-23 20:51:31 +01:00
Jakub Kadlčík
5a65f50b52 Use built-in to_dict() function 2017-02-23 20:51:31 +01:00
Jakub Kadlčík
38bdc92248 Have immutable default value for optional_params 2017-02-23 20:51:31 +01:00
Jakub Kadlčík
6bd9e7026f Use optional module build params in CoprModuleBuilder 2017-02-23 20:51:31 +01:00
Jakub Kadlčík
92dce63091 Allow submitting optional parameters such as copr_owner and copr_project 2017-02-23 20:51:31 +01:00
Jan Kaluza
8b83e78394 Fix build_module_locally. 2017-02-23 10:42:34 +01:00
Matt Prahl
385045d778 Reuse components from previous module builds 2017-02-21 14:22:30 -05:00
Matt Prahl
a5cc4eb280 Add a module's commit hash, scmurl, and the buildrequires' commit hashes, stream, and version in the modulemd 2017-02-21 09:53:05 -05:00
Matt Prahl
08444ced95 Add additional error checking to get_module_modulemd 2017-02-21 09:32:10 -05:00
Matt Prahl
26c08f5e31 Separate record_component_builds into two functions 2017-02-21 09:32:09 -05:00
Matt Prahl
770184ed95 Make SCM.get_latest more efficient 2017-02-21 09:32:09 -05:00
Matt Prahl
3156921a02 Support new nomenclature on get_module function when passing in a modulemd 2017-02-21 09:32:09 -05:00
Jan Kaluža
3457f5289a Merge #345 Handle None returned by _get_token_info 2017-02-21 14:27:59 +00:00
Jan Kaluža
18f9089643 Merge #323 Possibility to submit yaml file 2017-02-21 14:21:45 +00:00
Jan Kaluza
0dbc1f8205 Handle None returned by _get_token_info 2017-02-21 09:24:36 +01:00
Jan Kaluza
1d8bc3e33a Use concurrent.futures instead of our own ThreadPool implementation 2017-02-21 08:02:50 +01:00
Jan Kaluza
aa6db9fcce Use StopIteration in QueueBasedThreadPool to stop the threads. 2017-02-21 08:02:50 +01:00
Jan Kaluza
e7acde9aa5 Use six.moves to import Queue 2017-02-21 08:02:50 +01:00
Jan Kaluza
64d96966e2 Use Queue based ThreadPool instead of the default Python's one. Improve locking and debugging in the Mock backend. 2017-02-21 08:02:50 +01:00
Ralph Bean
43ebe6d943 Merge #343 Use an authorization header instead of cookie for OIDC authn. 2017-02-21 02:13:30 +00:00
Ralph Bean
64fb5e9a1d Be nice. Kill whitespace. 2017-02-20 21:12:30 -05:00
Ralph Bean
1bd421e9c2 Merge #340 allow to explicitly disable client authentication 2017-02-21 02:09:48 +00:00
Matt Jia
143effcd15 Error out if OIDC_CLIENT_SECRETS is not set in server config 2017-02-21 11:08:42 +10:00
Matt Jia
be65a0ff81 allow to explicitly disable client authentication 2017-02-21 11:08:37 +10:00
Ralph Bean
61b7b6f47d Use an authorization header instead of cookie for oidc token.
Fixes #330.
2017-02-20 13:12:00 -05:00
Ralph Bean
0dec5f2d3c Remove unused import. 2017-02-20 13:07:27 -05:00
Ralph Bean
0ffb1f7e42 Test that we can clone repos with a trailing slash. 2017-02-20 12:44:49 -05:00
Ralph Bean
7c7e21dd69 Merge #341 Do not start new batch when component is built when there is already some in progress. 2017-02-20 13:44:39 +00:00
Ralph Bean
ef14008927 Split this string, at @puiterwijk's suggestion. 2017-02-20 08:41:36 -05:00
Jan Kaluza
6a0e8d0b2e Do not start new batch when component is built when there is already some in progress. 2017-02-20 13:51:10 +01:00
Jakub Kadlčík
1630c5f14f Raise user friendly exception when yaml submission is not allowed 2017-02-19 22:38:43 +01:00
Jakub Kadlčík
3e2ee93dd8 Rename conf option to YAML_SUBMIT_ALLOWED 2017-02-19 22:35:55 +01:00
Jakub Kadlčík
43b653097a Add config option for allowing of direct submitting yaml files to mbs 2017-02-19 22:35:55 +01:00
Jakub Kadlčík
43acbdbdba Implement possibility to submit yaml files (See #310) 2017-02-19 22:35:55 +01:00
Jakub Kadlčík
1591b9c5e7 Create method for loading modulemd object from yaml 2017-02-19 22:35:55 +01:00