Tuesday, February 5, 2013

Scripted RPD deployments using UDML and WLST

Automating the RPD deployment in OBIEE 10g was as simple as doing an SCP of the RPD to the OBIEE server, and then bounce the processes. With OBIEE 11g, RPD deployments are now handled through Weblogic, so we need to take some additional steps. Luckily these can be easily scripted thanks to WLST.

After the jump is a script which can be used to do OBIEE 11g RPD deployments. This script assumes you have setup ssh keys on the various servers so you can login without typing a password (http://www.linuxproblem.org/art_9.html).

At a high level, the script will:
  • Apply a custom UDML file to your RPD.
  • Remotely connect to the destination, and SCP the RPD file.
  • Clean up the destination repository directory to archive all but the last three RPD files
    • This is important, as each deployment creates a new RPD (numbering from 001, 002, 003, etc). The directory can fill up quickly with lots of deployments.
  • Call WLST with a custom python script to:
    • Perform a lock
    • Deploy the RPD
    • Commit the changes
    • Restart the BI server
We had an additional requirement to change the RPD password in an automated fashion for our QA server. So that is what is going on in the if [ "$1" = "QA" ] section of code. Right now, the new password is hardcoded in the script, but this can easily be changed to be an optional parameter of the script itself.

Click me to view deployRPD.sh

Click me to view the wlstDeployRPD.py file

1 comment:

  1. Hi Ben nice blog but How to deploy RPD in windows environment