(List (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS errexit]} ) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS nounset]} ) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS pipefail]} ) (= scope= flags=0 words=[] bindings=[('VOLUME', {[VarSub HOME]})]) (= scope= flags=0 words=[] bindings=[('ALLOW', {[ComSub (Pipeline (Com {[LIT_CHARS ip]} {[LIT_CHARS route]}) (Com {[LIT_CHARS awk]} {[SQ ]}) )]})]) (= scope= flags=0 words=[] bindings=[('CONFDIR', {[DQ [LIT_CHARS /tmp/rsync.k8s]]})]) (= scope= flags=0 words=[] bindings=[('PIDFILE', {[DQ [VarSub CONFDIR][LIT_CHARS /rsyncd.pid]]})]) (= scope= flags=0 words=[] bindings=[('CONFFILE', {[DQ [VarSub CONFDIR][LIT_CHARS /rsyncd.conf]]})]) (= scope= flags=0 words=[] bindings=[('SECRETS', {[DQ [VarSub CONFDIR][LIT_CHARS /rsyncd.secrets]]})]) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[DQ [VarSub CONFDIR]]} ) (If (DBracket {B1 UNARY_FILE_f {[DQ [VarSub PIDFILE]]}}) (List (= scope= flags=0 words=[] bindings=[('PID', {[ComSub (Com {[LIT_CHARS cat]} {[DQ [VarSub PIDFILE]]})]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Cleaning up old PID file: "][VarSub PIDFILE]]} ) (Fork (Com {[LIT_CHARS kill]} {[VarSub PID]} ) ) (AndOr OP_OR_IF (Com < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), > ) (Com {[LIT_CHARS true]} ) ) (Com {[LIT_CHARS rm]} {[DQ [VarSub PIDFILE]]} ) ) ) (= scope= flags=0 words=[] bindings=[('PASSWORD', {[ComSub (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /rsyncd.password]} 0)])]})]) (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "k8s:"][VarSub PASSWORD][LIT_CHARS "\n"]]} 0), (FilenameRedirectNode filename={[DQ [VarSub SECRETS]]} "> 1), > ) (Com {[LIT_CHARS chmod]} {[LIT_VAR_LIKE "go="] =} {[DQ [VarSub SECRETS]]} ) (= scope= flags=0 words=[] bindings=[('USER_CONFIG', {[SQ ]})]) (If (DBracket {B2 BINARY_STRING_EQUAL {[DQ [ComSub (Com {[LIT_CHARS id]} {[LIT_CHARS -u]})]]} {[DQ [LIT_CHARS 0]]}}) (= scope= flags=0 words=[] bindings=[('USER_CONFIG', {[DQ [LIT_CHARS " uid = 0"]] [SQ ] [DQ [LIT_CHARS " gid = 0"]]})]) ) (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "pid file = "][VarSub PIDFILE][LIT_CHARS "\n"][LIT_CHARS "use chroot = no\n"][LIT_CHARS "log file = /dev/stdout\n"][LIT_CHARS "reverse lookup = no\n"][LIT_CHARS "munge symlinks = no\n"][LIT_CHARS "port = 8730\n"][LIT_CHARS "[k8s]\n"][LIT_CHARS " numeric ids = true\n"][LIT_CHARS " "][VarSub USER_CONFIG][LIT_CHARS "\n"][LIT_CHARS " hosts deny = *\n"][LIT_CHARS " hosts allow = "][VarSub ALLOW][LIT_CHARS "\n"][LIT_CHARS " auth users = k8s\n"][LIT_CHARS " secrets file = "][VarSub SECRETS][LIT_CHARS "\n"][LIT_CHARS " read only = false\n"][LIT_CHARS " path = "][VarSub VOLUME][LIT_CHARS "\n"][LIT_CHARS " filter = - /.make/ - /.git/ - /_tmp/\n"]]} 0), (FilenameRedirectNode filename={[DQ [VarSub CONFFILE]]} "> 1), > ) (Com {[LIT_CHARS exec]} {[LIT_CHARS /usr/bin/rsync]} {[LIT_CHARS --no-detach]} {[LIT_CHARS --daemon]} {[LIT_CHARS --config] [LIT_DBRACKET_LIKE "="] [DQ [VarSub CONFFILE]]} {[DQ [VarSub @]]} ) )