A few examples may help in mastering command ODSND.
In all examples the targets systems (as defined through command ODSYS) are assumed to be SYSTEM1, SYSTEM2 and SYSTEM3.
1- Distributing source members
We want to distribute a new version of some programs and recompile such programs.
- The sources to be updated are PGMA and PGMB in MYSRCLIB/QRPGLESRC.
- Following this update, command MYLIB/COMPILE must be run. Such a command is already available on all target systems.
ODSND SYSTEMS(SYSTEM1 SYSTEM2 SYSTEM3) |
LIBOBJ((QRPGLESRC *FILE MYSRCLIB (PGMA PGMB))) |
ENDCMD('mylib/compile') |
2- Distributing a set of objects
We want to distribute all library DEPO programs having names starting by "WH":
ODSND SYSTEMS(SYSTEM1 SYSTEM2 SYSTEM3) |
LIBOBJ((WH* *PGM DEPO)) |
3- Distributing a set of IFS objects
We want to distribute all IFS objects in directory /depo/html/ having names starting by "wh":
ODSND SYSTEMS(SYSTEM1 SYSTEM2 SYSTEM3) |
IFSOBJ('/depo/html/wh*') |
4- Distributing a library
We want to distribute a new version of library MMAIL.
We also want to do the following on each target system:
- Delete library MMAIL, if already installed, before restoring the new version
- After restoring the new version, run the appropriate REXX procedure that completes the installation.
ODSND SYSTEMS(SYSTEM1 SYSTEM2 SYSTEM3) |
LIBOBJ((MMAIL *LIB QSYS)) |
STRCMD('dltlib mmail') |
ENDCMD('strrexprc install srcfile(mmail/qrexsrc)') |
5- Updating an HTTP instance
We want to distribute to SYSTEM2 an update of the configuration file for the HTTP instance COMPANY.
We also want to do the following on SYSTEM2:
- Restart the HTTP instance COMPANY, as soon as the configuration file has been updated.
- Have that done not immediately, but at hours 11:30 pm.
ODSND SYSTEMS(SYSTEM2) |
SCDTIME(233000) |
IFSOBJ('/www/company/conf/httpd.conf') |
PMTCMD(STRTCPSVR SERVER(*HTTP) RESTART(*HTTP) HTTPSVR(COMPANY)) |
PMTCMDEXEC(*END) |
|