Пример #1
0
def sync_mysql_database():
    if status.get_enabled():
        print()
        print("MySQL Sync: MySQL Sync Triggered!")

        from .VM import XenVm
        from .Host import XenHost
        from XenXenXenSe.VM import VM
        from XenXenXenSe.Host import Host
        from XenXenXenSe.session import create_session

        for cluster_id in xen_credentials:
            session = create_session(cluster_id)

            # ==================================

            print("MySQL Sync: MySQL Host Sync Triggered!")
            hosts = Host.list_host(session)
            for host in hosts:
                host.update(cluster_id, host)

            XenHost.remove_orphaned(cluster_id)

            # ===================================

            print("MySQL Sync: MySQL VM Sync Triggered!")
            vms = VM.list_vm(session)
            for _vm in vms:
                XenVm.update(cluster_id, _vm)

            XenVm.remove_orphaned(cluster_id)

        print("MySQL Sync: MySQL Sync Completed!")
        print()
Пример #2
0
async def vm_list(cluster_id: str):
    """ Gets VMs available on Xen Server """

    session = create_session(cluster_id)
    vms = VM.list_vm(session)

    sat = []
    for vm in vms:
        sat.append(vm.serialize())

    ret = {"success": True, "data": sat}
    session.xenapi.session.logout()
    return ret