Mercurial > illumos > illumos-gate
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