mirror of https://github.com/openspug/spug
parent
9d9541c1b9
commit
8d3e274bc4
|
@ -4,6 +4,7 @@
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from apps.app.models import Deploy
|
from apps.app.models import Deploy
|
||||||
from libs.gitlib import Git
|
from libs.gitlib import Git
|
||||||
|
import shutil
|
||||||
import os
|
import os
|
||||||
|
|
||||||
|
|
||||||
|
@ -22,3 +23,7 @@ def fetch_versions(deploy: Deploy):
|
||||||
git_repo = deploy.extend_obj.git_repo
|
git_repo = deploy.extend_obj.git_repo
|
||||||
repo_dir = os.path.join(settings.REPOS_DIR, str(deploy.id))
|
repo_dir = os.path.join(settings.REPOS_DIR, str(deploy.id))
|
||||||
return Git(git_repo, repo_dir).fetch_branches_tags()
|
return Git(git_repo, repo_dir).fetch_branches_tags()
|
||||||
|
|
||||||
|
|
||||||
|
def remove_repo(deploy_id):
|
||||||
|
shutil.rmtree(os.path.join(settings.REPOS_DIR, str(deploy_id)), True)
|
||||||
|
|
|
@ -6,7 +6,7 @@ from django.db.models import F
|
||||||
from libs import JsonParser, Argument, json_response
|
from libs import JsonParser, Argument, json_response
|
||||||
from apps.app.models import App, Deploy, DeployExtend1, DeployExtend2
|
from apps.app.models import App, Deploy, DeployExtend1, DeployExtend2
|
||||||
from apps.config.models import Config
|
from apps.config.models import Config
|
||||||
from apps.app.utils import parse_envs, fetch_versions
|
from apps.app.utils import parse_envs, fetch_versions, remove_repo
|
||||||
import json
|
import json
|
||||||
|
|
||||||
|
|
||||||
|
@ -109,6 +109,9 @@ class DeployView(View):
|
||||||
extend_form.filter_rule = json.dumps(extend_form.filter_rule)
|
extend_form.filter_rule = json.dumps(extend_form.filter_rule)
|
||||||
extend_form.custom_envs = json.dumps(parse_envs(extend_form.custom_envs))
|
extend_form.custom_envs = json.dumps(parse_envs(extend_form.custom_envs))
|
||||||
if form.id:
|
if form.id:
|
||||||
|
extend = DeployExtend1.objects.filter(deploy_id=form.id).first()
|
||||||
|
if extend.git_repo != extend_form.git_repo:
|
||||||
|
remove_repo(form.id)
|
||||||
Deploy.objects.filter(pk=form.id).update(**form)
|
Deploy.objects.filter(pk=form.id).update(**form)
|
||||||
DeployExtend1.objects.filter(deploy_id=form.id).update(**extend_form)
|
DeployExtend1.objects.filter(deploy_id=form.id).update(**extend_form)
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in New Issue