Skip to content

Commit

Permalink
Merge pull request #1438 from matthewrmshin/rosie-prefixes-ws-default
Browse files Browse the repository at this point in the history
rosie.ws_client: new prefixes-ws-default setting
  • Loading branch information
benfitzpatrick committed Oct 27, 2014
2 parents 2a0956f + 2cdf030 commit 35185c0
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 4 deletions.
7 changes: 6 additions & 1 deletion etc/rose.conf.example
Original file line number Diff line number Diff line change
Expand Up @@ -281,10 +281,15 @@
# prefix-web.PREFIX=URL
## E.g.:
# prefix-web.foo=http://host/projects/foo/intertrac/source:
## Web service URL of an ID prefix
## Discovery service URL of an ID prefix
# prefix-ws.PREFIX=URL
## E.g.:
# prefix-ws.foo=http://host:port/rosie/foo
## List of default discovery services (space delimited list of prefixes)
## that will be used by a Rosie discovery service client
# prefixes-ws-default=PREFIX ...
## E.g.:
# prefixes-ws-default=foo bar baz
[rosie-id]

# Configuration related to the adhoc Rosie web service server
Expand Down
6 changes: 5 additions & 1 deletion lib/python/rosie/ws_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,11 @@ def __init__(self, prefixes=None, prompt_func=None, popen=None,
self.auth_managers[prefix] = RosieWSClientAuthManager(
prefix, popen=self.popen, prompt_func=self.prompt_func)
if not prefixes:
prefixes = sorted(self.auth_managers.keys())
prefixes_str = conf_rosie_id.get_value(["prefixes-ws-default"])
if prefixes_str:
prefixes = shlex.split(prefixes_str)
else:
prefixes = sorted(self.auth_managers.keys())
self.set_prefixes(prefixes)

def set_prefixes(self, prefixes):
Expand Down
18 changes: 16 additions & 2 deletions t/rosie-lookup/01-multi.t
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
if ! python -c 'import cherrypy, sqlalchemy' 2>/dev/null; then
skip_all 'python: cherrypy or sqlalchemy not installed'
fi
tests 15
tests 18
#-------------------------------------------------------------------------------
# Setup Rose site/user configuration for the tests.
export TZ='UTC'
Expand All @@ -41,7 +41,7 @@ SVN_URL_BAR="file://${PWD}/repos/bar"
# Setup configuration file.
mkdir conf
cat >conf/rose.conf <<__ROSE_CONF__
opts=port
opts=port (default)
[rosie-db]
repos.bar=$PWD/repos/bar
Expand Down Expand Up @@ -143,6 +143,20 @@ url: http://${HOSTNAME}:${PORT}/foo/search?s=bus
__OUT__
file_cmp "${TEST_KEY}.err" "${TEST_KEY}.err" </dev/null
#-------------------------------------------------------------------------------
TEST_KEY="${TEST_KEY_BASE}-search-single-by-default"
cat >'conf/opt/rose-default.conf' <<__ROSE_CONF__
[rosie-id]
prefixes-ws-default=foo
__ROSE_CONF__
run_pass "${TEST_KEY}" rosie lookup 'bus'
rm 'conf/opt/rose-default.conf'
file_cmp "${TEST_KEY}.out" "${TEST_KEY}.out" <<__OUT__
local suite owner project title
foo-aa000/trunk@1 billy bus Wheels on the bus
url: http://${HOSTNAME}:${PORT}/foo/search?s=bus
__OUT__
file_cmp "${TEST_KEY}.err" "${TEST_KEY}.err" </dev/null
#-------------------------------------------------------------------------------
TEST_KEY="${TEST_KEY_BASE}-address-both"
run_pass "${TEST_KEY}" rosie lookup --lookup-mode=address 'search?s=bus'
file_cmp "${TEST_KEY}.out" "${TEST_KEY}.out" <<__OUT__
Expand Down

0 comments on commit 35185c0

Please sign in to comment.