def test_get_app_fqn(self, *args): mock_app = mock.Mock(fully_qualified_name='foo_app_fqn') mock_get_app = packages.api.muranoclient().packages.get mock_get_app.return_value = mock_app app_fqn = packages.get_app_fqn(None, 'foo_app_id') self.assertEqual(app_fqn, 'foo_app_fqn') mock_get_app.assert_called_once_with('foo_app_id')
def __inner(request, **kwargs): app_id = kwargs['app_id'] fqn = pkg_api.get_app_fqn(request, app_id) LOG.debug('Clearing forms data for application {0}.'.format(fqn)) services.get_apps_data(request)[app_id] = {} LOG.debug('Clearing any leftover wizard step data.') for key in request.session.keys(): # TODO(tsufiev): unhardcode the prefix for wizard step data if key.startswith('wizard_wizard'): request.session.pop(key) return func(request, **kwargs)
def import_app(request, app_id): app_data = get_apps_data(request).setdefault(app_id, {}) ui_desc = pkg_api.get_app_ui(request, app_id) fqn = pkg_api.get_app_fqn(request, app_id) LOG.debug('Using data {0} for app {1}'.format(app_data, fqn)) version.check_version(ui_desc.pop('Version', 1)) service = dict( (helpers.decamelize(k), v) for (k, v) in ui_desc.iteritems()) global _apps # In-memory caching of dynamic UI forms if app_id in _apps: LOG.debug('Using in-memory forms for app {0}'.format(fqn)) app = _apps[app_id] app.set_data(app_data) else: LOG.debug('Creating new forms for app {0}'.format(fqn)) app = _apps[app_id] = Service(app_data, **service) return app
def import_app(request, app_id): app_data = get_apps_data(request).setdefault(app_id, {}) ui_desc = pkg_api.get_app_ui(request, app_id) fqn = pkg_api.get_app_fqn(request, app_id) LOG.debug('Using data {0} for app {1}'.format(app_data, fqn)) app_version = ui_desc.pop('Version', version.LATEST_FORMAT_VERSION) version.check_version(app_version) service = dict( (helpers.decamelize(k), v) for (k, v) in six.iteritems(ui_desc)) parameters = service.pop('parameters', {}) parameters_source = service.pop('parameters_source', None) if parameters_source is not None: parts = parameters_source.rsplit('.', 1) if 2 >= len(parts) > 0: if len(parts) == 2: class_name, method_name = parts else: method_name = parts[0] class_name = service.get('application', {}).get('?', {}).get('type', fqn) details = pkg_api.get_package_details(request, app_id) pkg_version = getattr(details, 'version', '*') request_body = { 'className': class_name, 'methodName': method_name, 'packageName': fqn, 'classVersion': pkg_version, 'parameters': {} } result = api.muranoclient(request).static_actions.call( request_body).get_result() if result and isinstance(result, dict): parameters.update(result) return Service(app_data, app_version, fqn, parameters=parameters, **service)
def import_app(request, app_id): app_data = get_apps_data(request).setdefault(app_id, {}) ui_desc = pkg_api.get_app_ui(request, app_id) fqn = pkg_api.get_app_fqn(request, app_id) LOG.debug('Using data {0} for app {1}'.format(app_data, fqn)) app_version = ui_desc.pop('Version', version.LATEST_FORMAT_VERSION) version.check_version(app_version) service = dict( (helpers.decamelize(k), v) for (k, v) in ui_desc.iteritems()) global _apps # In-memory caching of dynamic UI forms if app_id in _apps: LOG.debug('Using in-memory forms for app {0}'.format(fqn)) app = _apps[app_id] app.set_data(app_data) else: LOG.debug('Creating new forms for app {0}'.format(fqn)) app = _apps[app_id] = Service(app_data, app_version, **service) return app
def import_app(request, app_id): app_data = get_apps_data(request).setdefault(app_id, {}) ui_desc = pkg_api.get_app_ui(request, app_id) fqn = pkg_api.get_app_fqn(request, app_id) LOG.debug('Using data {0} for app {1}'.format(app_data, fqn)) app_version = ui_desc.pop('Version', version.LATEST_FORMAT_VERSION) version.check_version(app_version) service = dict( (helpers.decamelize(k), v) for (k, v) in six.iteritems(ui_desc)) parameters = service.pop('parameters', {}) parameters_source = service.pop('parameters_source', None) if parameters_source is not None: parts = parameters_source.rsplit('.', 1) if 2 >= len(parts) > 0: if len(parts) == 2: class_name, method_name = parts else: method_name = parts[0] class_name = service.get('application', {}).get('?', {}).get( 'type', fqn) details = pkg_api.get_package_details(request, app_id) pkg_version = getattr(details, 'version', '*') request_body = { 'className': class_name, 'methodName': method_name, 'packageName': fqn, 'classVersion': pkg_version, 'parameters': {} } result = api.muranoclient(request).static_actions.call( request_body).get_result() if result and isinstance(result, dict): parameters.update(result) return Service(app_data, app_version, fqn, parameters=parameters, **service)