def load_tab_data(self): if self._data is None: environment_id = self.kwargs['environment_id'] env = api.environment_get(self.request, environment_id) self._data = {} self._data['env'] = env self._data['services'] = api.services_list(self.request, environment_id, env)
def load_tab_data(self): if self._data is None: environment_id = tables.get_scheduler_id() env = api.environment_get(self.request, environment_id) self._data = {} self._data['env'] = env self._data['services'] = api.services_list(self.request, environment_id, env)
def test_services_list_except_http_not_found(self, mock_api, mock_pkg_api, mock_session, mock_log): mock_env = mock.Mock(version=0) mock_env.services = [ {'?': {'id': 'foo_service_id', 'name': 'foo', 'type': 'foo_type'}} ] mock_foo_pkg = mock.Mock() mock_foo_pkg.configure_mock(name='foo_pkg') mock_session.get.return_value = 'foo_sess_id' mock_client = mock_api.muranoclient(mock.Mock()) mock_client.environments.get.return_value = mock_env mock_client.environments.last_status.side_effect = exc.HTTPNotFound mock_pkg_api.app_by_fqn.side_effect = [mock_foo_pkg] expected_pkg_calls = [ mock.call(self.mock_request, 'foo_type', version=None) ] result = env_api.services_list(self.mock_request, 'foo_env_id') self.assertIsInstance(result, list) for obj in result: self.assertIsInstance(obj, utils.Bunch) mock_session.get.assert_called_once_with( self.mock_request, 'foo_env_id') mock_client.environments.get.assert_called_once_with( 'foo_env_id', 'foo_sess_id') mock_client.environments.last_status.assert_called_once_with( 'foo_env_id', 'foo_sess_id') mock_log.exception.assert_called_once_with( 'Could not retrieve latest status for the foo_env_id environment') mock_pkg_api.app_by_fqn.assert_has_calls(expected_pkg_calls)
def test_services_list(self, mock_api, mock_pkg_api, mock_session): mock_env = mock.Mock(version=0) mock_env.services = [ { '?': { 'id': 'foo_service_id', 'name': 'foo', 'type': 'foo_type' } }, { '?': { 'id': 'bar_service_id', 'name': 'bar', 'type': '/3@bar_type' }, 'updated': 'bar_time' }, ] mock_foo_pkg = mock.Mock() mock_foo_pkg.configure_mock(name='foo_pkg') mock_bar_pkg = mock.Mock() mock_bar_pkg.configure_mock(name='bar_pkg') mock_session.get.return_value = 'foo_sess_id' mock_client = mock_api.muranoclient(mock.Mock()) mock_client.environments.get.return_value = mock_env mock_client.environments.last_status.return_value = { 'foo_service': mock.Mock(text='foo' * 100, updated='foo_time'), 'bar_service': None } mock_pkg_api.app_by_fqn.side_effect = [mock_foo_pkg, mock_bar_pkg] expected_pkg_calls = [ mock.call(self.mock_request, 'foo_type', version=None), mock.call(self.mock_request, 'bar_type', version='3') ] result = env_api.services_list(self.mock_request, 'foo_env_id') self.assertIsInstance(result, list) for obj in result: self.assertIsInstance(obj, utils.Bunch) mock_session.get.assert_called_once_with(self.mock_request, 'foo_env_id') mock_client.environments.get.assert_called_once_with( 'foo_env_id', 'foo_sess_id') mock_client.environments.last_status.assert_called_once_with( 'foo_env_id', 'foo_sess_id') mock_pkg_api.app_by_fqn.assert_has_calls(expected_pkg_calls)
def get_services_data(self): services = [] self.environment_id = self.tab_group.kwargs['environment_id'] ns_url = "horizon:murano:environments:index" try: services = api.services_list(self.request, self.environment_id) except exc.HTTPForbidden: msg = _('Unable to retrieve list of services. This environment ' 'is deploying or already deployed by other user.') exceptions.handle(self.request, msg, redirect=reverse(ns_url)) except (exc.HTTPInternalServerError, exc.HTTPNotFound): msg = _("Environment with id %s doesn't exist anymore" % self.environment_id) exceptions.handle(self.request, msg, redirect=reverse(ns_url)) except exc.HTTPUnauthorized: exceptions.handle(self.request) return services
def get_services_data(self): services = [] self.environment_id = self.tab_group.kwargs['environment_id'] ns_url = "horizon:app-catalog:environments:index" try: services = api.services_list(self.request, self.environment_id) except exc.HTTPForbidden: msg = _('Unable to retrieve list of services. This environment ' 'is deploying or already deployed by other user.') exceptions.handle(self.request, msg, redirect=reverse(ns_url)) except (exc.HTTPInternalServerError, exc.HTTPNotFound): msg = _("Environment with id %s doesn't exist anymore") exceptions.handle(self.request, msg % self.environment_id, redirect=reverse(ns_url)) except exc.HTTPUnauthorized: exceptions.handle(self.request) return services
def test_services_list(self, mock_api, mock_pkg_api, mock_session): mock_env = mock.Mock(version=0) mock_env.services = [ {'?': {'id': 'foo_service_id', 'name': 'foo', 'type': 'foo_type'}}, {'?': {'id': 'bar_service_id', 'name': 'bar', 'type': '/3@bar_type'}, 'updated': 'bar_time'}, ] mock_foo_pkg = mock.Mock() mock_foo_pkg.configure_mock(name='foo_pkg') mock_bar_pkg = mock.Mock() mock_bar_pkg.configure_mock(name='bar_pkg') mock_session.get.return_value = 'foo_sess_id' mock_client = mock_api.muranoclient(mock.Mock()) mock_client.environments.get.return_value = mock_env mock_client.environments.last_status.return_value = { 'foo_service': mock.Mock(text='foo' * 100, updated='foo_time'), 'bar_service': None } mock_pkg_api.app_by_fqn.side_effect = [mock_foo_pkg, mock_bar_pkg] expected_pkg_calls = [ mock.call(self.mock_request, 'foo_type', version=None), mock.call(self.mock_request, 'bar_type', version='3') ] result = env_api.services_list(self.mock_request, 'foo_env_id') self.assertIsInstance(result, list) for obj in result: self.assertIsInstance(obj, utils.Bunch) mock_session.get.assert_called_once_with( self.mock_request, 'foo_env_id') mock_client.environments.get.assert_called_once_with( 'foo_env_id', 'foo_sess_id') mock_client.environments.last_status.assert_called_once_with( 'foo_env_id', 'foo_sess_id') mock_pkg_api.app_by_fqn.assert_has_calls(expected_pkg_calls)
def get_services_data(self): services = [] self.environment_id = self.tab_group.kwargs['environment_id'] ns_url = "horizon:murano:environments:index" try: services = api.services_list(self.request, self.environment_id) '''headers = {'content-type': 'application/json'} url = 'http://127.0.0.1:7007/display_service' responses = requests.get(url, verify=False, headers = headers) rsp = [] for response in responses.json(): rsp.append(Service(response['vnf_name'], response['vnf_services'], response['id'])) return rsp''' except exc.HTTPForbidden: msg = _('Unable to retrieve list of services. This environment ' 'is deploying or already deployed by other user.') exceptions.handle(self.request, msg, redirect=reverse(ns_url)) except (exc.HTTPInternalServerError, exc.HTTPNotFound): msg = _("Environment with id %s doesn't exist anymore") exceptions.handle(self.request, msg % self.environment_id, redirect=reverse(ns_url)) except exc.HTTPUnauthorized: exceptions.handle(self.request) '''except: #exceptions.handle(self.request, _('Unable to get providers')) entry = { "vnf_name" : "dt100", "vnf_services" : [{"image": "docker.io/glanf/firewall", "name": "fw18"}], "?":{"id": 10021} } rsp=[] rsp.append(entry) return rsp''' return services