well two parts to this answer:
1) You really can't (simple answer) call another blpckage from a blpackage.
2) Good news is that you don't need to. I will elaborate below:
I am assuming you are actually speaking of agent upgrades
create your two packages (though I would use a file deploy job) and their corresponding jobs then...
either have the jobs:
a) Execute against spart groups for their corresponding architecture
b) get called by an nsh script that determines which blpackage job to run against the target.
this make sense?
- You can create single package and include the both binaries say agent1.sh for sparc and agent2.sh for i386.
- Add external command and place below command:
if [ ??TARGET.OS_PLATFORM?? = 'i386' ] ; then
Create Deploy Job, and execute. Deploy will find out suitable agent installer base on logic and install it.
I’d use compliance here: two different packages, with two rules: one that evaluates whether to install the one (if it’s a SPARC), another rule for the other package (if OS_ARCHITECTURE == x86).
This way you don’t have to have a complex script.
I had included binaries for all architecture into one package and successfully deployed...but the issue is combining all architectures means the package footprint is twice the actual size expected and if rollbacks are involved it requires about 2GB free space, and most of our development environments do not have the space.
So it leaves me with fragment the package into smaller packages and deploy them based on architecture, which is an unintelligent way as i have to create smart groups and deploy packages accordingly to the arch.
I am looking at other options like NFS or use blcli_execute DeployJob
I like to simplify things. Why don't you just create Server Smart Groups that narrow down the different operating systems and architectures you have in your environment (can't be that many) and run your packages that match against those targets?
Not that simple Siddu, the issue is each of these agent packages are around 1GB each and clubbing them will cause diskspace issues while staging the software.
Ramesh: can you give us a sense of the kind of software you want to deploy?
Yes downright simple...this is what I have used..but was thinking of something more smarter
Can you elaborate on your suggestion.
"I’d use compliance here: two different packages, with two rules: one that evaluates whether to install the one (if it’s a SPARC), another rule for the other package (if OS_ARCHITECTURE == x86)."
Use the NSHScript to call different packages based on the logic OS_ARCHITECTURE