Parse the provided container environment
Users should be able to provide environment in the following way: $ zun container-create --environment key1=value1 \ --environment key2=value2 \ ... In addition, most of the unit tests were not running due to an incorrect path in testr.conf. This commit fixed it. Change-Id: I90ca3cd0732616eae180abf0c8daf98abf01bd77
This commit is contained in:
parent
75ffef6d72
commit
bcd33fe32f
@ -2,6 +2,6 @@
|
||||
test_command=OS_STDOUT_CAPTURE=${OS_STDOUT_CAPTURE:-1} \
|
||||
OS_STDERR_CAPTURE=${OS_STDERR_CAPTURE:-1} \
|
||||
OS_TEST_TIMEOUT=${OS_TEST_TIMEOUT:-60} \
|
||||
${PYTHON:-python} -m subunit.run discover -t ./ ${OS_TEST_PATH:-./zunclient/tests/unit} $LISTOPT $IDOPTION
|
||||
${PYTHON:-python} -m subunit.run discover -t ./ . $LISTOPT $IDOPTION
|
||||
test_id_option=--load-list $IDFILE
|
||||
test_list_option=--list
|
||||
|
@ -3,3 +3,6 @@
|
||||
# process, which may cause wedges in the gate later.
|
||||
|
||||
pbr>=1.6 # Apache-2.0
|
||||
oslo.i18n>=2.1.0 # Apache-2.0
|
||||
oslo.utils>=3.16.0 # Apache-2.0
|
||||
PrettyTable>=0.7.1,<0.8 # BSD
|
||||
|
@ -88,7 +88,7 @@ class ShellTest(utils.TestCase):
|
||||
def test_help(self):
|
||||
required = [
|
||||
'.*?^usage: ',
|
||||
'.*?^\s+container-stop\s+Stop specified container.',
|
||||
'.*?^\s+stop\s+Stop specified container.',
|
||||
'.*?^See "zun help COMMAND" for help on a specific command',
|
||||
]
|
||||
stdout, stderr = self.shell('help')
|
||||
@ -98,11 +98,11 @@ class ShellTest(utils.TestCase):
|
||||
|
||||
def test_help_on_subcommand(self):
|
||||
required = [
|
||||
'.*?^usage: zun container-create',
|
||||
'.*?^usage: zun create',
|
||||
'.*?^Create a container.',
|
||||
'.*?^Optional arguments:',
|
||||
]
|
||||
stdout, stderr = self.shell('help container-create')
|
||||
stdout, stderr = self.shell('help create')
|
||||
for r in required:
|
||||
self.assertThat((stdout + stderr),
|
||||
matchers.MatchesRegex(r, re.DOTALL | re.MULTILINE))
|
||||
@ -110,7 +110,7 @@ class ShellTest(utils.TestCase):
|
||||
def test_help_no_options(self):
|
||||
required = [
|
||||
'.*?^usage: ',
|
||||
'.*?^\s+container-stop\s+Stop specified container.',
|
||||
'.*?^\s+stop\s+Stop specified container.',
|
||||
'.*?^See "zun help COMMAND" for help on a specific command',
|
||||
]
|
||||
stdout, stderr = self.shell('')
|
||||
@ -124,8 +124,8 @@ class ShellTest(utils.TestCase):
|
||||
required = [
|
||||
'.*--json',
|
||||
'.*help',
|
||||
'.*container-show',
|
||||
'.*--container']
|
||||
'.*show',
|
||||
'.*--name']
|
||||
for r in required:
|
||||
self.assertThat((stdout + stderr),
|
||||
matchers.MatchesRegex(r, re.DOTALL | re.MULTILINE))
|
||||
@ -195,7 +195,14 @@ class ShellTest(utils.TestCase):
|
||||
_, client_kwargs = mock_client.call_args_list[0]
|
||||
self.assertEqual('container', client_kwargs['service_type'])
|
||||
|
||||
@mock.patch('zunclient.v1.services_shell.do_services_list')
|
||||
@mock.patch('zunclient.v1.client.Client')
|
||||
def test_container_format_env(self, mock_client):
|
||||
self.make_env()
|
||||
self.shell('create --environment key=value --image test')
|
||||
_, create_args = mock_client.return_value.containers.create.call_args
|
||||
self.assertEqual({'key': 'value'}, create_args['environment'])
|
||||
|
||||
@mock.patch('zunclient.v1.services_shell.do_service_list')
|
||||
@mock.patch('zunclient.v1.client.ksa_session')
|
||||
def test_insecure(self, mock_session, mock_services_list):
|
||||
self.make_env()
|
||||
|
@ -86,7 +86,7 @@ class ServiceManagerTest(testtools.TestCase):
|
||||
def setUp(self):
|
||||
super(ServiceManagerTest, self).setUp()
|
||||
self.api = utils.FakeAPI(fake_responses)
|
||||
self.mgr = services.MServiceManager(self.api)
|
||||
self.mgr = services.ServiceManager(self.api)
|
||||
|
||||
def test_service_list(self):
|
||||
services = self.mgr.list()
|
||||
|
@ -37,7 +37,8 @@ def _show_container(container):
|
||||
help='The container memory size (format: <number><optional unit>, '
|
||||
'where unit = b, k, m or g)')
|
||||
@utils.arg('-e', '--environment',
|
||||
metavar='<environment>',
|
||||
metavar='<KEY=VALUE>',
|
||||
action='append', default=[],
|
||||
help='The environment variabled')
|
||||
def do_create(cs, args):
|
||||
"""Create a container."""
|
||||
@ -46,7 +47,7 @@ def do_create(cs, args):
|
||||
opts['image'] = args.image
|
||||
opts['command'] = args.command
|
||||
opts['memory'] = args.memory
|
||||
opts['environment'] = args.environment
|
||||
opts['environment'] = zun_utils.format_labels(args.environment)
|
||||
_show_container(cs.containers.create(**opts))
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user