fix(common): fix 'ACLManager' object has no attribute 'create_app' ()

This commit is contained in:
Evan Sung 2023-10-20 22:38:19 -05:00 committed by GitHub
parent 6503d32e6e
commit 6ff77a140c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 7 deletions
cmdb-api/api
commands
lib/common_setting

View File

@ -216,10 +216,9 @@ class InitDepartment(object):
)
try:
app = acl.validate_app()
if app:
return acl
acl.create_app(payload)
if not app:
acl.create_app(payload)
return acl
except Exception as e:
current_app.logger.error(e)
if '不存在' in str(e):

View File

@ -1,13 +1,13 @@
# -*- coding:utf-8 -*-
from flask import abort
from flask import current_app
from api.lib.common_setting.resp_format import ErrFormat
from api.lib.perm.acl.app import AppCRUD
from api.lib.perm.acl.cache import RoleCache, AppCache
from api.lib.perm.acl.permission import PermissionCRUD
from api.lib.perm.acl.resource import ResourceTypeCRUD, ResourceCRUD
from api.lib.perm.acl.role import RoleCRUD, RoleRelationCRUD
from api.lib.perm.acl.user import UserCRUD
from api.lib.perm.acl.resource import ResourceTypeCRUD, ResourceCRUD
from api.lib.perm.acl.permission import PermissionCRUD
class ACLManager(object):
@ -133,3 +133,9 @@ class ACLManager(object):
def grant_resource(self, rid, resource_id, perms):
PermissionCRUD.grant(rid, perms, resource_id=resource_id, group_id=None)
@staticmethod
def create_app(payload):
rt = AppCRUD.add(**payload)
return rt.to_dict()