HCL-TECH-SOFTWARE / connections-automation

Deployment and upgrade automation scripts for HCL Connections 7.0 based on Ansible
Apache License 2.0
17 stars 32 forks source link

Oracle DB error while installing the HCL connections on RHEL 8 #135

Closed Praveenk89 closed 3 years ago

Praveenk89 commented 3 years ago

Hello Team,

We're having trouble installing HCL Connections 7.0 with Ansible on RHEL 8. We already have Oracle DB19, so we created all Connections DB on the server to avoid installing the Oracle server; instead, we are simply passing Oracle DB information in ansible script, but we are receiving the following Oracle DB error.

We have two servers, one for HCL Connections 7./HCL Docs and the other for HCL Component Pack.

TASK [connections : Encode DB Passwords] *** fatal: [devapps.test.com]: FAILED! => {"msg": "[{'app': 'activities', 'name': \"{{ activities_db.name | default('OPNACT') }}\", 'server': '{{ activities_db.server | default( db_hostname ) }}', 'port': '{{ activities_db.port | default( db_port ) }}', 'jdbc_file': '{{ activities_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ activities_db.type | default( db_type ) }}', 'user': '{{ activities_db.user | default( db_username ) }}', 'pw': '{{ activities_db.pw | default( __db_password ) }}'}, {'app': 'blogs', 'name': \"{{ blogs_db.name | default('BLOGS') }}\", 'server': '{{ blogs_db.server | default( db_hostname ) }}', 'port': '{{ blogs_db.port | default( db_port ) }}', 'jdbc_file': '{{ blogs_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ blogs_db.type | default( db_type ) }}', 'user': '{{ blogs_db.user | default( db_username ) }}', 'pw': '{{ blogs_db.pw | default( db_password ) }}'}, {'app': 'communities', 'name': \"{{ communities_db.name | default('SNCOMM') }}\", 'server': '{{ communities_db.server | default( db_hostname ) }}', 'port': '{{ communities_db.port | default( db_port ) }}', 'jdbc_file': '{{ communities_db.jdbc_file | default( __db_jdbc_file ) }}', 'type': '{{ communities_db.type | default( db_type ) }}', 'user': '{{ communities_db.user | default( db_username ) }}', 'pw': '{{ communities_db.pw | default( db_password ) }}'}, {'app': 'dogear', 'name': \"{{ dogear_db.name | default('DOGEAR') }}\", 'server': '{{ dogear_db.server | default( db_hostname ) }}', 'port': '{{ dogear_db.port | default( db_port ) }}', 'jdbc_file': '{{ dogear_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ dogear_db.type | default( db_type ) }}', 'user': '{{ dogear_db.user | default( db_username ) }}', 'pw': '{{ dogear_db.pw | default( __db_password ) }}'}, {'app': 'profiles', 'name': \"{{ profiles_db.name | default('PEOPLEDB') }}\", 'server': '{{ profiles_db.server | default( db_hostname ) }}', 'port': '{{ profiles_db.port | default( db_port ) }}', 'jdbc_file': '{{ profiles_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ profiles_db.type | default( db_type ) }}', 'user': '{{ profiles_db.user | default( db_username ) }}', 'pw': '{{ profiles_db.pw | default( db_password ) }}'}, {'app': 'wikis', 'name': \"{{ wikis_db.name | default('WIKIS') }}\", 'server': '{{ wikis_db.server | default( db_hostname ) }}', 'port': '{{ wikis_db.port | default( db_port ) }}', 'jdbc_file': '{{ wikis_db.jdbc_file | default( __db_jdbc_file ) }}', 'type': '{{ wikis_db.type | default( db_type ) }}', 'user': '{{ wikis_db.user | default( db_username ) }}', 'pw': '{{ wikis_db.pw | default( db_password ) }}'}, {'app': 'files', 'name': \"{{ files_db.name | default('FILES') }}\", 'server': '{{ files_db.server | default( db_hostname ) }}', 'port': '{{ files_db.port | default( db_port ) }}', 'jdbc_file': '{{ files_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ files_db.type | default( db_type ) }}', 'user': '{{ files_db.user | default( db_username ) }}', 'pw': '{{ files_db.pw | default( __db_password ) }}'}, {'app': 'forums', 'name': \"{{ forums_db.name | default('FORUM') }}\", 'server': '{{ forums_db.server | default( db_hostname ) }}', 'port': '{{ forums_db.port | default( db_port ) }}', 'jdbc_file': '{{ forums_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ forums_db.type | default( db_type ) }}', 'user': '{{ forums_db.user | default( db_username ) }}', 'pw': '{{ forums_db.pw | default( db_password ) }}'}, {'app': 'news', 'name': \"{{ homepage_db.name | default('HOMEPAGE') }}\", 'server': '{{ homepage_db.server | default( db_hostname ) }}', 'port': '{{ homepage_db.port | default( db_port ) }}', 'jdbc_file': '{{ homepage_db.jdbc_file | default( __db_jdbc_file ) }}', 'type': '{{ homepage_db.type | default( db_type ) }}', 'user': '{{ homepage_db.user | default( db_username ) }}', 'pw': '{{ homepage_db.pw | default( db_password ) }}'}, {'app': 'search', 'name': \"{{ homepage_db.name | default('HOMEPAGE') }}\", 'server': '{{ homepage_db.server | default( db_hostname ) }}', 'port': '{{ homepage_db.port | default( db_port ) }}', 'jdbc_file': '{{ homepage_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ homepage_db.type | default( db_type ) }}', 'user': '{{ homepage_db.user | default( db_username ) }}', 'pw': '{{ homepage_db.pw | default( __db_password ) }}'}, {'app': 'homepage', 'name': \"{{ homepage_db.name | default('HOMEPAGE') }}\", 'server': '{{ homepage_db.server | default( db_hostname ) }}', 'port': '{{ homepage_db.port | default( db_port ) }}', 'jdbc_file': '{{ homepage_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ homepage_db.type | default( db_type ) }}', 'user': '{{ homepage_db.user | default( db_username ) }}', 'pw': '{{ homepage_db.pw | default( db_password ) }}'}, {'app': 'metrics', 'name': \"{{ metrics_db.name | default('METRICS') }}\", 'server': '{{ metrics_db.server | default( db_hostname ) }}', 'port': '{{ metrics_db.port | default( db_port ) }}', 'jdbc_file': '{{ metrics_db.jdbc_file | default( __db_jdbc_file ) }}', 'type': '{{ metrics_db.type | default( db_type ) }}', 'user': '{{ metrics_db.user | default( db_username ) }}', 'pw': '{{ metrics_db.pw | default( db_password ) }}'}, {'app': 'mobile', 'name': \"{{ mobile_db.name | default('MOBILE') }}\", 'server': '{{ mobile_db.server | default( db_hostname ) }}', 'port': '{{ mobile_db.port | default( db_port ) }}', 'jdbc_file': '{{ mobile_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ mobile_db.type | default( db_type ) }}', 'user': '{{ mobile_db.user | default( db_username ) }}', 'pw': '{{ mobile_db.pw | default( __db_password ) }}'}, {'app': 'pushNotification', 'name': \"{{ push_db.name | default('PNS') }}\", 'server': '{{ push_db.server | default( db_hostname ) }}', 'port': '{{ push_db.port | default( db_port ) }}', 'jdbc_file': '{{ push_db.jdbc_file | default( db_jdbc_file ) }}', 'type': '{{ push_db.type | default( db_type ) }}', 'user': '{{ push_db.user | default( db_username ) }}', 'pw': '{{ push_db.pw | default( db_password ) }}'}, {'app': 'icec', 'name': \"{{ icec_db.name | default('XCC') }}\", 'server': '{{ icec_db.server | default( db_hostname ) }}', 'port': '{{ icec_db.port | default( db_port ) }}', 'jdbc_file': '{{ icec_db.jdbc_file | default( __db_jdbc_file ) }}', 'type': '{{ icec_db.type | default( db_type ) }}', 'user': '{{ icec_db.user | default( db_username ) }}', 'pw': '{{ icec_db.pw | default( db_password ) }}'}, {'app': 'ic360', 'name': \"{{ ic360_db.name | default('ESSAPPS') }}\", 'server': '{{ ic360_db.server | default( db_hostname ) }}', 'port': '{{ ic_db.port | default( db_port ) }}', 'jdbc_file': '{{ ic360_db.jdbc_file | default( __db_jdbc_file ) }}', 'type': '{{ ic360_db.type | default( db_type ) }}', 'user': '{{ ic360_db.user | default( db_username ) }}', 'pw': '{{ ic360_db.pw | default( __db_password ) }}'}]: {{ db_hostname }}: {{ hostvars[groups['db_servers'][0]]['inventory_hostname'] }}: list object has no element 0"}

PLAY RECAP ***** devapps.test.com : ok=169 changed=70 unreachable=0 failed=1 skipped=51 rescued=0 ignored=9 kbclusterdev.test.com : ok=19 changed=3 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0

stoeps13 commented 3 years ago

Have you defined a database server?

hostvars[groups['db_servers'][0]]['inventory_hostname'] }}: list object has no element 0"}

Looks like you haven't. I think you need to edit the scripts so that the client stuff and so on for DB access is generated, but the database creation step get skipped.

Check the code!

when:
    - not migrations_already_done.stat.exists

means that when the variable migration_already_done exists will skip the database creation step, but there are more tasks which drop tables and databases too. So to be on the save side, I would review https://github.com/HCL-TECH-SOFTWARE/connections-automation/blob/c9297a53dab06ea1d822952c4605419251f453f1/roles/hcl/connections-wizards/tasks/setup_connections_wizards_oracle.yml and adjust for your special case.