add logging around ssh keys to capsul creation to support a user who is
experiencing bugs
This commit is contained in:
parent
3f6491f359
commit
274c7a2c76
@ -1,5 +1,6 @@
|
|||||||
import re
|
import re
|
||||||
import sys
|
import sys
|
||||||
|
import json
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from flask import Blueprint
|
from flask import Blueprint
|
||||||
from flask import flash
|
from flask import flash
|
||||||
@ -127,6 +128,9 @@ def create():
|
|||||||
account_balance = get_account_balance(get_vms(), get_payments(), datetime.utcnow())
|
account_balance = get_account_balance(get_vms(), get_payments(), datetime.utcnow())
|
||||||
capacity_avaliable = current_app.config["VIRTUALIZATION_MODEL"].capacity_avaliable(512*1024*1024)
|
capacity_avaliable = current_app.config["VIRTUALIZATION_MODEL"].capacity_avaliable(512*1024*1024)
|
||||||
errors = list()
|
errors = list()
|
||||||
|
|
||||||
|
email_to_log = session["account"]
|
||||||
|
current_app.logger.info(f"create for {email_to_log}: ssh keys from db:\n {json.dumps(ssh_public_keys)}")
|
||||||
|
|
||||||
if request.method == "POST":
|
if request.method == "POST":
|
||||||
if "csrf-token" not in request.form or request.form['csrf-token'] != session['csrf-token']:
|
if "csrf-token" not in request.form or request.form['csrf-token'] != session['csrf-token']:
|
||||||
@ -151,11 +155,15 @@ def create():
|
|||||||
errors.append("something went wrong with ssh keys")
|
errors.append("something went wrong with ssh keys")
|
||||||
else:
|
else:
|
||||||
for i in range(0, posted_keys_count):
|
for i in range(0, posted_keys_count):
|
||||||
|
to_log_bool = f"ssh_key_{i}" in request.form
|
||||||
|
current_app.logger.info(f"checking for ssh_key_{i}: {to_log_bool}")
|
||||||
if f"ssh_key_{i}" in request.form:
|
if f"ssh_key_{i}" in request.form:
|
||||||
posted_name = request.form[f"ssh_key_{i}"]
|
posted_name = request.form[f"ssh_key_{i}"]
|
||||||
|
current_app.logger.info(f"ssh key posted_name: {posted_name}")
|
||||||
key = None
|
key = None
|
||||||
for x in ssh_public_keys:
|
for x in ssh_public_keys:
|
||||||
if x['name'] == posted_name:
|
if x['name'] == posted_name:
|
||||||
|
current_app.logger.info(f"ssh key posted_name {posted_name} was found")
|
||||||
key = x
|
key = x
|
||||||
if key:
|
if key:
|
||||||
posted_keys.append(key)
|
posted_keys.append(key)
|
||||||
@ -172,6 +180,8 @@ def create():
|
|||||||
host(s) at capacity. no capsuls can be created at this time. sorry.
|
host(s) at capacity. no capsuls can be created at this time. sorry.
|
||||||
""")
|
""")
|
||||||
|
|
||||||
|
current_app.logger.info(f"create for {email_to_log}: posted_keys:\n {json.dumps(posted_keys)}")
|
||||||
|
|
||||||
if len(errors) == 0:
|
if len(errors) == 0:
|
||||||
id = makeCapsulId()
|
id = makeCapsulId()
|
||||||
get_model().create_vm(
|
get_model().create_vm(
|
||||||
|
@ -113,6 +113,8 @@ class DBModel:
|
|||||||
)
|
)
|
||||||
|
|
||||||
for ssh_public_key in ssh_public_keys:
|
for ssh_public_key in ssh_public_keys:
|
||||||
|
current_app.logger.info(f"INSERT INTO vm_ssh_public_key (email, vm_id, ssh_public_key_name) VALUES (\"{email}\", \"{id}\", \"{ssh_public_key}\")")
|
||||||
|
|
||||||
self.cursor.execute("""
|
self.cursor.execute("""
|
||||||
INSERT INTO vm_ssh_public_key (email, vm_id, ssh_public_key_name)
|
INSERT INTO vm_ssh_public_key (email, vm_id, ssh_public_key_name)
|
||||||
VALUES (%s, %s, %s)
|
VALUES (%s, %s, %s)
|
||||||
|
@ -126,6 +126,8 @@ class ShellScriptVirtualization(VirtualizationInterface):
|
|||||||
|
|
||||||
ssh_keys_string = "\n".join(ssh_public_keys)
|
ssh_keys_string = "\n".join(ssh_public_keys)
|
||||||
|
|
||||||
|
current_app.logger.info(f"create vm virt model ssh_keys_string: {ssh_keys_string}")
|
||||||
|
|
||||||
completedProcess = run([
|
completedProcess = run([
|
||||||
join(current_app.root_path, 'shell_scripts/create.sh'),
|
join(current_app.root_path, 'shell_scripts/create.sh'),
|
||||||
id,
|
id,
|
||||||
@ -147,6 +149,8 @@ class ShellScriptVirtualization(VirtualizationInterface):
|
|||||||
ssh_public_keys={ssh_keys_string}
|
ssh_public_keys={ssh_keys_string}
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
current_app.logger.info(f"create vm status: {status} vmSettings: {vmSettings}")
|
||||||
|
|
||||||
if not status == "success":
|
if not status == "success":
|
||||||
raise ValueError(f"""failed to create vm for {email} with:
|
raise ValueError(f"""failed to create vm for {email} with:
|
||||||
{vmSettings}
|
{vmSettings}
|
||||||
|
Loading…
Reference in New Issue
Block a user