1
0
mirror of https://github.com/openSUSE/osc.git synced 2024-11-15 08:36:13 +01:00
Commit Graph

18 Commits

Author SHA1 Message Date
c7af0e458f Use Field.get_callback to handle quiet/verbose and http_debug/http_full_debug options 2024-01-24 15:47:37 +01:00
a8c7661627 Implement 'quiet' conf option 2024-01-24 15:47:37 +01:00
82216c72b4 Implement reading credentials from environmental variables
Options for apiurls can be set via OSC_HOST_<ALIAS>_<OPTION>=...
This requires a configured alias in the config file.

Setting the default apiurl via OSC_APIURL=... was working already.
Also OSC_CONFIG= / --config= was already implemented to skip loading configuration entirely.

Options for the default apiurl can be now set via:
  OSC_USERNAME=...
  OSC_CREDENTIALS_MGR_CLASS=...
  OSC_PASSWORD=...

This, for example, makes running osc in containers with
credentials stored in environmental variables possible:
OSC_CONFIG= OSC_APIURL=<url> OSC_USERNAME=<user> OSC_PASSWORD=<password> osc ...
2024-01-08 15:21:45 +01:00
16cdc067a5 Store cached model defaults in self._defaults, avoid sharing references to mutable defaults 2024-01-03 21:22:30 +01:00
587c094f61 Limit model attributes to predefined fields by forbidding creating new attributes on fly 2024-01-03 21:21:38 +01:00
69a68b06b3 Fix conf.write_initial_config() to use read_file() instead of deprecated readfp() 2023-11-15 09:18:22 +01:00
c790134aa4 Fix apiurl_aliases handling in OscOptions.__getitem__ 2023-10-24 00:33:21 +02:00
a2e7383eca Allow undefined fields in Options and HostOptions
Plugins seem to be using oscrc and osc.conf.config to store their config options.
All fields that are not known to osc are now stored in the 'extra_fields' dictionary
and handled in __getitem__() and __setitem__() as they were regular fields.
Such values are not checked for their types and the dictionary simply holds
strings obtained from oscrc or anything the plugins set through the python API.
2023-10-19 14:23:33 +02:00
848f5fe48f Switch 'osc.conf.config' from dict to Options class with type checking 2023-09-11 21:14:45 +02:00
Tammo Oepkes
b9014ccd56
Fix api_host_options for custom CAs (#1403) 2023-09-11 21:06:34 +02:00
f9dc3122f9 Add more config options among integer options 2023-08-15 14:29:18 +02:00
a5816132c7 tests: Fix TestConf to load oscrc from fixtures 2023-08-09 13:04:17 +02:00
2a9edeec5b conf: Change how api_host_options determine option types
The _integer_opts and _boolean_opts specify option types for both
global options as well as api_host_options
2023-02-21 14:42:30 +01:00
Dirk Müller
adb1a9b4ef mark boolean and integer_opts as private
It is unused elsewhere, and only used for unit-testing
2022-12-01 10:05:32 +01:00
b306bf0b91 Convert defaults to their expected types
Fixes problems in reading conf values before the configuration
is fully initialized.
2022-08-22 15:08:49 +02:00
lethliel
36ec0c48d4 Remove passx encode/decode functions from conf.py
They are no longer needed with the new CredentialsManagers
2019-08-29 15:06:48 +02:00
Marcus Huewe
57d9b48dc0 - tests.suite: added TestConf testcase to suite 2014-01-08 15:43:57 +01:00
Michal Vyskocil
111fd87715 passx encode/decode functions
The string.encode('bz2') does not work in python3. Implement
passx_encode/passx_decode functions compatible with python 2.6, 2.7 and
3.3.

Add a simple unit test.
2014-01-08 15:43:57 +01:00