Esempio n. 1
0
File: yabish.py Progetto: muccg/yabi
 def stagein_file(self, f, stagein_dir):
     uri = 'ws/fs/put?uri=%s' % quote(stagein_dir)
     fname = os.path.basename(f.relpath)
     fname = quote(fname.encode('utf-8'))
     finfo = (fname, fname, f.fullpath)
     params = {}
     print('  Staging in file: %s (%s).' % (
         f.relpath, human_readable_size(os.path.getsize(f.fullpath))))
     resp, json_response = self.yabi.post(uri, params, files=[finfo])
     assert resp.status == 200
     return os.path.join(stagein_dir, fname)
Esempio n. 2
0
 def stagein_file(self, f, stagein_dir):
     uri = 'ws/fs/put?uri=%s' % quote(stagein_dir)
     fname = os.path.basename(f.relpath)
     fname = quote(fname.encode('utf-8'))
     finfo = (fname, fname, f.fullpath)
     params = {}
     print('  Staging in file: %s (%s).' %
           (f.relpath, human_readable_size(os.path.getsize(f.fullpath))))
     resp, json_response = self.yabi.post(uri, params, files=[finfo])
     assert resp.status == 200
     return os.path.join(stagein_dir, fname)
Esempio n. 3
0
File: yabish.py Progetto: muccg/yabi
    def do(self):
        if not self.args.local_files:
            return
        self.files = self.files_to_stagein()
        if not self.files:
            return

        files_to_uris = {}
        alldirs, allfiles, total_size = self.collect_files()
        stagein_dir, dir_uris = self.create_stagein_dir(alldirs)
        print("Staging in %s in %i directories and %i files." % (
            human_readable_size(total_size), len(alldirs), len(allfiles)))
        files_to_uris.update(dir_uris)
        for f in allfiles:
            rel_path, fname = os.path.split(f.relpath)
            file_uri = self.stagein_file(f, stagein_dir + rel_path)
            files_to_uris[f.relpath.encode("utf-8")] = file_uri
        print("Staging in finished.")
        return files_to_uris
Esempio n. 4
0
    def do(self):
        if not self.args.local_files:
            return
        self.files = self.files_to_stagein()
        if not self.files:
            return

        files_to_uris = {}
        alldirs, allfiles, total_size = self.collect_files()
        stagein_dir, dir_uris = self.create_stagein_dir(alldirs)
        print("Staging in %s in %i directories and %i files." %
              (human_readable_size(total_size), len(alldirs), len(allfiles)))
        files_to_uris.update(dir_uris)
        for f in allfiles:
            rel_path, fname = os.path.split(f.relpath)
            file_uri = self.stagein_file(f, stagein_dir + rel_path)
            files_to_uris[f.relpath.encode("utf-8")] = file_uri
        print("Staging in finished.")
        return files_to_uris