Loading bin/is +11 −14 Original line number Diff line number Diff line Loading @@ -237,23 +237,20 @@ def c_copy(parser, args): ''' Copy an image from a repository to another one ''' args.repo_filter = args.repo_src # load repositories repoman = load_repositories(args) repo_src = select_one_repository(repoman) args.repo_filter = args.repo_dst repoman = load_repositories(args) repo_dst = select_one_repository(repoman) if args.image_version is None: args.image_version = repo_src.last(args.image) if args.image_version == -1: raise Exception("Unable to find last version of %s" % args.image) arrow("Copying %s v%s from %s to %s" % (args.image, args.image_version, repo_src.config.name, repo_dst.config.name)) srcrepo = repoman[args.repo_src] dstrepo = repoman[args.repo_dst] # load source image srcimg = srcrepo.get(args.image, args.image_version) # Advertise arrow("Copying %s v%s from %s to %s" % (srcimg.name, srcimg.version, srcrepo.config.name, dstrepo.config.name)) arrowlevel(1) pkg = repo_src.get(args.image, args.image_version) repo_dst.add(pkg) dstrepo.add(srcimg) arrowlevel(-1) arrow("Done") def c_help(parser, args): ''' Loading installsystems/repository.py +13 −2 Original line number Diff line number Diff line Loading @@ -240,10 +240,13 @@ class Repository(object): ''' return self.db.ask("SELECT name,version FROM image WHERE name = ? AND version = ? LIMIT 1", (name,version)).fetchone() is not None def get(self, name, version): def get(self, name, version=None): ''' Return an image from a name and version ''' # is no version take the last if version is None: version = self.last(name) # get file md5 from db r = self.db.ask("select md5 from image where name = ? and version = ? limit 1", (name,version)).fetchone() Loading Loading @@ -483,7 +486,15 @@ class RepositoryManager(object): ''' Return a repostiory by its position in list ''' if type(key) == int: return self.repos[key] elif type(key) == str: for repo in self.repos: if repo.config.name == key: return repo raise Exception("No repository named: %s" % key) else: raise TypeError def register(self, config): ''' Loading Loading
bin/is +11 −14 Original line number Diff line number Diff line Loading @@ -237,23 +237,20 @@ def c_copy(parser, args): ''' Copy an image from a repository to another one ''' args.repo_filter = args.repo_src # load repositories repoman = load_repositories(args) repo_src = select_one_repository(repoman) args.repo_filter = args.repo_dst repoman = load_repositories(args) repo_dst = select_one_repository(repoman) if args.image_version is None: args.image_version = repo_src.last(args.image) if args.image_version == -1: raise Exception("Unable to find last version of %s" % args.image) arrow("Copying %s v%s from %s to %s" % (args.image, args.image_version, repo_src.config.name, repo_dst.config.name)) srcrepo = repoman[args.repo_src] dstrepo = repoman[args.repo_dst] # load source image srcimg = srcrepo.get(args.image, args.image_version) # Advertise arrow("Copying %s v%s from %s to %s" % (srcimg.name, srcimg.version, srcrepo.config.name, dstrepo.config.name)) arrowlevel(1) pkg = repo_src.get(args.image, args.image_version) repo_dst.add(pkg) dstrepo.add(srcimg) arrowlevel(-1) arrow("Done") def c_help(parser, args): ''' Loading
installsystems/repository.py +13 −2 Original line number Diff line number Diff line Loading @@ -240,10 +240,13 @@ class Repository(object): ''' return self.db.ask("SELECT name,version FROM image WHERE name = ? AND version = ? LIMIT 1", (name,version)).fetchone() is not None def get(self, name, version): def get(self, name, version=None): ''' Return an image from a name and version ''' # is no version take the last if version is None: version = self.last(name) # get file md5 from db r = self.db.ask("select md5 from image where name = ? and version = ? limit 1", (name,version)).fetchone() Loading Loading @@ -483,7 +486,15 @@ class RepositoryManager(object): ''' Return a repostiory by its position in list ''' if type(key) == int: return self.repos[key] elif type(key) == str: for repo in self.repos: if repo.config.name == key: return repo raise Exception("No repository named: %s" % key) else: raise TypeError def register(self, config): ''' Loading