def fetch(packages=[], path=os.path.curdir): """ Fetches the given packages from the repository without installing, just downloads the packages. @param packages: list of package names -> list_of_strings @param path: path to where the packages will be downloaded. If not given, packages will be downloaded to the current working directory. """ packagedb = pisi.db.packagedb.PackageDB() repodb = pisi.db.repodb.RepoDB() for name in packages: package, repo = packagedb.get_package_repo(name) ctx.ui.info( _("%s package found in %s repository") % (package.name, repo)) uri = pisi.uri.URI(package.packageURI) output = os.path.join(path, uri.path()) if os.path.exists( output) and package.packageHash == pisi.util.sha1_file(output): ctx.ui.warning(_("%s package already fetched") % uri.path()) continue if uri.is_absolute_path(): url = str(pkg_uri) else: url = os.path.join(os.path.dirname(repodb.get_repo_url(repo)), str(uri.path())) fetcher.fetch_url(url, path, ctx.ui.Progress)
def fetch(packages=[], path=os.path.curdir): """ Fetches the given packages from the repository without installing, just downloads the packages. @param packages: list of package names -> list_of_strings @param path: path to where the packages will be downloaded. If not given, packages will be downloaded to the current working directory. """ packagedb = pisi.db.packagedb.PackageDB() repodb = pisi.db.repodb.RepoDB() for name in packages: package, repo = packagedb.get_package_repo(name) uri = pisi.uri.URI(package.packageURI) if uri.is_absolute_path(): url = str(pkg_uri) else: url = os.path.join(os.path.dirname(repodb.get_repo_url(repo)), str(uri.path())) fetcher.fetch_url(url, path, ctx.ui.Progress)
def fetch(packages=[], path=os.path.curdir): """ Fetches the given packages from the repository without installing, just downloads the packages. @param packages: list of package names -> list_of_strings @param path: path to where the packages will be downloaded. If not given, packages will be downloaded to the current working directory. """ packagedb = pisi.db.packagedb.PackageDB() repodb = pisi.db.repodb.RepoDB() for name in packages: package, repo = packagedb.get_package_repo(name) ctx.ui.info(_("%s package found in %s repository") % (package.name, repo)) uri = pisi.uri.URI(package.packageURI) output = os.path.join(path, uri.path()) if os.path.exists(output) and package.packageHash == pisi.util.sha1_file(output): ctx.ui.warning(_("%s package already fetched") % uri.path()) continue if uri.is_absolute_path(): url = str(pkg_uri) else: url = os.path.join(os.path.dirname(repodb.get_repo_url(repo)), str(uri.path())) fetcher.fetch_url(url, path, ctx.ui.Progress)