Пример #1
0
def vm_reader():
    data = {}
    payload = request.args
    logging.debug(payload)

    field = {'hostIp', 'hostUser', 'hostPass', 'vmName'}
    if field - set(payload.keys()):
        error_msg = "Input json missing some field! " + "It must include " + str(
            field)
        logging.error(error_msg)
        return jsonify({"error": error_msg}), 400
    else:
        try:
            vm = VM(payload['hostIp'], payload['hostUser'],
                    payload['hostPass'], payload['vmName'])
            logging.info("VM info fetching")
            data['name'], data['status'], data['address'], data[
                'vncPort'] = vm.get_info()
            logging.info("VM info fetched")
        except Exception as e:
            logging.error(str(e))
            return jsonify({"error": str(e)}), 500

    return jsonify(data), 200