After discovering your modules I came across what appears to be an issue if I want to use a bequeathed connection to the DB (e.g. $ sqlplus / as sysdba). I was using your oracle_role module for testing but a quick check seems to show that the code is the same in modules that connect to a database.
First, here is the relevant information from my db_definition_file that I am reading:
Change service_name = dict(required=True), to service_name = dict(required=False),
Added/Changed the following in main:
try:
if (not user and not password and not service_name): # Assuming that ORACLE_SID environment variable is set and this is a bequeath connection
if mode == 'sysdba':
conn = cx_Oracle.connect(mode=cx_Oracle.SYSDBA)
else:
conn = cx_Oracle.connect()
elif (not user and not password ): # If neither user or password is supplied, the use of an oracle wallet is assumed
I'd like to propose this change be propagated to all modules where connections are made to the DB. I can proceed to make the changes but wanted to approach you first in case I'm missing something obvious that you ran into in development.
After discovering your modules I came across what appears to be an issue if I want to use a bequeathed connection to the DB (e.g.
$ sqlplus / as sysdba
). I was using youroracle_role
module for testing but a quick check seems to show that the code is the same in modules that connect to a database.First, here is the relevant information from my
db_definition_file
that I am reading:Here is the contents of my playbook currently. You'll notice I am not specifying service, username, or password
I modified the
oracle_role
module in 2 spots:service_name = dict(required=True),
toservice_name = dict(required=False),
I'd like to propose this change be propagated to all modules where connections are made to the DB. I can proceed to make the changes but wanted to approach you first in case I'm missing something obvious that you ran into in development.