Merge pull request 'clone instead of fetch' (#19) from dachary/dashboard:wip-pull into master
ci/woodpecker/push/woodpecker Pipeline was successful Details

Reviewed-on: https://gitea.hostea.org/Hostea/dashboard/pulls/19
wip-recurring-payments
Aravinth Manivannan 2022-07-07 04:42:46 -04:00
commit 147eead388
1 changed files with 9 additions and 11 deletions

View File

@ -116,10 +116,13 @@ class Infra:
ssh_cmd = f"/usr/bin/ssh -oStrictHostKeyChecking=no -i {conf['SSH_KEY']}"
self.env = {"GIT_SSH_COMMAND": ssh_cmd}
try:
self.repo = Repo(path=self.repo_path)
except InvalidGitRepositoryError:
self.repo = Repo.clone_from(conf["REMOTE"], self.repo_path, env=self.env)
self._clone()
def _clone(self):
conf = settings.HOSTEA["INFRA"]["HOSTEA_REPO"]
if os.path.exists(self.repo_path):
shutil.rmtree(self.repo_path)
self.repo = Repo.clone_from(conf["REMOTE"], self.repo_path, env=self.env)
def _host_vars_dir(self, subdomain: str) -> Path:
"""
@ -227,11 +230,6 @@ class Infra:
author="Dashboard Bot <bot@dashboard.hostea.org>",
)
def _pull(self):
self.repo.git.fetch(env=self.env)
# TODO: switch to using Git cmd
@staticmethod
def translate_size(instance: Instance) -> str:
"""
@ -252,7 +250,7 @@ class Infra:
The gitea user password is returned
"""
self._pull()
self._clone()
subdomain = instance.name
host_vars_dir = self._host_vars_dir(subdomain)
@ -331,7 +329,7 @@ class Infra:
"""
Remove a VM from infrastructure repository
"""
self._pull()
self._clone()
subdomain = instance.name
try: