Updates for upstream IP handling

This commit is contained in:
3wc 2021-07-11 12:35:35 +02:00
parent b27d5b3c5b
commit 42edcd1c33
6 changed files with 11 additions and 13 deletions

View File

@ -239,17 +239,12 @@ def _create(vm_sizes, operating_systems, public_keys_for_account, affordable_vm_
""") """)
if len(errors) == 0: if len(errors) == 0:
id = makeCapsulId() id = make_capsul_id()
get_model().create_vm(
email=session["account"],
id=id,
size=size,
os=os,
ssh_authorized_keys=list(map(lambda x: x["name"], posted_keys))
)
current_app.config["HUB_MODEL"].create( current_app.config["HUB_MODEL"].create(
email = session["account"], email = session["account"],
id=id, id=id,
os=os,
size=size,
template_image_file_name=operating_systems[os]['template_image_file_name'], template_image_file_name=operating_systems[os]['template_image_file_name'],
vcpus=vm_sizes[size]['vcpus'], vcpus=vm_sizes[size]['vcpus'],
memory_mb=vm_sizes[size]['memory_mb'], memory_mb=vm_sizes[size]['memory_mb'],
@ -267,6 +262,7 @@ def create():
public_keys_for_account = get_model().list_ssh_public_keys_for_account(session["account"]) public_keys_for_account = get_model().list_ssh_public_keys_for_account(session["account"])
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["HUB_MODEL"].capacity_avaliable(512*1024*1024) capacity_avaliable = current_app.config["HUB_MODEL"].capacity_avaliable(512*1024*1024)
errors = list()
affordable_vm_sizes = dict() affordable_vm_sizes = dict()
for key, vm_size in vm_sizes.items(): for key, vm_size in vm_sizes.items():

View File

@ -43,7 +43,7 @@ def init_app(app, is_running_server):
hasSchemaVersionTable = False hasSchemaVersionTable = False
actionWasTaken = False actionWasTaken = False
schemaVersion = 0 schemaVersion = 0
desiredSchemaVersion = 18 desiredSchemaVersion = 19
cursor = connection.cursor() cursor = connection.cursor()

View File

@ -10,7 +10,7 @@ from nanoid import generate
from capsulflask.auth import account_required from capsulflask.auth import account_required
from capsulflask.db import get_model from capsulflask.db import get_model
bp = Blueprint("webapi", __name__, url_prefix="/api") bp = Blueprint("publicapi", __name__, url_prefix="/api")
@bp.route("/capsul/create", methods=["POST"]) @bp.route("/capsul/create", methods=["POST"])
@account_required @account_required
@ -25,6 +25,8 @@ def capsul_create():
account_balance = get_account_balance(get_vms(), get_payments(), datetime.datetime.utcnow()) account_balance = get_account_balance(get_vms(), get_payments(), datetime.datetime.utcnow())
capacity_avaliable = current_app.config["HUB_MODEL"].capacity_avaliable(512*1024*1024) capacity_avaliable = current_app.config["HUB_MODEL"].capacity_avaliable(512*1024*1024)
request.json['ssh_authorized_key_count'] = 1
id, errors = _create( id, errors = _create(
vm_sizes, vm_sizes,
operating_systems, operating_systems,

View File

@ -1,2 +0,0 @@
DROP TABLE api_keys;
UPDATE schemaversion SET version = 15;

View File

@ -0,0 +1,2 @@
DROP TABLE api_keys;
UPDATE schemaversion SET version = 18;

View File

@ -6,4 +6,4 @@ CREATE TABLE api_tokens (
token TEXT NOT NULL token TEXT NOT NULL
); );
UPDATE schemaversion SET version = 16; UPDATE schemaversion SET version = 19;