From 6e87f825223e57c763259127cdc29a8eafee6f8a Mon Sep 17 00:00:00 2001 From: Ciaran Gultnieks Date: Tue, 22 Jan 2013 16:11:22 +0000 Subject: [PATCH 1/3] Update docs re buildserver distro choice --- docs/fdroid.texi | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/fdroid.texi b/docs/fdroid.texi index 1e519aa1..df417fbc 100644 --- a/docs/fdroid.texi +++ b/docs/fdroid.texi @@ -1053,6 +1053,9 @@ the specification for what's required to be Vagrant-compatible is very well defined. This is the sensible and secure way to do it, since you know what's in it. If you insist on taking a shortcut, ask CiaranG about it on IRC. +You can use a different version or distro for the base box, so long as you +don't expect any help making it work. + With this base box installed, you can then go to the @code{fdroidserver} directory and run this: From a40439701437de9246682a0d23968181c4d90cb4 Mon Sep 17 00:00:00 2001 From: Ciaran Gultnieks Date: Tue, 22 Jan 2013 16:11:39 +0000 Subject: [PATCH 2/3] Handle ssh output buffering better --- fdroidserver/build.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/fdroidserver/build.py b/fdroidserver/build.py index 403c01ef..bfe35446 100644 --- a/fdroidserver/build.py +++ b/fdroidserver/build.py @@ -216,8 +216,6 @@ def build_server(app, thisbuild, vcs, build_dir, output_dir, sdk_path, force): # Execute the build script... print "Starting build..." chan = sshs.get_transport().open_session() - stdoutf = chan.makefile('r') - stderrf = chan.makefile_stderr('r') cmdline = 'python build.py --on-server' if force: cmdline += ' --force --test' @@ -226,9 +224,16 @@ def build_server(app, thisbuild, vcs, build_dir, output_dir, sdk_path, force): output = '' error = '' while not chan.exit_status_ready(): - output += stdoutf.read() - error += stderrf.read() + while chan.recv_ready(): + output += chan.recv(1024) + while chan.recv_stderr_ready(): + error += chan.recv_stderr(1024) + print "...getting exit status" returncode = chan.recv_exit_status() + while chan.recv_ready(): + output += chan.recv(1024) + while chan.recv_stderr_ready(): + error += chan.recv_stderr(1024) if returncode != 0: raise BuildException("Build.py failed on server for %s:%s" % (app['id'], thisbuild['version']), output.strip(), error.strip()) From b7123b2f005979dc8d479d4609237cb18e1793d9 Mon Sep 17 00:00:00 2001 From: Ciaran Gultnieks Date: Tue, 22 Jan 2013 16:34:34 +0000 Subject: [PATCH 3/3] Pointer to base box creation docs --- docs/fdroid.texi | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/fdroid.texi b/docs/fdroid.texi index df417fbc..653467e1 100644 --- a/docs/fdroid.texi +++ b/docs/fdroid.texi @@ -1053,6 +1053,9 @@ the specification for what's required to be Vagrant-compatible is very well defined. This is the sensible and secure way to do it, since you know what's in it. If you insist on taking a shortcut, ask CiaranG about it on IRC. +Documentation for creating a base box can be found at +@url{http://docs.vagrantup.com/v1/docs/base_boxes.html}. + You can use a different version or distro for the base box, so long as you don't expect any help making it work.