Run ODI configuration silently with Oracle RCU

I had to run the Oracle RCU (Repository Creation Utility) silently to create a Master and Work repository for Oracle Data Integrator recently. That proved quite the annoyance. I kept getting the following error:

Value of custom variable of type NUMBER can not be null.
RCU-6091:Component name/schema prefix validation failed.



After fighting with that for a couple of hours and exploring various ways of setting custom variables when running RCU silently, I finally came up with the solution. I'm a little annoyed it took me so long to figure out, but the solution was to use the same method as when supplying passwords for the tool.

When running the RCU silently you can supply the needed database and schema passwords using a simple text file like this:


./rcu -silent -createRepository -connectString -dbUser sys -dbRole sysdba -schemaPrefix DEV -component ODI -f < passwords.txt


Basically each line the the passwords.txt file corresponds to the answer of each promted question from the RCU tool. So a normal passwords.txt file would look like this:

DB_PASSWORD
SCHEMA_PASSWORD


But in the case of running the ODI Master and Work Repository creation you need to supply additional values, so the result looks similar to this:

DB_PASSWORD
SCHEMA_PASSWORD
001
SUPERVISOR_PASSWORD
D
001
WORKREPO
WORK_REPO_PASSWORD


Please note that in the above examples DB_PASSWORD, SCHEMA_PASSWORD, SUPERVISOR_PASSWORD and WORK_REPO_PASSWORD should be replaced by the corresponding values for your environment.

In the above the numbers 001 and 001 is the ID values of the MASTER_REPO and WORK_REPO.