xref: /onnv-gate/usr/src/lib/brand/solaris10/zone/postattach.ksh (revision 11771:5d55cb57dff3)
1*11771Sgerald.jelinek@sun.com#!/bin/ksh -p
2*11771Sgerald.jelinek@sun.com#
3*11771Sgerald.jelinek@sun.com# CDDL HEADER START
4*11771Sgerald.jelinek@sun.com#
5*11771Sgerald.jelinek@sun.com# The contents of this file are subject to the terms of the
6*11771Sgerald.jelinek@sun.com# Common Development and Distribution License (the "License").
7*11771Sgerald.jelinek@sun.com# You may not use this file except in compliance with the License.
8*11771Sgerald.jelinek@sun.com#
9*11771Sgerald.jelinek@sun.com# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*11771Sgerald.jelinek@sun.com# or http://www.opensolaris.org/os/licensing.
11*11771Sgerald.jelinek@sun.com# See the License for the specific language governing permissions
12*11771Sgerald.jelinek@sun.com# and limitations under the License.
13*11771Sgerald.jelinek@sun.com#
14*11771Sgerald.jelinek@sun.com# When distributing Covered Code, include this CDDL HEADER in each
15*11771Sgerald.jelinek@sun.com# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*11771Sgerald.jelinek@sun.com# If applicable, add the following below this CDDL HEADER, with the
17*11771Sgerald.jelinek@sun.com# fields enclosed by brackets "[]" replaced with your own identifying
18*11771Sgerald.jelinek@sun.com# information: Portions Copyright [yyyy] [name of copyright owner]
19*11771Sgerald.jelinek@sun.com#
20*11771Sgerald.jelinek@sun.com# CDDL HEADER END
21*11771Sgerald.jelinek@sun.com#
22*11771Sgerald.jelinek@sun.com#
23*11771Sgerald.jelinek@sun.com# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
24*11771Sgerald.jelinek@sun.com# Use is subject to license terms.
25*11771Sgerald.jelinek@sun.com#
26*11771Sgerald.jelinek@sun.com
27*11771Sgerald.jelinek@sun.com#
28*11771Sgerald.jelinek@sun.com# This postattach hook adds the service tag for the zone.
29*11771Sgerald.jelinek@sun.com# We need this in a postattach hook since the zone doesn't have
30*11771Sgerald.jelinek@sun.com# a UUID when the attach hook is run.
31*11771Sgerald.jelinek@sun.com#
32*11771Sgerald.jelinek@sun.com
33*11771Sgerald.jelinek@sun.com. /usr/lib/brand/solaris10/common.ksh
34*11771Sgerald.jelinek@sun.com
35*11771Sgerald.jelinek@sun.cominstall_media="-"
36*11771Sgerald.jelinek@sun.com
37*11771Sgerald.jelinek@sun.com# If we weren't passed at least two arguments, exit now.
38*11771Sgerald.jelinek@sun.com(( $# < 2 )) && exit $ZONE_SUBPROC_OK
39*11771Sgerald.jelinek@sun.com
40*11771Sgerald.jelinek@sun.comZONENAME="$1"
41*11771Sgerald.jelinek@sun.comZONEPATH="$2"
42*11771Sgerald.jelinek@sun.com
43*11771Sgerald.jelinek@sun.comshift 2
44*11771Sgerald.jelinek@sun.com
45*11771Sgerald.jelinek@sun.comnoexecute=0
46*11771Sgerald.jelinek@sun.comunset inst_type
47*11771Sgerald.jelinek@sun.com
48*11771Sgerald.jelinek@sun.com#
49*11771Sgerald.jelinek@sun.com# This hook will see the same options as the attach hook, so make sure
50*11771Sgerald.jelinek@sun.com# we accept all of these.
51*11771Sgerald.jelinek@sun.com#
52*11771Sgerald.jelinek@sun.comwhile getopts "a:d:nr:" opt; do
53*11771Sgerald.jelinek@sun.com	case $opt in
54*11771Sgerald.jelinek@sun.com		a)
55*11771Sgerald.jelinek@sun.com		 	inst_type="archive"
56*11771Sgerald.jelinek@sun.com			install_media="$OPTARG"
57*11771Sgerald.jelinek@sun.com			;;
58*11771Sgerald.jelinek@sun.com		d)
59*11771Sgerald.jelinek@sun.com		 	inst_type="directory"
60*11771Sgerald.jelinek@sun.com			install_media="$OPTARG"
61*11771Sgerald.jelinek@sun.com			;;
62*11771Sgerald.jelinek@sun.com		n)	noexecute=1 ;;
63*11771Sgerald.jelinek@sun.com		r)
64*11771Sgerald.jelinek@sun.com		 	inst_type="stdin"
65*11771Sgerald.jelinek@sun.com			install_media="$OPTARG"
66*11771Sgerald.jelinek@sun.com			;;
67*11771Sgerald.jelinek@sun.com		?)	exit $ZONE_SUBPROC_OK;;
68*11771Sgerald.jelinek@sun.com		*)	exit $ZONE_SUBPROC_OK;;
69*11771Sgerald.jelinek@sun.com	esac
70*11771Sgerald.jelinek@sun.comdone
71*11771Sgerald.jelinek@sun.comshift $((OPTIND-1))
72*11771Sgerald.jelinek@sun.com
73*11771Sgerald.jelinek@sun.com[ $noexecute -eq 1 ] && exit $ZONE_SUBPROC_OK
74*11771Sgerald.jelinek@sun.com[[ -z "$inst_type" ]] && inst_type="directory"
75*11771Sgerald.jelinek@sun.com
76*11771Sgerald.jelinek@sun.com# Add a service tag for this zone.
77*11771Sgerald.jelinek@sun.comadd_svc_tag "$ZONENAME" "attach $inst_type `basename $install_media`"
78*11771Sgerald.jelinek@sun.com
79*11771Sgerald.jelinek@sun.comexit $ZONE_SUBPROC_OK
80