def builder(self, path, file, root): if not root: root = self.dist.getReleasePath() dir = os.path.join(root, path) fullname = os.path.join(dir, file.getName()) if file.getFullName() == fullname: return if not os.path.isdir(dir): os.makedirs(dir) # Create the new distribution either with all symbolic links # into the mirror, contrib, and local rpms. Or copy # everything. The idea is local distributions should be all # symlinks, but a published base distribution (like the NPACI # Rocks master) should be copys. This keeps the FTP chroot # environment happy, extends the lifetime of the release past # that of scattered RPMS. It may also make sense to have your # master distribution for your cluster done by copy. if self.useLinks: file.symlink(fullname, self.dist.getRootPath()) else: # For copied distributions, the timestamps of the new # files are forced to that of the source files. This # keeps wget happy. if os.path.islink(file.getFullName()): os.symlink(os.readlink(file.getFullName()), fullname) else: shutil.copy(file.getFullName(), fullname) os.utime(fullname, (file.getTimestamp(), file.getTimestamp()))
def copyFile(self, path, file, root): if file.getName() in [ 'TRANS.TBL' ]: return dir = os.path.join(root, path) fullname = os.path.join(dir, file.getName()) if not os.path.isdir(dir): os.makedirs(dir) shutil.copy(file.getFullName(), fullname) os.utime(fullname, (file.getTimestamp(), file.getTimestamp()))
def copyFile(self, path, file, root): if file.getName() in ['TRANS.TBL']: return dir = os.path.join(root, path) fullname = os.path.join(dir, file.getName()) if not os.path.isdir(dir): os.makedirs(dir) shutil.copy(file.getFullName(), fullname) os.utime(fullname, (file.getTimestamp(), file.getTimestamp()))