svn commit: r263766 - user/jmmv/autotest/node
Julio Merino
jmmv at FreeBSD.org
Wed Mar 26 08:43:06 UTC 2014
Author: jmmv
Date: Wed Mar 26 08:43:05 2014
New Revision: 263766
URL: http://svnweb.freebsd.org/changeset/base/263766
Log:
Turn setup into an shtk-based script.
This means that "pkg install shtk" must be run first on the host by hand,
but that's easy enough to do. Added a check to the Makefile to ensure
that shtk is present.
The reason for doing this is that I want to add extra logic to this script,
and that logic will be much easier to implement with shtk.
Added:
user/jmmv/autotest/node/setup.sh
- copied, changed from r263762, user/jmmv/autotest/node/setup
Deleted:
user/jmmv/autotest/node/setup
Modified:
user/jmmv/autotest/node/Makefile
Modified: user/jmmv/autotest/node/Makefile
==============================================================================
--- user/jmmv/autotest/node/Makefile Wed Mar 26 07:42:43 2014 (r263765)
+++ user/jmmv/autotest/node/Makefile Wed Mar 26 08:43:05 2014 (r263766)
@@ -9,10 +9,14 @@ SHELL= /bin/sh
CONFIGS_SUBDIR!= hostname -s
SYSCONFDIR= ${.CURDIR}/configs/${CONFIGS_SUBDIR}
-SCRIPTS= iterate loop
+SCRIPTS= iterate loop setup
.PHONY: all
-all: ${SCRIPTS} rc.d/autotest_node
+all: check-shtk .WAIT ${SCRIPTS} rc.d/autotest_node
+
+check-shtk: .PHONY
+ @"${SHTK}" version >/dev/null 2>&1 \
+ || echo "shtk not available; run 'pkg install shtk'"
.for script in ${SCRIPTS}
${script}: ${script}.sh
Copied and modified: user/jmmv/autotest/node/setup.sh (from r263762, user/jmmv/autotest/node/setup)
==============================================================================
--- user/jmmv/autotest/node/setup Wed Mar 26 06:26:53 2014 (r263762, copy source)
+++ user/jmmv/autotest/node/setup.sh Wed Mar 26 08:43:05 2014 (r263766)
@@ -1,4 +1,3 @@
-#! /bin/sh
# $FreeBSD$
#
# Copyright 2013 Google Inc.
@@ -29,18 +28,16 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# \file setup
+# \file setup.sh
# Configures the current machine as an autotest node.
-set -e -x
-
-PROGDIR="$(cd $(dirname ${0}) && pwd)"
+shtk_import cli
# Installs any required packages and ensures they are up-to-date.
install_deps() {
pkg update
- pkg install -y qemu-devel kyua shtk
+ pkg install -y qemu-devel kyua
pkg upgrade -y
}
@@ -50,20 +47,20 @@ install_deps() {
# \param ... Arguments to make. Use to pass variable overrides for the host,
# such as the location of shtk(1).
build() {
- make -C "${PROGDIR}" clean
- make -C "${PROGDIR}" all "${@}"
+ make -C "$(shtk_cli_dirname)" clean
+ make -C "$(shtk_cli_dirname)" all "${@}"
}
# Sets up rc.conf to start autotest_node on boot.
enable_daemon() {
- grep "local_startup.*${PROGDIR}/rc.d" /etc/rc.conf \
- || echo "local_startup=\"\${local_startup} ${PROGDIR}/rc.d\"" \
+ grep "local_startup.*$(shtk_cli_dirname)/rc.d" /etc/rc.conf \
+ || echo "local_startup=\"\${local_startup} $(shtk_cli_dirname)/rc.d\"" \
>>/etc/rc.conf
grep "autotest_node_enable=yes" /etc/rc.conf \
|| echo "autotest_node_enable=yes" >>/etc/rc.conf
- "${PROGDIR}/rc.d/autotest_node" start
+ "$(shtk_cli_dirname)/rc.d/autotest_node" start
}
@@ -73,6 +70,3 @@ main() {
build "${@}"
enable_daemon
}
-
-
-main "${@}"
More information about the svn-src-user
mailing list