You are on page 1of 20

Patch Installation Disk Framework Developer Guide

Confidentiality level Product name Graphic Patch Installation Disk Framework Product version !""#""$ Secret Total 19 pages

Graphic Patch Installation Disk Framework V200R008 Developer Guide


For internal use only

%&awei Technologies Co'( )td'


*ll rights reserved

Patch Installation Disk Framework Developer Guide

Contents 1 Description of the Graphic Patch Installation Disk Framework'''''''''''''''''''''''''''''''''''''''1 ! +aking Graphic Patch Installation Disk'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''1 , Ca&tion''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''1

Patch Installation Disk Framework Developer Guide

1 Description of the Graphic Patch Installation Disk Framework


The installation config&ration descri-ed -elow takes the .+S /+ and its patch as an e0ample' The act&al patch installation is -ased on the act&al display'

1'1 1verview
The graphic patch installation disk is developed -ased on the framework of the installation disk' It does not incl&de the development of the patch' It only provides the framework software of an installation patch' The software s&pports the patch installation &nder2 3indows operating system and S4) Server !""" data-ase Solaris operating system and Sy-ase data-ase environment )in&0 operating system and D.! data-ase environment )in&0 operating system and Sy-ase data-ase environment' Detection of the condition -efore patch installation *&tomatic -ack&p of the application program files and data-ase' It also s&pports f&nctions s&ch as patch installation( roll-ack for installation fail&re and patch &nloading'

1'! Directory Str&ct&re


The directory str&ct&re is given -elow'
Fig&re 1'1 Directory Str&ct&re

Patch Installation Disk Framework Developer Guide

Table 1.1 Directory str&ct&re description


Directory data etc5config Description The directory for placing the patch compression package' The config&ration file directory of the graphic patch installation disk framework2 definition of some constants re6&ired -y patch installation( some -asic information of the patch and so on' The descriptive file of the component patch installation and the descriptive file directory of patch compression package' The li-rary file directory of the graphic patch installation disk framework' The 7nglish and Chinese reso&rces in the G8I and the graphic reso&rce directory' The 7nglish and Chinese reso&rce directory of the component' The script template directory'

etc5package lireso&rce reso&rce5package scripts

Patch Installation Disk Framework Developer Guide

2 Making Graphic Patch Installation Disk


!'1 Config&ration Files #elating to /+
!'1'1 1verview
The config&ration file is the PatchInfo'0ml &nder the etc5config directory' The file descri-es the environment varia-les of the patch version( /+ version( and /+' The -ack&p data-ase and the file m&st -e replaced -y the macro in the /+' File Format:
<?xml version="1.0" encoding="iso-8859-1"?> <PatchIn o> <!ersion><"!ersion> <#e$endec%&n> <item><"item> <"#e$endec%&n> <'nv><"'nv> <(ac)*$+ile> <item><"item> <item><"item> <"(ac)*$+ile> <(ac)*$#(> <item><"item> <item><"item> <"(ac)*$#(> <,on ig- ile> <item><"item> <item><"item> <",on ig- ile> <c.stom'nv/gr> <"c.stom'nv/gr> <"PatchIn o>

Patch Installation Disk Framework Developer Guide

!'1'! Detailed Descriptive Information


PatchInfo! The root element of the config&ration file "ersion! It is optional' The version n&m-er of the patch9 the version n&m-er of the patch is SP:: -y defa&lt( if yo& do not fill in it' #$ample:
<!ersion>!0001008(00#0213P10<"!ersion>

Dependecy%n! It is mandatory' It is the dependency of the version( which is the version n&m-er of the /+ system that can install the patch' #$ample:
<#e$endec%&n> <item>!0001008(00#021<"item> <"#e$endec%&n>

#nv! It is mandatory' It is the environment varia-le of the /+' #$ample:


<'nv>400001&&5<"'nv>

&ack'pFile! It is optional' It is the /+ directory and file that needs -ack&p' The client installation mode -acks &p the client directory -y defa&lt' The server installation mode -acks &p the client and server directory -y defa&lt' /ote2 The directory or file m&st comply with the standard 7nglish directory'

Patch Installation Disk Framework Developer Guide

#$ample:
<(ac)*$+ile> <item>client<"item> <item>$ost-.$date-r.n.sh<"item> <"(ac)*$+ile>

&ack'pD&! It is optional' It is the /+ data-ase that needs the -ack&p' *ll the /+ data-ases are -acked &p -y defa&lt' This is not re6&ired for )in&0' #$ample:
<(ac)*$#(>

<item> (/3#(<"item> <item> Per #(<"item> <"(ac)*$#(>

(onfig)file! It is optional' It is the /+ file that m&st -e replaced -y the macro' The name of the config&ration file can incl&de wildcards s&ch as ;(<' The path of the directory file corresponds to the installation path of the /+' The =5> instead of =?> is &sed in the path' #$ample:
<,on ig- ile> <item>server"con "6.c g<"item> <item>server"con "snm$agent.c g<"item> <item>server"con "s%smoni"6<"item> <",on ig- ile>

*n entire e0ample of the config&ration file PatchInfo*$ml is as follows2


<?xml version="1.0" encoding="iso-8859-1"?> <PatchIn o> <!ersion>!0001008(00#0213P10<"!ersion> <#e$endec%&n> <item>!0001008(00#021<"item> <"#e$endec%&n> <'nv>400001&&5<"'nv> <(ac)*$+ile> <item>client<"item> <item>$ost-.$date-r.n.sh<"item> <"(ac)*$+ile> <(ac)*$#(>

Patch Installation Disk Framework Developer Guide

<item> (/3#(<"item> <item> Per #(<"item> <"(ac)*$#(> <,on ig- ile> <item>server"con "6.c g<"item> <item>server"con "snm$agent.c g<"item> <item>server"con "s%smoni"6<"item> <",on ig- ile> <"PatchIn o>

/ote2 The +acros are replaced in a file or script already e0isting in the installed directory' Installation Disk does not replace macros( if file si@e is greater than ! +.' custom#nvMgr! It is optional' The tag Ac&stom7nv+grB needs to -e added into patchInfo'0ml which contains the f&lly 6&alified class name implementing the C&stom7nv+anager interface' This interface will -e called -efore decompressing the patch d&ring patch installation' Description of the interface is as follows2
P.7lic Inter ace ,.stom'nv/anager 8 "6i i ret.rn val.e is alse9 $atch installdis) sho:s error and exits.

tr.e 9contin.e installation. 6"

P.7lic (oolean chec)'nv;<= >

If this tag is not config&red or any invalid inp&t is provided( then Patch Install Disk will not call the method check7nvCD' Instead it logs the error message and contin&es' Patch Install Disk provides interface to s&pport prod&ct environment checking d&ring patch installation' 70ample2 The Prod&ct will check for availa-le disk space Cincl&ding the space re6&ired for decompressingD'
<c.stom'nv/gr> com.h.a:ei.5est'nv <"c.stom'nv/gr> P.7lic ,lass 5est'nv im$lements ,.stom'nv/anager 8 P.7lic (oolean chec)'nv;< 8 "6 logic to chec) environment I s.ccess

1et.rn tr.e

Patch Installation Disk Framework Developer Guide

'lse 1et.rn 6" > > alse

/ote2 Disk space will -e checked d&ring patch &ninstallation to restore the application' If the re6&ired space is not availa-le an error message will -e shown'

!'! Config&ration Files relating to Patch Package


!'!'1 1verview
The descriptive file of the patch installation component is the PatchInstall'0ml &nder the etc?package directory' It descri-es the information needed for installing the patch for the component' The file format is as follows2
<?xml version="1.0" encoding="?(0@10"?> <$atchgro.$ name=" "> <$atch name=" " t%$e=" "> <chec)-$)g> <"chec)-$)g> <des#ir> <"des#ir> <r.n5ime><"r.n5ime> <d t3elect><"d t3elect> <$ac)age- ile><"$ac)age- ile> <de$endenc%><"de$endenc%> <extract- ile-siAe><"extract- ile-siAe> <con ig- ile> <item><"item> BBBBBB.. <"con ig- ile> <$reinstallscri$t> <item><"item> BBBBBB.. <"$reinstallscri$t> <$ostinstallscri$t> <item><"item> BBBBBB.. <"$ostinstallscri$t> <data7asetag><"data7asetag>

Patch Installation Disk Framework Developer Guide

<$red7scri$t> <item><"item> BBBBBB. <"$red7scri$t> <$ostd7scri$t> <item><"item> BBBBBB. <"$ostd7scri$t> <envitems><"envitems> <"$atch> <"$atchgro.$>

/ote2 The +acros are replaced in a file or script getting added with this patch installation '

!'!'! Detailed Descriptive Information


patchgroup name+, ,! It is mandatory' It is the patch package that contains the patches of m&ltiple components' The root element of the patch descriptive file m&st -e that element' Property

name It is mandatory' It is the name of the patch package' al&e

/one 70ample

Apatchgro&p nameEF.+S#11TGP*TC%FB A5patchgro&p B patch name+, , type+, ,! It is mandatory' It refers to the patch name and the installation mode' Property

name It is mandatory' It is the name of the patch' type It is mandatory' It is the type of the installed patch' The category of the component type is c&stomi@ed -y the installation disk maker -ased on act&al application' The patch is classified into ServerProgram( ClientProgram( and D.Script'

Patch Installation Disk Framework Developer Guide

al&e

/one 70ample

Apatch nameEF .+SPatch F typeEFServerProgramFB A5patchB check)pkg! Patch detection identifier Property

/one al&e

If the val&e is tr&e( detect whether the /+ system contains the component that needs to install the patch' If the val&e is false( perform the installation directly' 70ample

AcheckGpkgBtr&eA5checkGpkgB desDir! It is optional' It is the path for decompressing the patch package' If the val&e is n&ll( the program decompresses the patch package to the temporary directory of the operating system -y defa&lt' The =5> instead of =?> is &sed in the path' Path 70ample Property

/one al&e

AdesDirBD25n!"""5decompress A5desDirB run-ime! It is mandatory' It is the time re6&ired for installing the patch Cestimated timeD and is &sed for controlling the display of the installation progress -ar' If the adding is incorrect( the display of the progress -ar is inacc&rate' There are two forms of the time re6&ired -y installing the patch( installing single patch and m&ltiple patches' The graphic patch framework is prior to the installation of single patch' The config&ration of installing a single patch is as follows2 Property

/one

Patch Installation Disk Framework Developer Guide

al&e

The val&e of the r&ntime with the &nit of min&te 70ample

Ar&nTimeBHA5r&nTimeB The config&ration of installing m&ltiple patches is as follows2 Property

/one al&e ersion n&m-er I 2 I time Cmin&teD The config&ration is from top to -ottom in the config&ration file' Config&re the version n&m-er from small n&m-er to large n&m-er as shown in the following e0ample' Config&re other val&es according to the single patch' The single patch is the largest patch n&m-er of m&ltiple patches' 70ample

Ar&nTimeB AitemB !""#""$."!D"H1SP"12!$A5itemB AitemB !""#""$."!D"H1SP"$2!HA5itemB AitemB !""#""$."!D"H1SP112!$A5itemB AitemB !""#""$."!D"H1SP1!2!JA5itemB AitemB !""#""$."!D"H1SP1,2!!A5itemB A5r&nTimeB dft.elect! Property

/one al&e

Kes2 install9 no2 do not install' 70ample

AdftSelectByesA5dftSelectB package)file! It is mandatory' It is the compression package corresponding to the patch' 7ach patch can only correspond to one compression package' Property

/one

Patch Installation Disk Framework Developer Guide

al&e

The file name of the compression package 70ample

ApackageGfileB !""#""L."!D"J1SP"$GSG3in'Mar A5packageGfileB dependency! Patch dependency Property

/one al&e

The dependency among patches 70ample

AdependencyBamgJ"""v1r!,19amgJ"""v1r!,A5dependencyB e$tract)file)si/e! It is mandatory' It is the si@e of the decompressed package with the &nit of +' If there is no adding or the adding is incorrect( the M&dgment of the disk space is inacc&rate' Property

/one al&e

It is the si@e of the decompressed patch package with the &nit of +' 70ample

Ae0tractGfileGsi@eBH"A5e0tractGfileGsi@eB config)file! It is optional' It is the config&ration file or script that needs modification' These files contain the macro( which m&st -e replaced dynamically -y the patch installation disk framework' Collect the macro val&e -y interacting with the G8I' The path of the config&ration file corresponds to the path for decompressing the patch package' The =5> instead of =?> is &sed in the path' Property

/one al&e

It contains m&ltiple AitemB' 7ach AitemB corresponds to a file name Ccan incl&de wildcards s&ch as ;(<D'

Patch Installation Disk Framework Developer Guide

70ample

AconfigGfileB AitemB !""#""$."!D"H1SP1"GServer5data5imap5installscript5;A5itemB A5configGfileB /ote2 Installation Disk does not replace macros( if file si@e is greater than ! +.' preinstallscript! It is optional' It is the preNinstallation script( that is( the script e0ec&ted -efore patch installation' The val&e " is ret&rned if the script is e0ec&ted correctly and the val&e other than " is ret&rned if the script is wrongly e0ec&ted' The type of the ret&rn val&e of other scripts is the same as that in this script' Property

/one al&e

It contains m&ltiple AitemB( and each AitemB corresponds to a script name' 70ample

ApreinstallscriptB AitemB !""#""L."!D"J1SP"$GServer5-mspatch'-at OPI/SD.S8P8S7#P3DQ A5itemB A5preinstallscriptB /ote2


serverC!000100D(00#0513P08-3erver"7ms$atch.7at E8I43#(3*P*3'1PF#> - orce -s

Nforce

Ns

The script is the -atch processing file e0ec&ted for patch installation in the deployed patch package' The parameter Rforce means to install the patch -y force( and OPI/SD.S8P8S7#P3DQ is the password of the data-ase server' Client2 !""#""$."!D"H1SP1"GClient5-mspatch'-at Nforce Nc OPI/ST*))#11TQ OPI/ST*))#11TQ is the installation path of the /+ client' postinstallscript! It is optional' It is the post installation script( that is( the script e0ec&ted after the patch installation' The path of the config&ration file corresponds to the path for decompressing the patch package' The =5> instead of =?> is &sed in the path'

Patch Installation Disk Framework Developer Guide

Property

/one al&e

It is the same as installation the preNoperating system script' 70ample

ApostinstallscriptB AitemBdata5prod&ct5hgmp5s6l's6lA5itemB A5postinstallscript B data0asetag! It is optional' It is the data-ase the patch m&st create' 7ach patch can create m&ltiple data-ase( which are separated -y =9>' Property

/one al&e

It is the data-ase the patch m&st create' 7ach patch can create m&ltiple data-ase( which are separated -y =9>' 70ample

Adata-asetagBSec&rityD.9)ogD.9TopoD.A5data-asetagB pred0script! It is optional' It is the script e0ec&ted -efore creating the data-ase' It incl&des the data-ase script and the operating system script' The path of the config&ration file corresponds to the path for decompressing the patch package' The =5> instead of =?> is &sed in the path' Property

/one al&e

It contains m&ltiple AitemB and each AitemB corresponds to a script' 70ample

ApreD.ScriptB AitemBscript5shell5post5emf5schdGdataGinsertGsy-'s6lA5itemB A5preD.ScriptB postd0script! It is optional' It is the script e0ec&ted after creating the data-ase' It incl&des the data-ase script and the operating system script'

Patch Installation Disk Framework Developer Guide

The path of the config&ration file corresponds to the path for decompressing the patch package' The =5> instead of =?> is &sed in the path' Property

/one al&e

It is the same as the Apred-scriptB' 70ample

Apostd-scriptB AitemBscript5shell5post5imapGpostGmasterGcreateGmss6l's6lA5itemB Apostd-scriptB envitems! It is optional' It is the environment varia-le that m&st -e registered' Property

/one al&e

It contains m&ltiple AitemB elements( and each AitemB corresponds to an environment varia-le' The name property of the AitemB element The name of the environment varia-le The val&e of the AitemB element The val&e of the environment varia-le 70ample

AenvitemsB Aitem nameEFP*T%FBSI/ST*))#11T5-inA5itemB Aitem nameEFi+*P#11TFBSI/ST*))#11TA5itemB A5envitemsB

/ote2 The config&ration file can either -e &sed for patch package deployment or &sed for the deployment of m&ltiple patch packages' 7ach patch package corresponds to a config&ration item of the a-ove format' The com-ination of these config&ration items can -e the description file of an entire patch package' The format is given -elow'

<$atchgro.$ name=" (/31&&5-Patch ">

Patch Installation Disk Framework Developer Guide

<$atch name=" !000100D(00#0513P01" t%$e="3erverProgram "> <chec)-$)g> <"chec)-$)g> <des#ir> <"des#ir> <r.n5ime><"r.n5ime> <d t3elect> <"d t3elect> <$ac)age- ile> <"$ac)age- ile> <de$endenc%> <"de$endenc%> <extract- ile-siAe><"extract- ile-siAe> <con ig- ile><"con ig- ile> <$reinstallscri$t> <"$reinstallscri$t> <$ostinstallscri$t><"$ostinstallscri$t> <data7asetag><"data7asetag> <$red7scri$t><"$red7scri$t> <$ostd7scri$t><"$ostd7scri$t> <envitems><"envitems> <"$atch>

<$atch name=" !000100D(00#0513P00" t%$e=" 3erverProgram"> <chec)-$)g> <"chec)-$)g> <des#ir> <"des#ir> <r.n5ime><"r.n5ime> <d t3elect> <"d t3elect> <$ac)age- ile> <"$ac)age- ile> <de$endenc%> <"de$endenc%> <extract- ile-siAe><"extract- ile-siAe> <con ig- ile><"con ig- ile> <$reinstallscri$t> <"$reinstallscri$t> <$ostinstallscri$t><"$ostinstallscri$t> <data7asetag><"data7asetag> <$red7scri$t><"$red7scri$t> <$ostd7scri$t><"$ostd7scri$t> <envitems><"envitems> <"$atch> <"$atchgro.$>

Patch Installation Disk Framework Developer Guide

!', Config&ration File of the Graphic Patch Installation Disk Framework


!','1 1verview
The patch installation disk m&st know some file paths d&ring patch installation' The path config&ration information is in the patch'cfg of the etc5config directory'
GG!ersion con ig.re G +or client ,HI'45-!'13I&4-PI5J ="client"version"7msversionin o.c g G +or server 3'1!'1-!'13I&4-PI5J ="server"version"7msversionin o.c g ile $ath

(1I#2-)"#3.I%2)P4-5 is the file path of the client version information' .#3"#3)"#3.I%2)P4-5 is the file path of the server version information' The file name of the config&ration version information varies with the /+' 1ther information in the patch'cfg file does not change with the /+' /ote2 Press #nter -&tton twice after creating the ersion file and writing the version information to ens&re that there is the enter character after the version information'

!'T +acro Config&ration File


!'T'1 1verview
The macro config&ration file +acroFile'properties m&st -e config&red d&ring the config&ration of the patch package and the patch framework' The file is &nder the etc5config' The file records the macro that m&st -e replaced -y the /+ after the patch installation' The macro is the selfNdefined macro in the patch package' The file format is as follows2
E8/I,1&4I/'>=/acro!al.e

70amples2
E8I/IP4I/'-*,>=40000 E8Igent4ame>=i/IP34/PIgent

Patch Installation Disk Framework Developer Guide

E8Igent#esc>=i/IP 34/P Igent E8/oniProc4ame>=+or:ardIgent

If the common macro in the framework is &sed in the patch package( it can -e &sed directly' The common macros s&pported in the framework are listed as follows2 Table 1.2 Common +acros s&pported -y InstallDisk
+acro /ame OPI/S+DPIPQ OPI/SD.S7# 7#IPQ OPI/SD.S7# 7#/*+7Q OPI/SD.TKP7Q OPI/SD.P1#TQ OPI/SD.+SI/ST*))DI#Q OPI/SD.S8P8S7#Q OPI/SD.S8P8S7#P3DQ OPI/SD.S8P8S7#P3DD7SQ OPI/S/+SD.8S7#Q OPI/S/+SD.8S7#P3DQ OPI/S/+SD.8S7#P3DD7SQ OPI/ST*))#11TQ OPI/S)*/G8*G7Q OPI/SD.T11)SD))Q OPI/SC)I7/T)*/GQ OPI/SC)I7/TC18/T#KQ OPI/SS7# 7#)*/GQ OPI/SI+*P)*/GQ OPI/S%1ST/*+7Q +DP IP IP address of the data-ase server Data-ase service name Data-ase type Data-ase port n&m-er Installation root directory of the data-ase management software S&per &ser name of the data-ase Password of the data-ase s&per &ser 7ncrypted s&per &ser password 8ser name of the /!""" data-ase 8ser password of the /!""" data-ase 7ncrypted /!""" &ser password Installation directory lang&age Data-ase dynamic li-rary name Client installation lang&age Client installation co&ntry Server installation lang&age i+*P installation lang&age %ost name Definition

Patch Installation Disk Framework Developer Guide

6 (aution
,'1 8pdating ersion Information
3hen the patch installation is of server installation type( the version information &pdated -y the patch installation disk is the content in the -msversioninfo'cfg of the server5version5 directory' *s some of the /+ system versions are low( and there is no -msversioninfo'cfg file &nder the client directory' Check whether the version folder is &nder the client d&ring installation' If there is no version folder( copy the file &nder the directory to the client directory'

You might also like