Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas De Schampheleire <patrickdepinguin@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v4 5/9] autobuild-run: check-requirements does not need to know the login details
Date: Wed, 12 Nov 2014 20:58:33 +0100	[thread overview]
Message-ID: <1415822317-22500-6-git-send-email-patrickdepinguin@gmail.com> (raw)
In-Reply-To: <1415822317-22500-1-git-send-email-patrickdepinguin@gmail.com>

From: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>

check-requirements simply has to know if the results have to be sent, so
it can check on some extra requirements. The username and password are
irrelevant here.
This commit introduces a boolean variable upload to hide these details.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
---
 scripts/autobuild-run | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/scripts/autobuild-run b/scripts/autobuild-run
index 8312bfb..3f5b4cf 100755
--- a/scripts/autobuild-run
+++ b/scripts/autobuild-run
@@ -120,12 +120,12 @@ def check_version():
         print "ERROR: script version too old, please upgrade."
         sys.exit(1)
 
-def check_requirements(http_login, http_password):
+def check_requirements(upload=False):
     devnull = open(os.devnull, "w")
     needed_progs = ["make", "git", "gcc", "timeout"]
     missing_requirements = False
 
-    if http_login and http_password:
+    if upload:
         needed_progs.append("curl")
 
     for prog in needed_progs:
@@ -517,7 +517,7 @@ def send_results(result, **kwargs):
         log_write(log, "ERROR: could not make results tarball")
         sys.exit(1)
 
-    if kwargs['http_login'] and kwargs['http_password']:
+    if kwargs['upload']:
         # Submit results. Yes, Python has some HTTP libraries, but
         # none of the ones that are part of the standard library can
         # upload a file without writing dozens of lines of code.
@@ -612,10 +612,15 @@ def main():
         # merge config/args, priority given to config
         args = merge(ini_config, args)
 
-    check_requirements(args['--http-login'], args['--http-password'])
-    if args['--http-login'] is None or args['--http-password'] is None:
+    # http_login/password could theoretically be allowed as empty, so check
+    # explicitly on None.
+    upload = (args['--http-login'] is not None) \
+                and (args['--http-password'] is not None)
+    check_requirements(upload)
+    if not upload:
         print "WARN: due to the lack of http login/password details, results will not be submitted"
         print "WARN: tarballs of results will be kept locally only"
+
     def sigterm_handler(signum, frame):
         os.killpg(os.getpgid(os.getpid()), signal.SIGTERM)
         sys.exit(1)
@@ -625,7 +630,8 @@ def main():
             'instance': i, 'njobs': args['--njobs'], 'sysinfo': sysinfo,
             'http_login': args['--http-login'],
             'http_password': args['--http-password'],
-            'submitter': args['--submitter'], 'make_opts': args['--make-opts']})
+            'submitter': args['--submitter'], 'make_opts': args['--make-opts'],
+            'upload': upload})
         p.start()
         processes.append(p)
     signal.signal(signal.SIGTERM, sigterm_handler)
-- 
1.8.5.1

  parent reply	other threads:[~2014-11-12 19:58 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-12 19:58 [Buildroot] [PATCH v4 0/9] autobuild-run improvements Thomas De Schampheleire
2014-11-12 19:58 ` [Buildroot] [PATCH v4 1/9] scripts: add python module docopt Thomas De Schampheleire
2014-11-12 19:58 ` [Buildroot] [PATCH v4 2/9] autobuild-run: use docopt for argument parsing Thomas De Schampheleire
2014-11-12 19:58 ` [Buildroot] [PATCH v4 3/9] autobuild-run: add option --make-opts for custom Buildroot options Thomas De Schampheleire
2014-11-12 19:58 ` [Buildroot] [PATCH v4 4/9] autobuild-run: use **kwargs to avoid explicit parameter passthroughs Thomas De Schampheleire
2014-11-12 19:58 ` Thomas De Schampheleire [this message]
2014-11-12 19:58 ` [Buildroot] [PATCH v4 6/9] autobuild-run: set LC_ALL=C to not use locale settings of host machine Thomas De Schampheleire
2014-11-12 19:58 ` [Buildroot] [PATCH v4 7/9] autobuild-run: improve the logic to generate build-end.log Thomas De Schampheleire
2014-11-12 19:58 ` [Buildroot] [PATCH v4 8/9] autobuild-run: save config.log files for failed package Thomas De Schampheleire
2014-11-12 19:58 ` [Buildroot] [PATCH v4 9/9] autobuild-run: extend TODO list Thomas De Schampheleire
2014-11-25 21:09   ` Thomas De Schampheleire
2014-11-25 21:20     ` Thomas Petazzoni
2014-12-04 20:41       ` Thomas De Schampheleire
2014-12-05  8:15         ` Thomas Petazzoni
2014-12-05 12:42           ` Thomas De Schampheleire
2014-11-25 20:36 ` [Buildroot] [PATCH v4 0/9] autobuild-run improvements Thomas De Schampheleire
2014-11-25 20:42   ` Thomas Petazzoni
2014-11-25 21:10     ` Thomas De Schampheleire

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=1415822317-22500-6-git-send-email-patrickdepinguin@gmail.com \
    --to=patrickdepinguin@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox