xref: /titanic_54/usr/src/test/os-tests/cmd/ostest.ksh (revision c46ce95d700ddd3b3564fc387c299ce3ef3b2250)
1d583b39bSJohn Wren Kennedy#!/usr/bin/ksh
2d583b39bSJohn Wren Kennedy
3d583b39bSJohn Wren Kennedy#
4d583b39bSJohn Wren Kennedy# This file and its contents are supplied under the terms of the
5d583b39bSJohn Wren Kennedy# Common Development and Distribution License ("CDDL"), version 1.0.
6d583b39bSJohn Wren Kennedy# You may only use this file in accordance with the terms of version
7d583b39bSJohn Wren Kennedy# 1.0 of the CDDL.
8d583b39bSJohn Wren Kennedy#
9d583b39bSJohn Wren Kennedy# A full copy of the text of the CDDL should have accompanied this
10d583b39bSJohn Wren Kennedy# source.  A copy of the CDDL is also available via the Internet at
11d583b39bSJohn Wren Kennedy# http://www.illumos.org/license/CDDL.
12d583b39bSJohn Wren Kennedy#
13d583b39bSJohn Wren Kennedy
14d583b39bSJohn Wren Kennedy#
15d583b39bSJohn Wren Kennedy# Copyright (c) 2012 by Delphix. All rights reserved.
16cf988facSDan McDonald# Copyright 2014, OmniTI Computer Consulting, Inc. All rights reserved.
17*c46ce95dSJerry Jelinek# Copyright 2016, Joyent, Inc.
18d583b39bSJohn Wren Kennedy#
19d583b39bSJohn Wren Kennedy
20d583b39bSJohn Wren Kennedyexport OS_TESTS="/opt/os-tests"
21d583b39bSJohn Wren Kennedyrunner="/opt/test-runner/bin/run"
22d583b39bSJohn Wren Kennedy
23d583b39bSJohn Wren Kennedyfunction fail
24d583b39bSJohn Wren Kennedy{
25d583b39bSJohn Wren Kennedy	echo $1
26d583b39bSJohn Wren Kennedy	exit ${2:-1}
27d583b39bSJohn Wren Kennedy}
28d583b39bSJohn Wren Kennedy
29d583b39bSJohn Wren Kennedyfunction find_runfile
30d583b39bSJohn Wren Kennedy{
31d583b39bSJohn Wren Kennedy	typeset distro=
32*c46ce95dSJerry Jelinek	if [[ -f $OS_TESTS/runfiles/default.run ]]; then
33*c46ce95dSJerry Jelinek		distro=default
34d583b39bSJohn Wren Kennedy	fi
35d583b39bSJohn Wren Kennedy
36d583b39bSJohn Wren Kennedy	[[ -n $distro ]] && echo $OS_TESTS/runfiles/$distro.run
37d583b39bSJohn Wren Kennedy}
38d583b39bSJohn Wren Kennedy
39d583b39bSJohn Wren Kennedywhile getopts c: c; do
40d583b39bSJohn Wren Kennedy	case $c in
41d583b39bSJohn Wren Kennedy	'c')
42d583b39bSJohn Wren Kennedy		runfile=$OPTARG
43d583b39bSJohn Wren Kennedy		[[ -f $runfile ]] || fail "Cannot read file: $runfile"
44d583b39bSJohn Wren Kennedy		;;
45d583b39bSJohn Wren Kennedy	esac
46d583b39bSJohn Wren Kennedydone
47d583b39bSJohn Wren Kennedyshift $((OPTIND - 1))
48d583b39bSJohn Wren Kennedy
49d583b39bSJohn Wren Kennedy[[ -z $runfile ]] && runfile=$(find_runfile)
50d583b39bSJohn Wren Kennedy[[ -z $runfile ]] && fail "Couldn't determine distro"
51d583b39bSJohn Wren Kennedy
52d583b39bSJohn Wren Kennedy$runner -c $runfile
53d583b39bSJohn Wren Kennedy
54d583b39bSJohn Wren Kennedyexit $?
55