示例#1
0
def copyToDir(FileName_, DestDir_, Rewrite_=True):
    """
    Копировать файл в папку.
    @param FileName_: Имя файла.
    @param DestDir_: Папка в которую необходимо скопировать.
    @param Rewrite_: True-если новый файл уже существует,
        то переписать его молча. False-если новый файл уже существует,
        то выдать сообщение о подтверждении перезаписи файла.
    @return: Возвращает результат выполнения операции True/False.
    """
    return icCopyFile(FileName_, DestDir_ + '/' + BaseName(FileName_),
                      Rewrite_)
示例#2
0
def CopyDir(Dir_, ToDir_, ReWrite_=False):
    """
    Функция папку Dir_ в папку ToDir_
        со всеми внутренними поддиректориями и файлами.
    @param Dir_: Папка/директория,  которая копируется.
    @param ToDir_: Папка/директория, в которую копируется Dir_.
    @param ReWrite_: Указание перезаписи директории, если она
        уже существует.
    @return: Функция возвращает результат выполнения операции True/False.
    """
    try:
        to_dir = ToDir_ + '/' + BaseName(Dir_)
        if Exists(to_dir) and ReWrite_:
            shutil.rmtree(to_dir, 1)
        shutil.copytree(Dir_, to_dir)
        return True
    except:
        log.fatal(u'Ошибка копирования папки <%s> в папку <%s>' %
                  (Dir_, ToDir_))
        return False
示例#3
0
def CloneDir(Dir_, NewDir_, ReWrite_=False):
    """
    Функция переносит все содержимое папки Dir_ в папку с новым именем NewDir_.
    @param Dir_: Папка/директория,  которая копируется.
    @param NewDir_: Новое имя папки/директории.
    @param ReWrite_: Указание перезаписи директории, если она
        уже существует.
    @return: Функция возвращает результат выполнения операции True/False.    
    """
    try:
        if os.path.exists(NewDir_) and ReWrite_:
            shutil.rmtree(NewDir_, 1)
        os.makedirs(NewDir_)
        for sub_dir in GetSubDirs(Dir_):
            shutil.copytree(sub_dir, NewDir_)
        for file_name in GetFiles(Dir_):
            icCopyFile(file_name, NewDir_ + '/' + BaseName(file_name))
        return True
    except:
        log.fatal(u'Clone folder error. Clone %s to %s' % (Dir_, NewDir_))
        return False
示例#4
0
def CopyDir(Dir_, ToDir_, ReWrite_=False, AddDir_=True):
    """
    Функция папку Dir_ в папку ToDir_ со всеми внутренними поддиректориями
    и файлами.
    @param Dir_: Папка/директория,  которая копируется.
    @param ToDir_: Папка/директория, в которую копируется Dir_.
    @param ReWrite_: Указание перезаписи директории,
        если она уже существует.
    @param AddDir_: Указание производить дополнение папки,
        в случае ко когда копируемые файлы/папки существуют.
    @return: Функция возвращает результат выполнения операции True/False.    
    """
    try:
        to_dir = ToDir_ + '/' + BaseName(Dir_)
        if os.path.exists(to_dir) and ReWrite_:
            shutil.rmtree(to_dir, 1)
        if AddDir_:
            return addCopyDir(Dir_, to_dir)
        else:
            shutil.copytree(Dir_, to_dir)
        return True
    except:
        log.fatal(u'Copy folder error, from %s to %s' % (Dir_, ToDir_))
        return False
示例#5
0
class ScriptConfig:
    Name, Extension = SplitExt(BaseName(__file__))
    ConfigFile = "/etc/" + Name + ".conf"
    Version = "0.10.0"
    Config = None
    Host = None

    def __init__(self):
        self.Config = ConfigParser()
        self.Config.sections()
        self.Config.read(self.ConfigFile)
        if self.HasOption('DEFAULT', 'scwMetaData'):
            self.Host = JLoads(
                check_output([self.Config['DEFAULT']['scwMetaData']]))
        else:
            self.Host = JLoads(
                check_output(["/usr/local/bin/scw-metadata-json"]))

    def GetToken(self):
        try:
            return self.Config['DEFAULT']['apitoken']
        except:
            return None

    def GetIP(self):
        try:
            return self.Host['public_ip']['address'], self.Host['ipv6'][
                'address']
        except:
            return None, None

    def HasOption(self, section, item):
        try:
            return self.Config.has_option(section, item)
        except:
            return None

    def GetItems(self):
        try:
            return self.Config.items()
        except:
            return None

    def GetValue(self, section, item):
        try:
            return self.Config[section].get(item)
        except:
            return None

    def GetInt(self, section, item):
        try:
            return self.Config[section].getint(item)
        except:
            return 0

    def GetFloat(self, section, item):
        try:
            return self.Config[section].getfloat(item)
        except:
            return 0

    def GetBoolean(self, section, item):
        try:
            return self.Config[section].getboolean(item)
        except:
            return False

    def GetBooleanNone(self, section, item):
        try:
            return self.Config[section].getboolean(item)
        except:
            return None