From: Markus Lehtonen Date: Wed, 21 Sep 2016 08:40:36 +0000 (+0300) Subject: build-perf-bisect: pre-check sudo permissions X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c9561d1a25f2aadf09e5bd6071338f544f39d3e8;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git build-perf-bisect: pre-check sudo permissions Signed-off-by: Markus Lehtonen --- diff --git a/build-perf-bisect.sh b/build-perf-bisect.sh index 4dae07304cd..d903e7dcf57 100755 --- a/build-perf-bisect.sh +++ b/build-perf-bisect.sh @@ -175,6 +175,17 @@ run_cmd () { fi } +check_sudo () { + # Check that we're able to run the needed commands as superuser + output=`echo 0 | sudo -n -k /usr/bin/tee /proc/sys/vm/drop_caches 2>&1` + if echo $output | grep -q "a password is required"; then + log "ERROR: insufficient sudo permissions. Fix this e.g. by putting ALL = NOPASSWD: /usr/bin/tee /proc/sys/vm/drop_caches into sudoers file" + exit 255 + else + log "sudo permissions OK" + fi +} + do_sync () { run_cmd sync || exit 255 log "dropping kernel caches" @@ -314,6 +325,8 @@ echo CONNECTIVITY_CHECK_URIS = \"\" >> conf/local.conf # Do actual build log "TESTING REVISION $git_rev (#$git_rev_cnt), AVERAGING OVER $test_count TEST RUNS" +check_sudo + log "fetching sources" if [ -n "$build_target" ]; then run_cmd bitbake $build_target -c fetchall || exit 125