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()
예제 #2
0
 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)
예제 #3
0
 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")))
예제 #4
0
 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)
예제 #6
0
 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)