diff --git a/proxstar/__init__.py b/proxstar/__init__.py index b903c2d..83d2f6a 100644 --- a/proxstar/__init__.py +++ b/proxstar/__init__.py @@ -288,7 +288,7 @@ def vm_console(vmid): # import pdb; pdb.set_trace() vm = VM(vmid) vnc_ticket, vnc_port = open_vnc_session(vmid, vm.node, app.config['PROXMOX_USER'], app.config['PROXMOX_PASS']) - node = f'proxmox01-nrh.csh.rit.edu' + node = f'{vm.node}.csh.rit.edu' token = add_vnc_target(node, vnc_port) # return {'host' : node, 'port' : vnc_port, 'token' : token, 'password' : vnc_ticket}, 200 return {'host' : app.config['VNC_HOST'], 'port' : 8081, 'token' : token, 'password' : vnc_ticket}, 200 diff --git a/proxstar/vnc.py b/proxstar/vnc.py index 5b48654..a1dc793 100644 --- a/proxstar/vnc.py +++ b/proxstar/vnc.py @@ -68,8 +68,8 @@ def open_vnc_session(vmid, node, proxmox_user, proxmox_pass): Returns: Ticket to use as the noVNC password, and a port. """ # Get Proxmox API ticket and CSRF_Prevention_Token - # TODO: Use Proxmoxer to get this information? - # TODO: Report errors!? + # TODO (willnilges): Use Proxmoxer to get this information + # TODO (willnilges): Report errors data = {"username": proxmox_user, "password": proxmox_pass} response_data = requests.post( f"https://{node}.csh.rit.edu:8006/" + "api2/json/access/ticket", @@ -82,11 +82,9 @@ def open_vnc_session(vmid, node, proxmox_user, proxmox_pass): ) csrf_prevention_token = response_data['CSRFPreventionToken'] ticket = response_data['ticket'] - proxy_params = {"node": node, "vmid": str(vmid), "websocket": '1', "generate-password": '0'} - vncproxy_response_data = requests.post( - "https://proxmox01-nrh.csh.rit.edu:8006" + f"/api2/json/nodes/{node}/qemu/{vmid}/vncproxy", + f"https://{node}.csh.rit.edu:8006/api2/json/nodes/{node}/qemu/{vmid}/vncproxy", verify=False, timeout=5, params=proxy_params,