Print this page
Split Close
Expand all
Collapse all
          --- /workspace/neilga/ohacds-ids/webrev/usr/src/cmd/ha-services/gds-agents/ids/ids_register.ksh-
          +++ ids_register.ksh
↓ open down ↓ 36 lines elided ↑ open up ↑
  37   37             *)   /usr/bin/echo "ERROR: ${MYNAME} Option ${OPTARG} unknown"
  38   38                  /usr/bin/echo "Usage: ${MYNAME} -f <config file>"
  39   39                  exit 1;;
  40   40          esac
  41   41  done
  42   42  
  43   43  [ -z "${MYCONFIG}" ] && MYCONFIG=/opt/SUNWscids/util/ids_config
  44   44  
  45   45  . ${MYCONFIG}
  46   46  
       47 +for i in RS RG USERID INFORMIXDIR ONCONFIG INFORMIXSERVER INFORMIXSQLHOSTS
       48 +do
       49 +        if eval [ -z \$$i ]
       50 +        then
       51 +           /usr/bin/printf "ids requires a value for $i= within ${MYCONFIG}\n"
       52 +           rc=1
       53 +        fi
       54 +done
       55 +
       56 +[ "${rc}" -ne 0 ] && exit 1
       57 +
  47   58  if [ -z ${RS_ZONE} ]
  48   59  then
  49   60  
  50   61  /usr/cluster/bin/clrs create -g ${RG} -t SUNW.gds \
  51   62  -p Start_command="/opt/SUNWscids/bin/control_ids \
  52   63  -R '${RS}' -G '${RG}' -U '${USERID}' -D '${INFORMIXDIR}' -C '${ONCONFIG}' \
  53   64  -S '${INFORMIXSERVER}' -H '${INFORMIXSQLHOSTS}' start ids " \
  54   65  -p Stop_command="/opt/SUNWscids/bin/control_ids \
  55   66  -R '${RS}' -G '${RG}' -U '${USERID}' -D '${INFORMIXDIR}' -C '${ONCONFIG}' \
  56   67  -S '${INFORMIXSERVER}' -H '${INFORMIXSQLHOSTS}' stop ids " \
↓ open down ↓ 44 lines elided ↑ open up ↑
 101  112             /usr/bin/awk '{ if ($7 == "-P") print $8 }'`
 102  113  
 103  114          if [ ! -d "${ZONEPFILE}" ]
 104  115          then
 105  116             /usr/bin/printf "Unable to retrieve zone parameter file directory\n"
 106  117             exit 1
 107  118          else
 108  119             ZONE=`/usr/bin/grep Zonename= ${ZONEPFILE}/sczbt_${RS_ZONE} | /usr/bin/awk -F= '{print $2}' | /usr/xpg4/bin/tr -d '"' `
 109  120          fi
 110  121  
      122 +        # VALIDATE RESOURCE
      123 +
      124 +        if /usr/sbin/zlogin ${ZONE} "/opt/SUNWscids/bin/control_ids -R '${RS}' -G '${RG}' -U '${USERID}' -D '${INFORMIXDIR}' -C '${ONCONFIG}' -S '${INFORMIXSERVER}' -H '${INFORMIXSQLHOSTS}' validate ids "
      125 +        then
      126 +           /usr/bin/printf "Validation of ${RS} succeeded\n"
      127 +        else
      128 +           /usr/bin/printf "Validation of ${RS} failed\n"
      129 +           /usr/bin/printf "Check the syslog for ${ZONE}\n"
      130 +           exit 1
      131 +        fi
      132 +           
 111  133          SERVICE_TAG=svc:/application/sczone-agents:${RS}
 112  134  
 113  135          /usr/bin/cat > /var/tmp/${RS}_smf_config <<-EOF
 114  136  RS=${RS}
 115  137  RG=${RG}
 116  138  SCZBT_RS=${RS_ZONE}
 117  139  ZONE=${ZONE}
 118  140  SERVICE=${SERVICE_TAG}
 119  141  RECURSIVE=true
 120  142  STATE=true
↓ open down ↓ 5 lines elided ↑ open up ↑
 126  148          
 127  149          # Remove an existing FMRI in the zone if it already exists
 128  150          ${IDSDIR}/util/ids_smf_remove -z ${ZONE} -f ${SERVICE_TAG} 2>/dev/null
 129  151  
 130  152          # Create and register the ${SERVICE_TAG}
 131  153          if /usr/sbin/zlogin ${ZONE} ${IDSDIR}/util/ids_smf_register ${TMP_WORK_CONFIG}
 132  154          then
 133  155             if /opt/SUNWsczone/sczsmf/util/sczsmf_register -f /var/tmp/${RS}_smf_config
 134  156             then
 135  157                  /usr/bin/printf "Registration of ${RS} succeeded\n"
      158 +
      159 +                if ! /usr/cluster/bin/clrs set -p Start_timeout=${START_TIMEOUT} ${RS}
      160 +                then
      161 +                   /usr/bin/printf "clrs set -p Start_timeout=${START_TIMEOUT} ${RS} failed\n"
      162 +                fi
      163 +
      164 +                if ! /usr/cluster/bin/clrs set -p Stop_timeout=${STOP_TIMEOUT} ${RS}
      165 +                then
      166 +                   /usr/bin/printf "clrs set -p Stop_timeout=${STOP_TIMEOUT} ${RS} failed\n"
      167 +                fi
 136  168             else
 137  169                  /usr/bin/printf "Registration of ${RS} failed\n"
 138  170                  exit 1
 139  171             fi
 140  172          fi
 141  173  fi
 142  174  
 143  175  exit 0
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX