diff --git a/lib/tfw/components/snapshot_provider.py b/lib/tfw/components/snapshot_provider.py index 0ce8133..53cb63e 100644 --- a/lib/tfw/components/snapshot_provider.py +++ b/lib/tfw/components/snapshot_provider.py @@ -3,6 +3,7 @@ from subprocess import run from getpass import getuser +from os.path import isdir class SnapshotProvider: @@ -17,12 +18,18 @@ class SnapshotProvider: 'GIT_COMMITTER_EMAIL': '' } + self._check_environment() + self._head_detached = False self._branch = 'master' self._branches = [self._branch] self._init_repo_if_needed() + def _check_environment(self): + if not isdir(self.gitenv['GIT_DIR']) or not isdir(self.gitenv['GIT_WORK_TREE']): + raise EnvironmentError('Directories "directory" and "git_dir" must exist!') + def _init_repo_if_needed(self): if not self._repo_is_initialized(): self._run(('git', 'init'))