from console.services.app_actions import app_manage_service from console.services.app_check_service import AppCheckService from console.services.app_config.app_relation_service import AppServiceRelationService from console.services.group_service import group_service from console.utils.timeutil import current_time_str from www.apiclient.regionapi import RegionInvokeApi from www.models.main import TenantServiceInfo from www.tenantservice.baseservice import BaseTenantService from www.utils.crypt import make_uuid from console.enum.component_enum import ComponentType region_api = RegionInvokeApi() logger = logging.getLogger("default") baseService = BaseTenantService() app_check_service = AppCheckService() app_relation_service = AppServiceRelationService() class ComposeService(object): def yaml_to_json(self, compose_tontent): try: buf = StringIO(compose_tontent) res = yaml.safe_load(buf) return 200, "success", res except yaml.YAMLError as exc: return 400, "yaml内容格式不正确{0}".format(exc.message), {} def create_group_compose(self, tenant, region, group_id, compose_content, hub_user="", hub_pass=""): gc = compose_repo.get_group_compose_by_group_id(group_id) if gc: return 409, "该组已与其他compose组关联", None
from console.repositories.plugin import service_plugin_config_repo from console.services.app import app_service from console.services.app_config.app_relation_service import AppServiceRelationService from console.services.rbd_center_app_service import rbd_center_app_service from goodrain_web.tools import JuncheePaginator from www.apiclient.regionapi import RegionInvokeApi from www.models.plugin import PluginConfigGroup from www.models.plugin import PluginConfigItems from www.models.plugin import ServicePluginConfigVar from www.utils.crypt import make_uuid region_api = RegionInvokeApi() logger = logging.getLogger("default") plugin_config_service = PluginConfigService() plugin_version_service = PluginBuildVersionService() dependency_service = AppServiceRelationService() class AppPluginService(object): def get_service_abled_plugin(self, service): plugins = app_plugin_relation_repo.get_service_plugin_relation_by_service_id( service.service_id).filter(plugin_status=True) plugin_ids = [p.plugin_id for p in plugins] base_plugins = plugin_repo.get_plugin_by_plugin_ids(plugin_ids) return base_plugins def get_plugin_used_services(self, plugin_id, tenant_id, page, page_size): aprr = app_plugin_relation_repo.get_used_plugin_services(plugin_id) service_ids = [r.service_id for r in aprr] service_plugin_version_map = { r.service_id: r.build_version