chore: refactor infrastructure/views.py; move VM creation to utility fn

pull/10/head
Aravinth Manivannan 2022-06-27 20:59:24 +05:30
parent 2dc1740aac
commit 026a1a4c12
Signed by: realaravinth
GPG Key ID: AD9F0F08E855ED88
2 changed files with 14 additions and 9 deletions

View File

@ -24,6 +24,18 @@ from git.exc import InvalidGitRepositoryError
from dash.models import Instance
from .models import InstanceCreated
def create_vm_if_not_exists(instance: Instance):
infra = Infra()
if not InstanceCreated.objects.filter(instance=instance).exists():
instance = InstanceCreated.objects.create(instance=instance, created=True)
instance.save()
gitea_password = infra.add_vm(instance=instance)
instance.gitea_password = gitea_password
instance.save()
class Infra:
"""

View File

@ -25,8 +25,7 @@ from accounts.decorators import confirm_access
from dash.models import Instance
from billing.utils import payment_fullfilled
from .utils import Infra
from .models import InstanceCreated
from .utils import create_vm_if_not_exists
def default_ctx(title: str, username: str):
@ -49,13 +48,7 @@ def create_instance(request, instance_name: str):
if not payment_fullfilled(instance=instance):
return redirect(reverse("billing.invoice.generate", args=(instance_name,)))
infra = Infra()
if not InstanceCreated.objects.filter(instance=instance).exists():
instance = InstanceCreated.objects.create(instance=instance, created=True)
instance.save()
gitea_password = infra.add_vm(instance=instance)
instance.gitea_password = gitea_password
instance.save()
create_vm_if_not_exists()
return HttpResponse()