chiark / gitweb /
Fix buildserver, broken by e449d2f
authorCiaran Gultnieks <ciaran@ciarang.com>
Sat, 18 Jun 2016 11:10:36 +0000 (12:10 +0100)
committerCiaran Gultnieks <ciaran@ciarang.com>
Sat, 18 Jun 2016 11:15:16 +0000 (12:15 +0100)
Switching to a script /etc/profile.d to set up the environment is all
well and good, except that doesn't get run when you directly execute a
command directly via ssh, which means that the buildserver didn't work
at all (at least for anything that used gradle, or relied on the
environment variables.

This fix doesn't look very nice, but it works - it just forces the
appropriate script to run before build.py is executed on the server.

(Side note, I thought we had tests for this, how did it get past them?)

fdroidserver/build.py

index 8376cadffe2d82259083e4b72700005416553d33..7709a6bf104772ba1c16afe947b1e34d8bf0745e 100644 (file)
@@ -388,6 +388,7 @@ def build_server(app, build, vcs, build_dir, output_dir, force):
         if options.verbose:
             cmdline += ' --verbose'
         cmdline += " %s:%s" % (app.id, build.vercode)
+        cmdline = '. /etc/profile && ' + cmdline
         chan.exec_command('bash -c "' + cmdline + '"')
         output = bytes()
         while not chan.exit_status_ready():