def sync(self, repo_id, url, ca, cert): start = time.time() yum_repo_grinder = YumRepoGrinder(repo_id, url, THREADS, cacert=ca, clicert=cert, packages_location=PKGS_DIR) self.report = yum_repo_grinder.fetchYumRepo( "%s/%s" % (REPO_DIR, repo_id), verify_options=VERIFY_OPTIONS) end = time.time()
def test_sync(self): test_url = "http://repos.fedorapeople.org/repos/pulp/pulp/demo_repos/pulp_unittest" temp_label = "test_sync" yum_fetch = YumRepoGrinder(temp_label, test_url, 5) sync_report = yum_fetch.fetchYumRepo(self.temp_dir) distro_tree_files = glob.glob("%s/%s/images/*" % (self.temp_dir, temp_label)) print distro_tree_files self.assertEquals(len(distro_tree_files), 3)
def test_sync_of_repo_no_treeinfo(self): test_url = "http://repos.fedorapeople.org/repos/pulp/pulp/demo_repos/repo_resync_a/" temp_label = "test_sync_of_repo_no_treeinfo" yum_fetch = YumRepoGrinder(temp_label, test_url, 5) sync_report = yum_fetch.fetchYumRepo(self.temp_dir) # Ensure that temp files were cleaned up for .treeinfo.part self.assertFalse( os.path.exists( os.path.join(self.temp_dir, temp_label, "treeinfo.part"))) self.assertFalse( os.path.exists( os.path.join(self.temp_dir, temp_label, ".treeinfo.part")))
def testSync(self): channel_label = "rhel-i386-server-vt-5" repoURL = "http://mmccune.fedorapeople.org/pulp/fedora/13/x86_64/" parallel = 8 # number of threads to fetch with repoGrinder = YumRepoGrinder("test_label_f13_updates", repoURL, parallel, newest=True) report = repoGrinder.fetchYumRepo(callback=sampleCallBack) print "report = %s" % (report) self.assertTrue(G_STATUS == "FINISHED") self.assertTrue(G_SIZE_LEFT == 0) self.assertTrue(G_ITEMS_LEFT == 0)
def sync(self, repo_id, url, ca, cert): print "%s sync(%s, %s)" % (datetime.now(), repo_id, url) #print "%s sync(%s, %s, %s, %s)" % (datetime.now(), repo_id, url, ca, cert) #tr = tracker.SummaryTracker() start = time.time() yum_repo_grinder = YumRepoGrinder(repo_id, url, THREADS, cacert=ca, clicert=cert, packages_location=PKGS_DIR) report = yum_repo_grinder.fetchYumRepo("%s/%s" % (REPO_DIR, repo_id), verify_options=VERIFY_OPTIONS) end = time.time() print ("<%s> reported %s successes, %s downloads, %s errors" \ % (repo_id, report.successes, report.downloads, report.errors)) print "<%s> took %s seconds" % (repo_id, end - start)
def _do_command(self): """ Executes the command. """ self._validate_options() sslverify = 1 if self.options.nosslverify: sslverify = 0 limit = None if self.options.limit: limit = int(self.options.limit) verify_options = {} if self.options.skip_verify_size: verify_options["size"] = False if self.options.skip_verify_checksum: verify_options["checksum"] = False if self.options.filter: self.options.filter = Filter(self.options.filter, regex_list=self.options.filter_regex) self.yfetch = YumRepoGrinder(self.options.label, self.options.url, self.parallel, cacert=self.options.cacert, clicert=self.options.clicert, clikey=self.options.clikey, proxy_url=self.options.proxy_url, proxy_port=self.options.proxy_port, proxy_user=self.options.proxy_user, proxy_pass=self.options.proxy_pass, sslverify=sslverify, max_speed=limit, filter=self.options.filter) if self.options.basepath: self.yfetch.fetchYumRepo(self.options.basepath, verify_options=verify_options) else: self.yfetch.fetchYumRepo(verify_options=verify_options)