Commit d51e2b65 authored by iSergio's avatar iSergio
Browse files

Add datasource configuration

parent 12e9c0c1
Loading
Loading
Loading
Loading
+86 −0
Original line number Diff line number Diff line
@@ -122,3 +122,89 @@ service as7-standalone restart
align_left "$DOTSTRING" "Add PostgreSQL JDBC Driver"
result=`jboss-cli.sh --connect --commands="/subsystem=datasources/jdbc-driver=postgresql:add(driver-name=postgresql, driver-module-name=org.postgresql, driver-xa-datasource-class-name=org.postgresql.xa.PGXADataSource)"` &>/dev/null
align_echo $? $result

# Remove ExampleDS datasource
align_left "$DOTSTRING" "Remove ExampleDS datasource"
result=`jboss-cli.sh --connect --commands="/subsystem=datasources/data-source=ExampleDS:remove()"` &>/dev/null
align_echo $? $result

echo "Begin configure encrypted password's"
for ((i = 0; i < ${#DS_POOL_NAMES[@]}; i++)); do
    # Encript passwords for datasources
    encrypted=`java -classpath ${ENCRYPT_CLASS_PATH} org.picketbox.datasource.security.SecureIdentityLoginModule "${DS_PASSWORDS[$i]}"`
    encrypted=(${encrypted// / });
    encrypted=${encrypted[2]}
    align_left "$DOTSTRING" "${DS_USERS[$i]}"
    result=`jboss-cli.sh --connect --commands="batch,
        /subsystem=security/security-domain=encrypted_pass_$i:add(cache-type=default),
        /subsystem=security/security-domain=encrypted_pass_$i/authentication=classic:add(),
        /subsystem=security/security-domain=encrypted_pass_$i/authentication=classic/login-module=postgres_login_module:add(code=SecureIdentity, flag=required,module-options=[username="${DS_USERS[$i]}", password="$encrypted"]),
        /profile=full-ha/subsystem=security/security-domain=encrypted_pass_$i:add(cache-type=default),
        /profile=full-ha/subsystem=security/security-domain=encrypted_pass_$i/authentication=classic:add(),
        /profile=full-ha/subsystem=security/security-domain=encrypted_pass_$i/authentication=classic/login-module=postgres_login_module:add(code=SecureIdentity, flag=required,module-options=[username="${DS_USERS[$i]}", password="$encrypted"]),
        run-batch"` &>/dev/null
    align_echo $? $result
done

echo "Begin configure DataSource's"
for ((i = 0; i < ${#DS_POOL_NAMES[@]}; i++)); do
    # Add datasources from matrix
    min_pool_size=1
    max_pool_size=25
    align_left "$DOTSTRING" "${DS_POOL_NAMES[$i]}"
    result=`jboss-cli.sh --connect --commands="batch,
    /subsystem=datasources/data-source=\"${DS_POOL_NAMES[$i]}\":add(
        jndi-name=\"${DS_JNDI_NAMES[$i]}\",
        connection-url=\"${DS_CONNECTION_URLS[$i]}\",
        driver-class=org.postgresql.Driver,
        driver-name=postgresql,
        min-pool-size=$min_pool_size,
        max-pool-size=$max_pool_size,
        enabled=true,
        use-java-context=true,
        security-domain=encrypted_pass_$i,
        pool-prefill=false,
        pool-use-strict-min=true,
        allow-multiple-users=true,
        check-valid-connection-sql=\"SELECT 1\",
        validate-on-match=true,
        background-validation-millis=1,
        background-validation=true
        ),
    /profile=full-ha/subsystem=datasources/data-source=\"${DS_POOL_NAMES[$i]}\":add(
        jndi-name=\"${DS_JNDI_NAMES[$i]}\",
        connection-url=\"${DS_CONNECTION_URLS[$i]}\",
        driver-class=org.postgresql.Driver,
        driver-name=postgresql,
        min-pool-size=$min_pool_size,
        max-pool-size=$max_pool_size,
        enabled=true,
        use-java-context=true,
        security-domain=encrypted_pass_$i,
        pool-prefill=false,
        pool-use-strict-min=true,
        allow-multiple-users=true,
        check-valid-connection-sql=\"SELECT 1\",
        validate-on-match=true,
        background-validation-millis=1,
        background-validation=true
        ),
    run-batch"` &>/dev/null
    align_echo $? $result
done

# Set properties for load-demo application, use for debug
align_left "$DOTSTRING" "Configure global system-properties"
result=`jboss-cli.sh --connect --commands="batch,
    /system-property=org.apache.tomcat.util.ENABLE_MODELER:add(value=true),
    /system-property=org.apache.coyote.http11.Http11Protocol.COMPRESSION:add(value=on),
    /system-property=org.apache.coyote.http11.Http11Protocol.COMPRESSION_MIME_TYPES:add(value=\"text/javascript,text/css,text/html\"),
    /system-property=org.apache.catalina.connector.URI_ENCODING:add(value=UTF-8),
    /system-property=org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING:add(value=true),
    /system-property=org.otd414.security.null_user_restrict:add(value=false),
    /system-property=org.otd414.security.dont_create_views:add(value=false),
    /system-property=org.otd414.servername:add(value=jboss.7.2),
    run-batch"` &>/dev/null
align_echo $? $result

service as7-standalone restart