Пример #1
0
        def delete_all_services(user_name, project_name):
            prj_id = Db.exec_one("select id from projects "
                                 "where name='%s' and userID = (select id from user where name = '%s')",
                                 (project_name, user_name))
            if prj_id is None:
                raise Exception("Project does not exist for %s, %s" % (user_name, project_name))

            Db.exec_cmd("delete from services where projectID = '%s'", prj_id)
Пример #2
0
        def delete(user_id, password, project_name):
            # todo: 删除容器考虑在上层实现?
            srv_list = DBModel.Service.get_list(user_id, password, project_name)
            if len(srv_list) != 0:
                for service_name in srv_list:
                    ip = DBModel.Service.get_host_ip(user_id, project_name, service_name)
                    if ip == '-':
                        continue
                    else:
                        # rm this container
                        # cli = Client(base_url=url, version=config.c_version)
                        # full_name = username + config.split_mark + project_name + config.split_mark + service_name
                        # if container_exists(cli, full_name):
                        #     logs = logs + full_name + '\n' + cli.logs(container=full_name) + '\n'
                        #     cli.stop(container=full_name)
                        #     cli.remove_container(container=full_name)
                        pass

            Db.exec_cmd("delete from service where project='%s'", project_name)
            Db.exec_cmd("delete from project where name='%s'", project_name)
Пример #3
0
        def delete_user_and_projects(user_name):
            """
            删除用户及该用户的所有项目和所属服务
            """
            # todo: 删除所有项目和所属服务是否有上层负责,或以事务方式执行?
            # todo: 合并下面的多条sql cmds?
            user_id = Db.exec_one("select id from user where name='%s'", user_name)

            Db.exec_cmd("delete from services where projectID in "
                        "(select id from projects where userID='%s')", user_id)
            Db.exec_cmd("delete from projects where userID='%s'", user_id)
            Db.exec_cmd("delete from user where name='%s'", user_id)
Пример #4
0
 def create(user_name, service_name, machine_ip, project_name):
     prj_id = Db.exec_one("select id from projects "
                          "where name='%s' and userID in (select id from user where name = '%s')",
                          (project_name, user_name))
     Db.exec_cmd("insert into services(name, projectID, IP) values('%s', %s, '%s')",
                 (service_name, prj_id, machine_ip))
Пример #5
0
 def create(user_id, volume_path):
     Db.exec_cmd("insert into info(volume) values('%s') where name='%s'",
                 (user_id, volume_path))
Пример #6
0
 def create(user_id, net_id):
     Db.exec_cmd("insert into info(net) values('%s') where name='%s'",
                 (net_id, user_id))  # todo: check tuple usage
Пример #7
0
 def add_machine_list(ip_list):
     for ip in ip_list:
         Db.exec_cmd("insert into machine(ip) values('%s')", ip)
Пример #8
0
 def get(user_id):
     data = Db.exec_cmd("select net from info where name='%s'",
                        user_id)  # todo: check tuple usage
     return data[0]
Пример #9
0
 def add_user(user_name, email):
     Db.exec_cmd("insert into user(name, email) values('%s', '%s')",
                 (user_name, email))
Пример #10
0
 def delete(user_id, project_name):
     Db.exec_cmd("delete from projects where name ='%s' and userID='%s'", (project_name, user_id))
Пример #11
0
 def create(user_id, project_name, url):
     Db.exec_cmd("insert into projects(name, userID, url) values('%s', '%s', '%s')",
                 (project_name, user_id, url))