Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Side by Side Diff: src/scripts/build_autotest.sh

Issue 1004003: Add a blacklist to disable autotests that don't build (Closed)
Patch Set: updated wrt comments Created 10 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/bash 1 #!/bin/bash
2 2
3 # Copyright (c) 2009 The Chromium OS Authors. All rights reserved. 3 # Copyright (c) 2009 The Chromium OS Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 # This script makes autotest client tests inside a chroot environment. The idea 7 # This script makes autotest client tests inside a chroot environment. The idea
8 # is to compile any platform-dependent autotest client tests in the build 8 # is to compile any platform-dependent autotest client tests in the build
9 # environment, since client systems under test lack the proper toolchain. 9 # environment, since client systems under test lack the proper toolchain.
10 # 10 #
(...skipping 19 matching lines...) Expand all
30 30
31 # parse the command-line 31 # parse the command-line
32 FLAGS "$@" || exit 1 32 FLAGS "$@" || exit 1
33 eval set -- "${FLAGS_ARGV}" 33 eval set -- "${FLAGS_ARGV}"
34 set -e 34 set -e
35 35
36 check_board 36 check_board
37 37
38 # build default pre-compile client tests list. 38 # build default pre-compile client tests list.
39 ALL_TESTS="compilebench,dbench,disktest,ltp,netperf2,unixbench" 39 ALL_TESTS="compilebench,dbench,disktest,ltp,netperf2,unixbench"
40 for SITE_TEST in ../third_party/autotest/files/client/site_tests/* 40 CLIENT_TEST_PATH="../third_party/autotest/files/client/site_tests"
41 for SITE_TEST in ${CLIENT_TEST_PATH}/*
41 do 42 do
42 if [ -d ${SITE_TEST} ] 43 if [ -d ${SITE_TEST} ]
43 then 44 then
44 ALL_TESTS="${ALL_TESTS},${SITE_TEST:48}" 45 ALL_TESTS="${ALL_TESTS},${SITE_TEST##${CLIENT_TEST_PATH}/}"
45 fi 46 fi
46 done 47 done
47 48
49 # Load the overlay specific blacklist and remove any matching tests.
50 PRIMARY_BOARD_OVERLAY="${SRC_ROOT}/overlays/overlay-${FLAGS_board}"
51 BLACKLIST_FILE="${PRIMARY_BOARD_OVERLAY}/autotest-blacklist"
52 if [ -r "${BLACKLIST_FILE}" ]
53 then
54 BLACKLISTED_TESTS=$(cat ${BLACKLIST_FILE})
55
56 for TEST in ${BLACKLISTED_TESTS}
petkov 2010/03/17 17:27:49 Another way to do this, not necessarily better or
57 do
58 ALL_TESTS=${ALL_TESTS/#${TEST},/} # match first test (test,...)
59 ALL_TESTS=${ALL_TESTS/,${TEST},/,} # match middle tests (...,test,...)
60 ALL_TESTS=${ALL_TESTS/%,${TEST}/} # match last test (...,test)
61 done
62 fi
63
48 if [ ${FLAGS_build} == ${DEFAULT_TESTS_LIST} ] 64 if [ ${FLAGS_build} == ${DEFAULT_TESTS_LIST} ]
49 then 65 then
50 if [ ${FLAGS_prompt} -eq ${FLAGS_TRUE} ] 66 if [ ${FLAGS_prompt} -eq ${FLAGS_TRUE} ]
51 then 67 then
52 echo -n "You want to pre-build all client tests and it may take a long time" 68 echo -n "You want to pre-build all client tests and it may take a long time"
53 echo " to finish. " 69 echo " to finish. "
54 read -p "Are you sure you want to continue?(N/y)" answer 70 read -p "Are you sure you want to continue?(N/y)" answer
55 answer=${answer:0:1} 71 answer=${answer:0:1}
56 if [ "${answer}" != "Y" ] && [ "${answer}" != "y" ] 72 if [ "${answer}" != "Y" ] && [ "${answer}" != "y" ]
57 then 73 then
58 echo "Use --build to specify tests you like to pre-compile." 74 echo "Use --build to specify tests you like to pre-compile."
59 echo -n "E.g.: ./enter_chroot.sh \"./build_autotest.sh " 75 echo -n "E.g.: ./enter_chroot.sh \"./build_autotest.sh "
60 echo "--build=system_SAT\"" 76 echo "--build=system_SAT\""
61 exit 0 77 exit 0
62 fi 78 fi
63 fi 79 fi
64 TEST_LIST=${ALL_TESTS} 80 TEST_LIST=${ALL_TESTS}
65 else 81 else
66 TEST_LIST=${FLAGS_build} 82 TEST_LIST=${FLAGS_build}
67 fi 83 fi
68 84
69 # Decide on USE flags based on options 85 # Decide on USE flags based on options
70 USE= 86 USE=
71 [ $FLAGS_autox -eq "$FLAGS_FALSE" ] && USE="${USE} -autox" 87 [ $FLAGS_autox -eq "$FLAGS_FALSE" ] && USE="${USE} -autox"
72 [ $FLAGS_buildcheck -eq "$FLAGS_TRUE" ] && USE="${USE} buildcheck" 88 [ $FLAGS_buildcheck -eq "$FLAGS_TRUE" ] && USE="${USE} buildcheck"
73 89
74 GCLIENT_ROOT="${GCLIENT_ROOT}" TEST_LIST=${TEST_LIST} \ 90 GCLIENT_ROOT="${GCLIENT_ROOT}" TEST_LIST=${TEST_LIST} \
75 FEATURES="${FEATURES} -buildpkg" USE="$USE" "emerge-${FLAGS_board}" \ 91 FEATURES="${FEATURES} -buildpkg" USE="$USE" "emerge-${FLAGS_board}" \
76 chromeos-base/autotest 92 chromeos-base/autotest
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698