changeset 2982:fcfff4cfc631

6472110 Need var/svc/profile/platform_SUNW,Sun-Fire-15000.xml to work when upgrading system
author mcwalter
date Wed, 25 Oct 2006 14:21:46 -0700
parents b80f5da0b8ed
children 50a8637dc64d
files usr/src/pkgdefs/SUNWsckmr/postinstall usr/src/pkgdefs/SUNWsckmr/preinstall usr/src/pkgdefs/SUNWsckmr/prototype_com
diffstat 3 files changed, 93 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/pkgdefs/SUNWsckmr/postinstall	Wed Oct 25 10:43:10 2006 -0700
+++ b/usr/src/pkgdefs/SUNWsckmr/postinstall	Wed Oct 25 14:21:46 2006 -0700
@@ -3,9 +3,8 @@
 # CDDL HEADER START
 #
 # The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
 #
 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
 # or http://www.opensolaris.org/os/licensing.
@@ -23,7 +22,7 @@
 #
 #pragma ident	"%Z%%M%	%I%	%E% SMI"
 #
-# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 
@@ -89,6 +88,38 @@
 	fi
 }
 
+#
+# Perform extra activities if the installation is an Upgrade
+# and not an initial installation.
+#
+upgradeExtras()
+{
+
+# Enable the sckmd service on the
+# system if it is a SUNW,Sun-Fire-15000 machine.
+cat >> $BASEDIR/var/svc/profile/upgrade << \_ENABLE_SCKMD
+
+#
+# Enable sckmd if running on a SUNW,Sun-Fire-15000 platform
+#
+if [ `/sbin/uname -i` = "SUNW,Sun-Fire-15000" ]; then
+	/usr/sbin/svcadm enable svc:/platform/sun4u/sckmd:default
+fi
+
+_ENABLE_SCKMD
+}
+
+#
+# The temporary file will be created by the preinstall script
+# if the sckmd service is being installed for the first time by
+# means of an upgrade. If the temporary file does not exist,
+# it is not necessary to take any action.
+#
+TMPFILE=$BASEDIR/tmp/sckmd.tmp
+if [ -f $TMPFILE ]; then
+	upgradeExtras
+	rm -f $TMPFILE
+fi
 
 #
 # Remove all of our default policies
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/pkgdefs/SUNWsckmr/preinstall	Wed Oct 25 14:21:46 2006 -0700
@@ -0,0 +1,57 @@
+#! /usr/bin/sh
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+
+#
+# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+# ident	"%Z%%M%	%I%	%E% SMI"
+
+#
+# If sckmd service is being installed on the system for the first time as
+# part of an upgrade, svcadm must be invoked to enable the new
+# service on SUNW,Sun-Fire-15000 platform. A clean install does 
+# not require this step as the appropriate platform profile will 
+# control whether or not the sckmd service is enabled.
+#
+
+PLATFORM=`uname -i`
+STARCAT="SUNW,Sun-Fire-15000"
+if [ ${PLATFORM} != "${STARCAT}" ]; then
+	exit 0
+fi
+
+TMPFILE=${BASEDIR}/tmp/sckmd.tmp
+rm -f ${TMPFILE}
+
+if [ "${UPDATE}" = "yes" ]; then
+	#
+	# If sckmd service is already installed, no action is taken since
+	# the admin may have intentionally disabled the service.
+	# Otherwise, a temporary file is used to signal that the
+	# postinstall script should enable the service.
+	#
+	if [ ! -f ${BASEDIR}/var/svc/manifest/platform/sun4u/sckmd.xml ]; then
+		/usr/bin/touch ${TMPFILE}
+	fi
+fi
+
+exit 0
--- a/usr/src/pkgdefs/SUNWsckmr/prototype_com	Wed Oct 25 10:43:10 2006 -0700
+++ b/usr/src/pkgdefs/SUNWsckmr/prototype_com	Wed Oct 25 14:21:46 2006 -0700
@@ -41,6 +41,7 @@
 i i.manifest
 i r.manifest
 i postinstall
+i preinstall
 i preremove
 
 #