Forked from
DM / dm-docs
261 commits behind, 832 commits ahead of the upstream repository.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
rsyncFileTransfer.py 985 B
#!/usr/bin/env python
from dm.common.utility.dmSubprocess import DmSubprocess
class RsyncFileTransfer:
COMMAND = 'rsync'
def __init__(self, src, dest, flags='-arvlP'):
self.src = src
self.dest = dest
self.flags = flags
self.command = '%s %s %s %s' % (self.COMMAND, self.flags, self.src, self.dest)
self.subprocess = DmSubprocess.getSubprocess(self.command)
def execute(self):
return self.subprocess.run()
def getStdOut(self):
return self.subprocess.getStdOut()
def getStdErr(self):
return self.subprocess.getStdErr()
def getExitStatus(self):
return self.subprocess.getExitStatus()
#######################################################################
# Testing.
if __name__ == '__main__':
ft = RsyncFileTransfer('/tmp/abc', '/tmp/abc2')
ft.execute()
print 'StdOut: ', ft.getStdOut()
print 'StdErr: ', ft.getStdErr()
print 'Exit Status: ', ft.getExitStatus()