All of lore.kernel.org
 help / color / mirror / Atom feed
From: Atharva Lele <itsatharva@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 26/27] scripts/autobuild-run: make the HTTP URL really configurable
Date: Sat, 29 Jun 2019 10:32:13 +0530	[thread overview]
Message-ID: <20190629050214.17852-26-itsatharva@gmail.com> (raw)
In-Reply-To: <20190629050214.17852-1-itsatharva@gmail.com>

From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

The --http-url option allowed to customize the URL at which build
results are submitted. However, there were two other places in the
script where autobuild.buildroot.org was hardcoded: when checking the
script version, and when getting the list of branches to build.

This commit changes the --http-url to be the base URL of the autobuild
server, and it is used everywhere instead of hardcoding
autobuild.buildroot.org.

Note: users of autobuild-run that were passing a custom --http-url
option such as http://foo.com/submit/ should change it to just
http://foo.com/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[Atharva: Adapted Thomas' patches to work with Builder class]
Signed-off-by: Atharva Lele <itsatharva@gmail.com>
---
Changes v1 -> v2:
  - Incorporate Thomas' patch into Builder class series
---
 scripts/autobuild-run | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/scripts/autobuild-run b/scripts/autobuild-run
index 9051297..d92e977 100755
--- a/scripts/autobuild-run
+++ b/scripts/autobuild-run
@@ -66,7 +66,7 @@ defaults = {
     '--make-opts': '',
     '--nice': 0,
     '--pid-file': '/tmp/buildroot-autobuild.pid',
-    '--http-url': 'http://autobuild.buildroot.org/submit/',
+    '--http-url': 'http://autobuild.buildroot.org/',
     '--toolchains-csv': 'support/config-fragments/autobuild/toolchain-configs.csv',
     '--repo': 'https://github.com/buildroot/buildroot.git',
 }
@@ -145,6 +145,7 @@ from distutils.version import StrictVersion
 import platform
 from threading import Thread, Event
 import datetime
+import urlparse
 
 if sys.hexversion >= 0x3000000:
     import configparser
@@ -283,7 +284,7 @@ class Builder:
             self.log = open(os.path.join(self.idir, "instance.log"), "a+")
 
     def check_version(self):
-        with urlopen_closing('http://autobuild.buildroot.org/version') as r:
+        with urlopen_closing(urlparse.urljoin(self.http_url, 'version')) as r:
             version = int(decode_bytes(r.readline()).strip())
         if version > VERSION:
             print("ERROR: script version too old, please upgrade.")
@@ -291,14 +292,14 @@ class Builder:
 
     def get_branch(self):
         """Returns the branch that should be built. It fetches a CSV file from
-        autobuild.buildroot.org that provides the list of branches to test
+        the autobuild server that provides the list of branches to test
         (first field) and their weight (second field). We build a list of
         branches, where the branch name is repeated N times, with N being
         the weight of the branch. We then pick a random branch in this
         list. This way, branches with a higher weight are more likely to
         be selected.
         """
-        with urlopen_closing('http://autobuild.buildroot.org/branches') as r:
+        with urlopen_closing(urlparse.urljoin(self.http_url, 'branches')) as r:
             csv_branches = r.readlines()
         branches = []
         for branch in csv.reader(csv_branches):
@@ -692,7 +693,7 @@ class Builder:
                                    "-H", "Expect:",
                                    "-F", "uploadedfile=@%s" % os.path.join(self.outputdir, "results.tar.bz2"),
                                    "-F", "uploadsubmit=1",
-                                   self.http_url],
+                                   urlparse.urljoin(self.http_url, 'submit/')],
                                    stdout=self.log, stderr=self.log)
             if ret != 0:
                 log_write(self.log, "INFO: results could not be submitted, %d" % ret)
-- 
2.20.1

  parent reply	other threads:[~2019-06-29  5:02 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-29  5:01 [Buildroot] [PATCH 01/27] autobuild-run: introduce Builder class Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 02/27] autobuild-run: move instance variable from kwargs to " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 03/27] autobuild-run: move njobs " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 04/27] autobuild-run: move sysinfo " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 05/27] autobuild-run: move http variables " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 06/27] autobuild-run: move submitter " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 07/27] autobuild-run: move make_opts " Atharva Lele
2019-07-01 22:18   ` Arnout Vandecappelle
2019-06-29  5:01 ` [Buildroot] [PATCH 08/27] autobuild-run: move niceness " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 09/27] autobuild-run: move toolchains_csv " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 10/27] autobuild-run: move repo " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 11/27] autobuild-run: move upload variable " Atharva Lele
2019-06-29  5:01 ` [Buildroot] [PATCH 12/27] autobuild-run: move buildpid " Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 13/27] autobuild-run: move debug " Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 14/27] autobuild-run: define instance directory as a part of " Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 15/27] autobuild-run: move log variable to " Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 16/27] autobuild-run: remove kwargs argument from function calls and definitions Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 17/27] autobuild-run: define source directory as part of Builder class Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 18/27] autobuild-run: define download " Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 19/27] autobuild-run: define output " Atharva Lele
2019-07-01 22:26   ` Arnout Vandecappelle
2019-06-29  5:02 ` [Buildroot] [PATCH 20/27] autobuild-run: define results " Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 21/27] autobuild-run: move check_version() to " Atharva Lele
2019-07-01 22:28   ` Arnout Vandecappelle
2019-06-29  5:02 ` [Buildroot] [PATCH 22/27] autobuild-run: move get_branch() " Atharva Lele
2019-07-01 22:29   ` Arnout Vandecappelle
2019-06-29  5:02 ` [Buildroot] [PATCH 23/27] autobuild-run: create reason file on build failures Atharva Lele
2019-07-01 22:46   ` Arnout Vandecappelle
2019-06-29  5:02 ` [Buildroot] [PATCH 24/27] autobuild-run: account for reproducibility failures when creating the reason file Atharva Lele
2019-06-29  5:02 ` [Buildroot] [PATCH 25/27] web/import.inc.php: support reading failure reason from " Atharva Lele
2019-06-29  5:02 ` Atharva Lele [this message]
2019-07-01 22:33   ` [Buildroot] [PATCH 26/27] scripts/autobuild-run: make the HTTP URL really configurable Arnout Vandecappelle
2019-06-29  5:02 ` [Buildroot] [PATCH 27/27] scripts/autobuild-run: support changing repo Atharva Lele
2019-07-01 22:40   ` Arnout Vandecappelle
2019-07-01 22:16 ` [Buildroot] [PATCH 01/27] autobuild-run: introduce Builder class Arnout Vandecappelle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190629050214.17852-26-itsatharva@gmail.com \
    --to=itsatharva@gmail.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.