Skip to content

ODI 12.2.1.3 domain creation missing credentials #381

@53d117460ec63d70

Description

@53d117460ec63d70

Similar to #262 (comment) the model needs to support Credential creation for ODI domain builds:

####<May 30, 2019 4:06:13 PM> <INFO> <DomainCreator> <__create_domain_with_select_template> <WLSDPLY-12206> <Closing templates for domain odi_discovered>
com.oracle.cie.domain.script.ScriptException: 60456: Invalid or missing credentials configuration.
60456: The credentials configuration in your domain is invalid.
60456: Correct the configuration.
64014: The required property is missing.
64014: Invalid property "Username" of Credential: value "" is invalid. The property value is required.
64014: Provide property value.

The model I am using to test:

domainInfo:
    AdminUserName: weblogic
    AdminPassword: welcome1
    ServerStartMode: prod
resources:
    JDBCSystemResource:
        WLSSchemaDataSource:
            DescriptorFileName: 'jdbc/WLSSchemaDataSource-jdbc.xml'
            JdbcResource:
                JDBCConnectionPoolParams:
                    TestTableName: SQL ISVALID
                    MaxCapacity: 75
                JDBCDataSourceParams:
                    JNDIName: jdbc/WLSSchemaDataSource
                JDBCDriverParams:
                    URL: 'jdbc:oracle:thin:@db:1521/MYDB'
                    PasswordEncrypted: 'welcome1'
                    DriverName: oracle.jdbc.OracleDriver
                    Properties:
                        user:
                            Value: ROB_WLS_RUNTIME
        LocalSvcTblDataSource:
            Target: AdminServer
            DescriptorFileName: 'jdbc/LocalSvcTblDataSource-jdbc.xml'
            JdbcResource:
                JDBCConnectionPoolParams:
                    InitialCapacity: 0
                    CapacityIncrement: 1
                    TestConnectionsOnReserve: true
                    ConnectionCreationRetryFrequencySeconds: 10
                    TestTableName: SQL ISVALID
                    TestFrequencySeconds: 300
                    SecondsToTrustAnIdlePoolConnection: 0
                    MaxCapacity: 200
                JDBCDataSourceParams:
                    JNDIName: jdbc/LocalSvcTblDataSource
                JDBCDriverParams:
                    URL: 'jdbc:oracle:thin:@db:1521/MYDB'
                    PasswordEncrypted: 'welcome1'
                    DriverName: oracle.jdbc.OracleDriver
                    Properties:
                        user:
                            Value: ROB_STB
                        oracle.net.CONNECT_TIMEOUT:
                            Value: 10000
                        SendStreamAsBlob:
                            Value: true
                        weblogic.jdbc.crossPartitionEnabled:
                            Value: true
        'opss-data-source':
            Target: 'ODI_server1,AdminServer'
            DescriptorFileName: 'jdbc/opss-datasource-jdbc.xml'
            JdbcResource:
                JDBCConnectionPoolParams:
                    TestTableName: SQL ISVALID
                JDBCDataSourceParams:
                    JNDIName: jdbc/OpssDataSource
                JDBCDriverParams:
                    URL: 'jdbc:oracle:thin:@db:1521/MYDB'
                    PasswordEncrypted: 'welcome1'
                    DriverName: oracle.jdbc.OracleDriver
                    Properties:
                        user:
                            Value: ROB_OPSS
        'opss-audit-viewDS':
            Target: 'AdminServer,ODI_server1'
            DescriptorFileName: 'jdbc/opss-auditview-jdbc.xml'
            JdbcResource:
                JDBCConnectionPoolParams:
                    TestTableName: SQL ISVALID
                JDBCDataSourceParams:
                    JNDIName: jdbc/AuditViewDataSource
                JDBCDriverParams:
                    URL: 'jdbc:oracle:thin:@db:1521/MYDB'
                    PasswordEncrypted: 'welcome1'
                    DriverName: oracle.jdbc.OracleDriver
                    Properties:
                        user:
                            Value: ROB_IAU_VIEWER
        'opss-audit-DBDS':
            Target: 'ODI_server1,AdminServer'
            DescriptorFileName: 'jdbc/opss-audit-jdbc.xml'
            JdbcResource:
                JDBCConnectionPoolParams:
                    TestTableName: SQL ISVALID
                JDBCDataSourceParams:
                    JNDIName: jdbc/AuditAppendDataSource
                JDBCDriverParams:
                    URL: 'jdbc:oracle:thin:@db:1521/MYDB'
                    PasswordEncrypted: 'welcome1'
                    DriverName: oracle.jdbc.OracleDriver
                    Properties:
                        user:
                            Value: ROB_IAU_APPEND
        odiMasterRepository:
            Target: ODI_server1
            DescriptorFileName: 'jdbc/jdbc_odiMasterRepository-jdbc.xml'
            JdbcResource:
                JDBCConnectionPoolParams:
                    TestTableName: SNP_LOC_REP
                JDBCDataSourceParams:
                    GlobalTransactionsProtocol: OnePhaseCommit
                    JNDIName: jdbc/odiMasterRepository
                JDBCDriverParams:
                    URL: 'jdbc:oracle:thin:@db:1521/MYDB'
                    PasswordEncrypted: 'welcome1'
                    DriverName: oracle.jdbc.OracleDriver
                    Properties:
                        user:
                            Value: ROB_ODI_REPO

The typedef file:

{
    "copyright": "Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.",
    "license": "The Universal Permissive License (UPL), Version 1.0",
    "name": "WLS",
    "description": "WLS type domain definitions",
    "versions": {
        "10.3.6": "WLS_11G",
        "12.1.1": "WLS_11G",
        "12.1.2": "WLS_12CR1",
        "12.1.3": "WLS_12CR1",
        "12.2.1": "WLS_12CR2",
        "19.1":   "WLS_19CR1"
    },
    "definitions": {
        "WLS_11G": {
            "baseTemplate": "@@WL_HOME@@/common/templates/domains/wls.jar",
            "extensionTemplates": [ ],
            "customExtensionTemplates": [ ],
            "serverGroupsToTarget": [ ],
            "rcuSchemas": [ ]
        },
        "WLS_12CR1": {
            "baseTemplate": "@@WL_HOME@@/common/templates/wls/wls.jar",
            "extensionTemplates": [ ],
            "customExtensionTemplates": [ ],
            "serverGroupsToTarget": [ ],
            "rcuSchemas": [ ]
        },
        "WLS_12CR2": {
            "baseTemplate": "Basic WebLogic Server Domain",
            "extensionTemplates": [
                "Oracle Data Integrator - Agent"
            ],
            "customExtensionTemplates": [ ],
            "serverGroupsToTarget": [ ],
            "rcuSchemas": [ ]
        },
        "WLS_19CR1": {
            "baseTemplate": "Basic WebLogic Server Domain",
            "extensionTemplates": [ ],
            "customExtensionTemplates": [ ],
            "serverGroupsToTarget": [ ],
            "rcuSchemas": [ ]
        }
    }
}

After extending the template the WLST to create the credential is:

cd('/Credential/TargetStore/oracle.odi.credmap/TargetKey/SUPERVISOR')
create('c','Credential')
cd('Credential')
set('Username','SUPERVISOR')
set('Password','welcome1')

It would be useful to have a patch functionality similar to the model filters where one could run an arbitrary piece of WLST (like that given above) at various points in the create process (pre extend, post extend, etc). This would allow the user to customize their WLS domain without WDT having to support the desired feature.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions