Пример #1
0
    def __init__(
            self,
            path,
            log,
            init_attr,
            repo_attr,
            origin,
            description,
            maxsize=None):

        # pylint: disable=too-many-arguments

        self.vol_path = path
        self.volume_count = 0

        self.log = log
        self.init_attr = init_attr
        self.repo_attr = repo_attr

        if init_attr is not None and repo_attr is not None:
            self.attrs = init_attr + repo_attr
        elif repo_attr is not None:
            self.attrs = [repo_attr]
        elif init_attr is not None:
            self.attrs = [init_attr]

        self.origin = origin
        self.description = description
        self.maxsize = maxsize
        self.fs = self.get_volume_fs(self.volume_count)

        # if repo exists retrive the keyid otherwise
        # generate a new key and generate repository config
        if self.fs.isdir("/"):
            repo_conf = self.fs.read_file("conf/distributions")
            for l in repo_conf.splitlines():
                if l.startswith("SignWith"):
                    self.keyid = l.split()[1]
                    unlock_key(self.keyid)
        else:
            self.keyid = generate_elbe_internal_key()
            unlock_key(self.keyid)
            self.gen_repo_conf()
Пример #2
0
    def __init__(self,
                 path,
                 log,
                 init_attr,
                 repo_attr,
                 origin,
                 description,
                 maxsize=None):

        # pylint: disable=too-many-arguments

        self.vol_path = path
        self.volume_count = 0

        self.log = log
        self.init_attr = init_attr
        self.repo_attr = repo_attr

        if init_attr is not None and repo_attr is not None:
            self.attrs = init_attr + repo_attr
        elif repo_attr is not None:
            self.attrs = [repo_attr]
        elif init_attr is not None:
            self.attrs = [init_attr]

        self.origin = origin
        self.description = description
        self.maxsize = maxsize
        self.fs = self.get_volume_fs(self.volume_count)

        # if repo exists retrive the keyid otherwise
        # generate a new key and generate repository config
        if self.fs.isdir("/"):
            repo_conf = self.fs.read_file("conf/distributions")
            for l in repo_conf.splitlines():
                if l.startswith("SignWith"):
                    self.keyid = l.split()[1]
                    unlock_key(self.keyid)
        else:
            self.keyid = generate_elbe_internal_key()
            unlock_key(self.keyid)
            self.gen_repo_conf()