components/openstack/swift/files/swift-replicator-rsync
changeset 1944 56ac2df1785b
parent 1896 f83e6dde6c3b
child 4049 150852e281c4
equal deleted inserted replaced
1943:1a27f000029f 1944:56ac2df1785b
    23 
    23 
    24 
    24 
    25 def start():
    25 def start():
    26     cfgfile = "/etc/swift/rsyncd.conf"
    26     cfgfile = "/etc/swift/rsyncd.conf"
    27     if not os.path.isfile(cfgfile):
    27     if not os.path.isfile(cfgfile):
    28         smf_include.smf_method_exit(smf_include.SMF_EXIT_ERR_CONFIG,
    28         smf_include.smf_method_exit(
    29           "missing_config", "Missing configuration file")
    29             smf_include.SMF_EXIT_ERR_CONFIG, "missing_config",
       
    30             "Missing configuration file")
    30 
    31 
    31     # This is the default delivered in /etc/swift/rsyncd.conf
    32     # This is the default delivered in /etc/swift/rsyncd.conf
    32     try:
    33     try:
    33         os.mkdir("/var/run/swift")
    34         os.mkdir("/var/run/swift")
    34     except OSError as e:
    35     except OSError as e:
    38     cmdline = ["/usr/bin/rsync", "--daemon", "--config", cfgfile]
    39     cmdline = ["/usr/bin/rsync", "--daemon", "--config", cfgfile]
    39     try:
    40     try:
    40         proc = subprocess.Popen(cmdline)
    41         proc = subprocess.Popen(cmdline)
    41     except OSError as err:
    42     except OSError as err:
    42         print >> sys.stderr, "Error executing rsync: %s" % err
    43         print >> sys.stderr, "Error executing rsync: %s" % err
    43         smf_include.smf_method_exit(smf_include.SMF_EXIT_ERR_FATAL,
    44         smf_include.smf_method_exit(
    44           "exec_error", "Error executing rsync: %s" % err)
    45             smf_include.SMF_EXIT_ERR_FATAL, "exec_error",
       
    46             "Error executing rsync: %s" % err)
    45 
    47 
    46     ret = proc.wait()
    48     ret = proc.wait()
    47     if ret != 0:
    49     if ret != 0:
    48         print >> sys.stderr, "rsync daemon failed to start (see message above)"
    50         print >> sys.stderr, "rsync daemon failed to start (see message above)"
    49         print >> sys.stderr, "commandline:", " ".join(cmdline)
    51         print >> sys.stderr, "commandline:", " ".join(cmdline)
    50         print >> sys.stderr, "exit code:", ret
    52         print >> sys.stderr, "exit code:", ret
    51         smf_include.smf_method_exit(smf_include.SMF_EXIT_ERR_FATAL,
    53         smf_include.smf_method_exit(
    52           "exec_fail", "rsync daemon failed to start (see service log)")
    54             smf_include.SMF_EXIT_ERR_FATAL, "exec_fail",
       
    55             "rsync daemon failed to start (see service log)")
    53 
    56 
    54     return smf_include.SMF_EXIT_OK
    57     return smf_include.SMF_EXIT_OK
    55 
    58 
    56 if __name__ == "__main__":
    59 if __name__ == "__main__":
    57     os.putenv("LC_ALL", "C")
    60     os.putenv("LC_ALL", "C")