BuildScript/scripts/TouchinBuild/commands/BaseBackupCommand/BaseBackupCommand.py

29 lines
863 B
Python

# -*- coding: utf-8 -*-
import os
class BaseBackupCommand:
def __init__(self, folderPath):
assert folderPath is not None
self.folderPath = folderPath
# вычислять абсолютные пути надо на этапе создания комманды
# поскольку на этапе выполнения текущая директория может быть удалена
self.srcAbsPath = self.getAbsSrc()
self.backupAbsPath = self.getAbsDst()
def getAbsSrc(self):
return self.getAbs(self.folderPath)
def getAbsDst(self):
absFolderPath = self.getAbs(self.folderPath)
srcDirName = os.path.basename(absFolderPath)
absParentDir = os.path.dirname(absFolderPath)
dstAbs = self.getAbs(os.path.join(absParentDir, 'backup.{0}'.format(srcDirName)))
return dstAbs
def getAbs(self, path):
return os.path.abspath(path)