VooDoo
VooDoo is a command line application to help automate some PeopleSoft administration activities that are typically performed locally.
Why?
PeopleSoft installation and administration is tedious. Migrating projects, generating compare reports, and running SQR's locally is a pain.
VooDoo alleviates some of this by providing a simple command line interface for interacting with your local PeopleTools installation using predefined settings for each of your environments. For example, migrating a project between two environments using VooDoo is as simple as issuing the following command:
C:\> voodoo migrate TEST_PROJECT HRDEV HRTEST
Features include:
- Generate HTML compare reports for projects
- Migrate projects between databases
- Build project definitions
- Archive project to file
- Execute Application Engine programs locally
- Execute SQR's locally
Super. What are the requirements?
In order to run VooDoo, you'll first need the following:
- Ruby 1.9.2
- Local installation of PeopleSoft Application Designer, DataMover, SQR, Appengine (developed and tested using 8.49)
- Windows XP or higher (Developed using Windows 7, tested on XP)
- PeopleSoft Environments running on Oracle Database
Ok, done. How do I use it?
VooDoo is packaged as a ruby gem, and can be installed via the following command:
C:\> gem install ps-voodoo
Once installed, you'll first need to setup the global configuration:
C:\>voodoo config
### Global Configuration Settings ###
Local tools directory: C:\psoft\pt84927 # Set to the root of your tools installation
Default output directory for migration data: X:\output # Base directory for output
Next you'll want to add a few environments:
C:\>voodoo add VDDEV
### Appdesigner/Datamover/AppEngine Settings ###
Database type: |ORACLE| ORACLE # Default is Oracle; no other databases supported currently
Application username: VD1 # Specify the application username for use with Application Designer
Would you like to archive migration output files for this environment? (y/n) n
### SQR Settings ###
Database username: |sysadm| sysadm # Username used when running SQR's; default is sysadm
PS_HOME directory: V:\VDDEV # Base directory to use when looking for the SQR bin
C:\>voodoo add VDTEST
### Appdesigner/Datamover/AppEngine Settings ###
Database type: |ORACLE| ORACLE
Application username: VD1
Would you like to archive migration output files for this environment? (y/n) y
Archive destination: X:\archive # Setting this option allows you to copy migration output from
# the default output directory to an archive directory
### SQR Settings ###
Database username: |sysadm|
PS_HOME directory: V:\VDTEST
To run a compare report:
C:\>voodoo compare COMPARE_TEST VDDEV VDTEST
Application password for VDDEV: **********
Application password for VDTEST: **********
Name for output folder: VOODOO_TEST
07/18/2011 13:09:54: Creating compare reports for SCRIPTING_TEST between FNDEV and FNSPTB
If successful, the generated HTML output of the compare report will be opened in your default browser. To see what else you can do, run:
C:\>voodoo help
NAME:
Voodoo
DESCRIPTION:
Black Magic Utility for PeopleSoft Administration
COMMANDS:
add adds an environment to the configuration file
archive copies a project to file from the specified environment
build builds a project definition in the specified environment
compare create a compare report for the specified project
config create global configuration settings
help Display global or [command] help documentation.
list Outputs a list of configured environments
migrate migrates a project between environments
remove removes an environment from the configuration file
run appengine runs an appengine against the specified environment
run sqr runs the specified sqr locally
show shows configuration details for an environment
template datafix creates a datafix folder with template files
GLOBAL OPTIONS:
-h, --help
Display help documentation
-v, --version
Display version information
-t, --trace
Display backtrace when an error occurs
Sounds too easy. How does it work?
It's actually pretty simple. Global and environment configuration data is stored in YAML files under the .voodoo folder in the user's HOME directory. When commands are issued to VooDoo, it uses the environment configuration information to pass command line arguments to the local executable.
In some situations the Windows registry is updated to set options that cannot be passed via the command line (project build output destinations, datamover output destinations).
Who wrote this thing?
Original author: JR Bing
License
(The MIT License)
Copyright (c) 2011 JR Bing
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.