Skip to content

Commit

Permalink
Fix apiurl_aliases handling in OscOptions.__getitem__
Browse files Browse the repository at this point in the history
  • Loading branch information
dmach committed Oct 23, 2023
1 parent ea7bebf commit 9910d93
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 3 deletions.
2 changes: 1 addition & 1 deletion osc/commandline.py
Original file line number Diff line number Diff line change
Expand Up @@ -3870,7 +3870,7 @@ def do_copypac(self, subcmd, opts, *args):

src_apiurl = conf.config['apiurl']
if opts.to_apiurl:
tgt_apiurl = conf.config['apiurl_aliases'].get(opts.to_apiurl, opts.to_apiurl)
tgt_apiurl = conf.config.apiurl_aliases.get(opts.to_apiurl, opts.to_apiurl)
else:
tgt_apiurl = src_apiurl

Expand Down
6 changes: 4 additions & 2 deletions osc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,9 @@ def _get_field_name(self, name):
def __getitem__(self, name):
field_name = self._get_field_name(name)

if field_name is None:
if name == "apiurl_aliases" and hasattr(self, "apiurl_aliases"):
return self.apiurl_aliases
elif field_name is None:
return self.extra_fields[name]

try:
Expand Down Expand Up @@ -1617,7 +1619,7 @@ def config_set_option(section, opt, val=None, delete=False, update=True, creds_m
cp = get_configParser(config['conffile'])

if section != 'general':
section = config['apiurl_aliases'].get(section, section)
section = config.apiurl_aliases.get(section, section)
scheme, host, path = \
parse_apisrv_url(config.get('scheme', 'https'), section)
section = urljoin(scheme, host, path)
Expand Down
5 changes: 5 additions & 0 deletions tests/test_conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -419,6 +419,11 @@ def test_extra_fields(self):
self.assertEqual(host_options["new-option"], "value")
self.assertEqual(host_options.extra_fields, {"plugin-option": "plugin-host-option", "new-option": "value"})

def test_apiurl_aliases(self):
expected = {"https://api.opensuse.org": "https://api.opensuse.org", "osc": "https://api.opensuse.org"}
self.assertEqual(self.config.apiurl_aliases, expected)
self.assertEqual(self.config["apiurl_aliases"], expected)


class TestFromParent(unittest.TestCase):
def setUp(self):
Expand Down

0 comments on commit 9910d93

Please sign in to comment.