lp1836108: Fixes bug where install and lint failed with unit test

This commit is contained in:
Narinder Gupta 2019-07-11 15:32:04 -05:00
parent e4be06f98a
commit 82edb6cf3e
4 changed files with 14 additions and 12 deletions

View File

@ -1,5 +1,5 @@
import charms_openstack.charm
import charmhelpers.core.hookenv as ch_hookenv
import charmhelpers.core.hookenv as ch_hookenv # noqa
charms_openstack.charm.use_defaults('charm.default-select-release')
@ -14,20 +14,19 @@ class CinderpurestorageCharm(
stateless = True
# Specify any config that the user *must* set.
mandatory_config = [
('san_ip', self.config.get('san-ip')),
('pure_api_token', self.config.get('pure-api-token'))
]
'san-ip', 'pure-api-token', 'protocol', 'volume-backend-name']
def cinder_configuration(self):
drivers = {
'iscsi': 'cinder.volume.drivers.pure.PureISCSIDriver',
'fc': 'cinder.volume.drivers.pure.PureFCDriver',
}
service = self.config.get('volume-backend-name') or service_name()
service = self.config.get('volume-backend-name')
volumedriver = drivers.get(self.config.get('protocol'))
driver_options = [
('san_ip', self.config.get('san-ip')),
('pure_api_token', self.config.get('pure-api-token')),
('volume_driver', drivers[self.config.get('protocol').lower()]),
('volume_driver', volumedriver),
('volume_backend_name', service)]
return driver_options

View File

@ -17,7 +17,7 @@ import charms.reactive
# This charm's library contains all of the handler code associated with
# this charm -- we need to import it to get the definitions for the charm.
import charm.openstack.cinder_purestorage
import charm.openstack.cinder_purestorage # noqa
charms_openstack.charm.use_defaults(
'charm.installed',
@ -29,5 +29,5 @@ charms_openstack.charm.use_defaults(
@charms.reactive.when('config.changed.driver-source')
def reinstall():
with charms_openstack.charm.provide_charm_instance() as charm:
charm.install()
with charms_openstack.charm.provide_charm_instance() as purestorage:
purestorage.install()

View File

@ -9,7 +9,7 @@ envlist = pep8,py3
setenv = VIRTUAL_ENV={envdir}
PYTHONHASHSEED=0
TERM=linux
LAYER_PATH={toxinidir}/layers
CHARM_LAYERS_DIR={toxinidir}/layers
JUJU_REPOSITORY={toxinidir}/build
passenv = http_proxy https_proxy INTERFACE_PATH
install_command =
@ -76,4 +76,4 @@ commands = {posargs}
[flake8]
# E402 ignore necessary for path append before sys module import in actions
ignore = E402
ignore = E402

View File

@ -46,4 +46,7 @@ class TestCinderpurestorageCharm(test_utils.PatchHelper):
charm = self._patch_config_and_charm({'a': 'b'})
config = charm.cinder_configuration()
# Add check here that configuration is as expected.
# self.assertEqual(config, {})
self.assertEqual(config, [('san_ip', None),
('pure_api_token', None),
('volume_driver', None),
('volume_backend_name', None)])