haltOnFailure=True,logname="step"),
ShellArg(command=["rm","-f","waterslager.tar.gz"],
haltOnFailure=True,logname="step"),
- ShellArg(command=["tar","czf",util.Interpolate("waterslager-%(prop:shortrev)s.tar.gz"),"waterslager"],
+ ShellArg(command=["tar","czf",
+ util.Interpolate("waterslager-%(prop:shortrev)s.tar.gz"),
+ "waterslager"],
haltOnFailure=True,logname="step"),
],
haltOnFailure=True,
),
ShellSequence(
- name="copy waterslager to sra0",
+ name="copy application tarball to target",
commands=[
- ShellArg(command=["scp",util.Interpolate("waterslager-%(prop:shortrev)s.tar.gz"),"sra0:~"],
+ ShellArg(command=[
+ "scp",
+ util.Interpolate("waterslager-%(prop:shortrev)s.tar.gz"),
+ "sra0:~"],
haltOnFailure=True,logname="step"),
ShellArg(command=["ssh","sra0","rm","-f","waterslager-latest.tar.gz"],
haltOnFailure=True,logname="step"),
- ShellArg(command=["ssh","sra0","ln","-s",util.Interpolate("waterslager-%(prop:shortrev)s.tar.gz"),"waterslager-latest.tar.gz"],
+ ShellArg(command=["ssh","sra0","ln","-s",
+ util.Interpolate("waterslager-%(prop:shortrev)s.tar.gz"),
+ "waterslager-latest.tar.gz"],
haltOnFailure=True,logname="step"),
+ ShellArg(command=["ssh","sra0","chmod","g+r",
+ util.Interpolate("waterslager-%(prop:shortrev)s.tar.gz")],
+ haltOnFailure=True,logname="step"),
+ ],
+ haltOnFailure=True,
+ ),
+ ShellSequence(
+ name="generate support files on target",
+ commands=[
+ ShellArg(command=[
+ "ssh","sra0","sh","-c",
+
+ # note no commas to concatenate a single string
+ "cat >waterslager-prep.service <<EOF\n"
+ "[Unit]\n"
+ "Description=Unpack the latest waterslager release\n"
+ "Requires=network-online.target\n"
+ "\n"
+ "[Service]\n"
+ "User=waterslager\n"
+ "Type=oneshot\n"
+ "WorkingDirectory=/var/waterslager\n"
+ "ExecStart=/usr/bin/rm -rf waterslager/*\n"
+ "ExecStart=/usr/bin/tar xf /var/buildbot/waterslager-latest.tar.gz\n"
+ "\n"
+ "[Install]\n"
+ "WantedBy=multi-user.target\n"
+ "EOF\n"
+ ],
+ haltOnFailure=True,logname="write waterslager-prep.service"),
+ ShellArg(command=[
+ "ssh","sra0","sh","-c",
+
+ # note no commas to concatenate a single string
+ "cat >waterslager.service <<EOF\n"
+ "[Unit]\n"
+ "Description=Runwaterslager\n"
+ "Requires=network-online.target\n"
+ "\n"
+ "[Service]\n"
+ "User=waterslager\n"
+ "Type=simple\n"
+ "WorkingDirectory=/var/waterslager/waterslager\n"
+ "ExecStart=/var/waterslager/waterslager/waterslager\n"
+ "\n"
+ "[Install]\n"
+ "WantedBy=multi-user.target\n"
+ "EOF\n"
+ ],
+ haltOnFailure=True,logname="write waterslager.service"),
],
haltOnFailure=True,
)