Christian Kellner
20831a99bb
plugin/builder: fix BuildError msg to include name
...
Fix the error message string to be a proper f-string in the
OSBuildImage.arches_for_config method, so it actually includes
the name of the tag.
2020-09-11 23:18:04 +01:00
Christian Kellner
928d2278be
plugin/cli: return task result when waiting
...
When waiting for the task, return the result from the `watch_task`
call, which will indicate if the task was successful. This will
then be reflected in the error code of the koji call.
2020-09-10 18:41:13 +01:00
Christian Kellner
af4e66d2b2
plugin/hub: use jsonschema to validate input
...
Use jsonschema to validate the input to the XMLRPC call to catch
mistakes early, i.e. before creating the task.
2020-09-10 18:41:13 +01:00
Christian Kellner
3dc463c8dd
plugin/cli: pretty-print the options dict
...
Also show the options that we are using.
2020-09-10 18:41:13 +01:00
Christian Kellner
3f5de8a68d
plugin/cli: eager check of target input
...
Check the target with name exists and has a destination tag, so
we can abort early.
2020-09-09 15:56:35 +02:00
Christian Kellner
3934382337
plugin/cli: honor global --quiet flag
...
If --quiet was requested globally, then don't print anything.
2020-09-09 15:51:11 +02:00
Christian Kellner
8099d79aa1
plugin/cli: support --wait, --nowait option
...
Can be used to explicitly opt in or out of waiting for the task to
finish. The help text is taken from the standard koji client.
2020-09-09 15:28:36 +02:00
Christian Kellner
79387f1f2c
plugins/cli: use upstream description help text
...
For --repo and --release, use the help text from koji build-image.
2020-09-09 15:07:36 +02:00
Christian Kellner
81aebbc681
plugin/cli: use koji_cli.lib.OptionParser
...
Use koji's OptionParser instead of argparse to be better aligned
with the formatting of standard koji options.
2020-09-09 15:06:53 +02:00
Christian Kellner
dda203419c
plugin/osbuild: adapt for composer API changes
...
The task id can and must now be passed to composer via the `koji`
object in the `ComposeRequest`. Do that.
2020-09-09 14:12:25 +02:00
Christian Kellner
49a6974e18
plugins/cli: initial version of the cli plugin
...
Re-uses code from compose.py. Needs to be installed into
/usr/lib/python3.$/site-packages/koji_cli_plugins
Yes indeed.
2020-09-08 17:46:21 +02:00
Christian Kellner
8fb1342631
Make image_type and distro required arguments
...
Distro, in composer terms "distribution", and "image_type" are
required for composer, so make that explicit everywhere in the
code.
2020-09-08 16:13:48 +02:00
Christian Kellner
c5db26596f
plugin/builder: nicer errors on compose fail
...
When creating the compose requests fails, catch it and transform
it into a koji.GenericError, which will avoid showing the full
backtrace in the UI.
2020-09-07 20:35:32 +02:00
Christian Kellner
a9e187d38a
plugin/hub: rename method to osbuildImage
...
Remove the 'Test' suffix.
2020-09-07 19:03:15 +02:00
Christian Kellner
cb7e4d76c5
plugins/builder: change location of config file
...
Make the path reflect the name of the package / project.
2020-09-07 18:39:13 +02:00
Christian Kellner
ccf6d60dac
plugin/osbuild: simple whitespace changes
...
No semantic change.
2020-09-07 18:29:22 +02:00
Christian Kellner
3ef4d5e566
plugin/osbuild: make release optional
...
If release was not in `opts`, use `session.getNextRelease` to
obtain the next release.
2020-09-07 18:23:28 +02:00
Christian Kellner
dbf2960792
plugins/osbuild: sync with composer's koji API
...
Send the NVR as part of the compose request. The result now also
contains the koji build id. The distro argument is taken from
the options.
2020-09-07 18:15:30 +02:00
Christian Kellner
d31cadd304
plugins/builder: make urls configurable
...
Can't really hardcode those.
2020-09-06 20:10:59 +02:00
Christian Kellner
f58ecb97ac
plugin/builder: support repo overwrites
...
Allow the repository information to be overwritten by the user
via opts.
2020-09-05 19:28:17 +02:00
Christian Kellner
b9b3680809
plugin/builder: make use of repo information
...
Don't hard-code the repo info, but get if via the build tag.
2020-09-05 18:54:52 +02:00
Christian Kellner
7fa31ce349
plugins/builder: check for supported arches
...
Fetch the supported architectures via the target and detect if
any of the requested are not supported.
2020-09-05 18:21:21 +02:00
Christian Kellner
6cdc3e7177
plugin/builder: ability to use as executable
...
Turn the plugin into an executable.
2020-09-05 17:28:44 +02:00
Christian Kellner
025d3b1902
plugin/builder: create proper composer client
...
Make a proper client for the osbuild composer koji API and use it.
2020-09-05 17:27:55 +02:00
Christian Kellner
8f41087797
plugins/builder: proof-of-concept compose
...
Talk to composer and create a compose via a hand crafted compose
request.
2020-09-05 16:33:45 +02:00
Christian Kellner
aefe1218b5
initial import
2020-09-02 19:15:25 +02:00