chiark / gitweb /
fix py3 bug when running `fdroid build` with a buildserver
authorHans-Christoph Steiner <hans@eds.org>
Tue, 15 Mar 2016 12:21:19 +0000 (13:21 +0100)
committerHans-Christoph Steiner <hans@eds.org>
Tue, 15 Mar 2016 12:21:19 +0000 (13:21 +0100)
File "/var/lib/jenkins/workspace/fdroidserver-makebuildserver/fdroidserver/build.py", line 1119, in main
    options.onserver, options.refresh):
  File "/var/lib/jenkins/workspace/fdroidserver-makebuildserver/fdroidserver/build.py", line 954, in trybuild
    build_server(app, build, vcs, build_dir, output_dir, force)
  File "/var/lib/jenkins/workspace/fdroidserver-makebuildserver/fdroidserver/build.py", line 403, in build_server
    output += get
TypeError: Can't convert 'bytes' object to str implicitly

closes #164 https://gitlab.com/fdroid/fdroidserver/issues/164

fdroidserver/build.py

index fe9d4b9f27e5d6abdfcee1bf00708673c115f0a6..b059124dd0ecd82b99982ef459cb48244fad5167 100644 (file)
@@ -389,7 +389,7 @@ def build_server(app, build, vcs, build_dir, output_dir, force):
             cmdline += ' --verbose'
         cmdline += " %s:%s" % (app.id, build.vercode)
         chan.exec_command('bash -c ". ~/.bsenv && ' + cmdline + '"')
-        output = ''
+        output = bytes()
         while not chan.exit_status_ready():
             while chan.recv_ready():
                 output += chan.recv(1024)
@@ -404,7 +404,7 @@ def build_server(app, build, vcs, build_dir, output_dir, force):
         if returncode != 0:
             raise BuildException(
                 "Build.py failed on server for {0}:{1}".format(
-                    app.id, build.version), output)
+                    app.id, build.version), str(output, 'utf-8'))
 
         # Retrieve the built files...
         logging.info("Retrieving build output...")