bserdar / jcliff

Manage JBossAS 7/EAP6/Wildfly with modular configuration files from command line, puppet, ansible, chef, etc.
Other
42 stars 26 forks source link

cannot add xa datasouce from version jcliff-2.11.9-1.noarch #74

Closed ibaboo closed 6 years ago

ibaboo commented 6 years ago

Hi

Ever since I have updated jcliff to jcliff-2.11.9-1.noarch I cannot configure a jcliff DS. I get the following ERROR. 2018-05-23 15:43:19:0854: java.lang.RuntimeException: Operation failed:{"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-3" => "JBAS014688: Wrong type for value. Expected [EXPRESSION, STRING] but was LIST"}}

My puppet code

TestDS: jndi_name: 'java:/jboss/datasources/Test' pool_name: 'java:/jboss/datasources/Test' database_name: "%{hiera('testdbdev')}" port: '1433' server_name: "10.0.0.1" driver_name: 'mssql-jdbc4' check_valid_connection_sql: 'SELECT 1 FROM sysobjects' min_pool_size: '5' max_pool_size: '50' security_domain: 'testDS'

When puppet copies the jcliff file to the server the config files looks like this

{ "xadatasource" => { "TestDS" => { "enabled" => "true", "jndi-name" => "java:/jboss/datasources/Test", "pool-name" => "java:/jboss/datasources/Test", "driver-name" => "mssql-jdbc4", "check-valid-connection-sql" => "SELECT 1 FROM sysobjects", "min-pool-size" => "5", "max-pool-size" => "50", "security-domain" => "testDS", "xa-datasource-properties" => { "PortNumber" => { "value" => "1433" }, "DatabaseName" => { "value" => "testdbdev" }, "ServerName" => { "value" => "10.0.0.1" }, } } } }

Please assist.

bserdar commented 6 years ago

Could you manually run jcliff with just that file with -v flag? It'll print out lots of information, but might show what's wrong.

On Wed, May 23, 2018 at 7:51 AM, Isa notifications@github.com wrote:

Hi

Ever since I have updated jcliff to jcliff-2.11.9-1.noarch I cannot configure a jcliff DS. I get the following ERROR. 2018-05-23 15:43:19:0854: java.lang.RuntimeException: Operation failed:{"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-3" => "JBAS014688: Wrong type for value. Expected [EXPRESSION, STRING] but was LIST"}}

My puppet code ` TestDS: jndi_name: 'java:/jboss/datasources/Test' pool_name: 'java:/jboss/datasources/Test' database_name: "%{hiera('testdbdev')}" port: '1433' server_name: "10.0.0.1" driver_name: 'mssql-jdbc4' check_valid_connection_sql: 'SELECT 1 FROM sysobjects' min_pool_size: '5' max_pool_size: '50' security_domain: 'testDS'

` When puppet copies the jcliff file to the server the config files looks like this

{ "xadatasource" => { "TestDS" => { "enabled" => "true", "jndi-name" => "java:/jboss/datasources/Test", "pool-name" => "java:/jboss/datasources/Test", "driver-name" => "mssql-jdbc4", "check-valid-connection-sql" => "SELECT 1 FROM sysobjects", "min-pool-size" => "5", "max-pool-size" => "50", "security-domain" => "testDS", "xa-datasource-properties" => { "PortNumber" => { "value" => "1433" }, "DatabaseName" => { "value" => "testdbdev" }, "ServerName" => { "value" => "10.0.0.1" }, } } } }

Please assist.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/bserdar/jcliff/issues/74, or mute the thread https://github.com/notifications/unsubscribe-auth/ADgDDez7CvKGhwJxZ7dS6fN7fxaagPtcks5t1WlsgaJpZM4UKffe .

ibaboo commented 6 years ago

Hi @bserdar

Here is the output using the -v flag.

2018-05-24 08:25:33:0839: Setting ruledir to:/usr/share/jcliff-2.11.9/rules 2018-05-24 08:25:33:0840: Reading properties from file: /usr/share/jcliff-2.11.9/rules/rules 2018-05-24 08:25:33:0842: Reading properties from file: /usr/share/jcliff-2.11.9/rules/system-properties 2018-05-24 08:25:33:0843: Reading properties from file: /usr/share/jcliff-2.11.9/rules/path 2018-05-24 08:25:33:0844: Reading properties from file: /usr/share/jcliff-2.11.9/rules/ee 2018-05-24 08:25:33:0844: Reading properties from file: /usr/share/jcliff-2.11.9/rules/jmx 2018-05-24 08:25:33:0844: Reading properties from file: /usr/share/jcliff-2.11.9/rules/naming 2018-05-24 08:25:33:0845: Reading properties from file: /usr/share/jcliff-2.11.9/rules/threads 2018-05-24 08:25:33:0845: Reading properties from file: /usr/share/jcliff-2.11.9/rules/logging 2018-05-24 08:25:33:0846: Reading properties from file: /usr/share/jcliff-2.11.9/rules/jdbc-driver 2018-05-24 08:25:33:0846: Reading properties from file: /usr/share/jcliff-2.11.9/rules/security 2018-05-24 08:25:33:0847: Reading properties from file: /usr/share/jcliff-2.11.9/rules/datasource 2018-05-24 08:25:33:0847: Reading properties from file: /usr/share/jcliff-2.11.9/rules/xadatasource 2018-05-24 08:25:33:0847: Reading properties from file: /usr/share/jcliff-2.11.9/rules/standard-sockets 2018-05-24 08:25:33:0848: Reading properties from file: /usr/share/jcliff-2.11.9/rules/security-realms 2018-05-24 08:25:33:0848: Reading properties from file: /usr/share/jcliff-2.11.9/rules/web 2018-05-24 08:25:33:0849: Reading properties from file: /usr/share/jcliff-2.11.9/rules/webservices 2018-05-24 08:25:33:0849: Reading properties from file: /usr/share/jcliff-2.11.9/rules/jgroups 2018-05-24 08:25:33:0849: Reading properties from file: /usr/share/jcliff-2.11.9/rules/infinispan 2018-05-24 08:25:33:0850: Reading properties from file: /usr/share/jcliff-2.11.9/rules/scanner 2018-05-24 08:25:33:0850: Reading properties from file: /usr/share/jcliff-2.11.9/rules/extension 2018-05-24 08:25:33:0850: Reading properties from file: /usr/share/jcliff-2.11.9/rules/subsystem 2018-05-24 08:25:33:0850: Reading properties from file: /usr/share/jcliff-2.11.9/rules/remoting 2018-05-24 08:25:33:0851: Reading properties from file: /usr/share/jcliff-2.11.9/rules/osgi 2018-05-24 08:25:33:0851: Reading properties from file: /usr/share/jcliff-2.11.9/rules/messaging 2018-05-24 08:25:33:0851: Reading properties from file: /usr/share/jcliff-2.11.9/rules/mail 2018-05-24 08:25:33:0852: Reading properties from file: /usr/share/jcliff-2.11.9/rules/ejb3 2018-05-24 08:25:33:0852: Reading properties from file: /usr/share/jcliff-2.11.9/rules/resource-adapter 2018-05-24 08:25:33:0852: Reading properties from file: /usr/share/jcliff-2.11.9/rules/transactions 2018-05-24 08:25:33:0853: Reading properties from file: /usr/share/jcliff-2.11.9/rules/undertow 2018-05-24 08:25:33:0853: Reading properties from file: /usr/share/jcliff-2.11.9/rules/teiid 2018-05-24 08:25:33:0854: Reading properties from file: /usr/share/jcliff-2.11.9/rules/rbac 2018-05-24 08:25:33:0854: Jcliff version 2.11.9 running 2018-05-24 08:25:33:0855: Opening testds.conf 2018-05-24 08:25:33:0870: Processing xadatasource 2018-05-24 08:25:33:0870: Reading current status of xadatasource 2018-05-24 08:25:33:0871: /subsystem=datasources:read-children-resources(child-type=xa-data-source,recursive=true) 2018-05-24 08:25:33:0884: in file:/tmp/jcliff-in2836895415540889754.tmp true 2018-05-24 08:25:33:0885: out file:/tmp/jcliff-out603169648805082036.tmp true 2018-05-24 08:25:33:0885: err file:/tmp/jcliff-err1760414590797316283.tmp true 2018-05-24 08:25:33:0885: script file:/tmp/jcliff-script1963812141647999075.tmp true 2018-05-24 08:25:33:0885: args:/opt/jboss9/jboss/bin/jboss-cli.sh 2018-05-24 08:25:33:0885: args:--controller=172.28.102.42:9999 2018-05-24 08:25:33:0885: args:--connect 2018-05-24 08:25:33:0885: args:--file=/tmp/jcliff-in2836895415540889754.tmp 2018-05-24 08:25:33:0886: args:--timeout=50000 2018-05-24 08:25:33:0886: cmds:/subsystem=datasources:read-children-resources(child-type=xa-data-source,recursive=true) 2018-05-24 08:25:33:0886: Script file:/tmp/jcliff-script1963812141647999075.tmp true 2018-05-24 08:25:33:0886: In file:/tmp/jcliff-in2836895415540889754.tmp true 2018-05-24 08:25:35:0088: return Code has :0 2018-05-24 08:25:35:0088: stderr: 2018-05-24 08:25:35:0088: stdout:{ "outcome" => "success", "result" => {} } 2018-05-24 08:25:35:0089: Return:{ "outcome" => "success", "result" => {} } 2018-05-24 08:25:35:0090: Node from server:{} 2018-05-24 08:25:35:0090: After preprocessing:{"xadatasource" => {}} 2018-05-24 08:25:35:0091: Configuration node after preprocessing:{"xadatasource" => {"TestDS" => { "enabled" => "true", "jndi-name" => "java:/jboss/datasources/Test", "pool-name" => "java:/jboss/datasources/Test", "driver-name" => "mssql-jdbc4", "check-valid-connection-sql" => "SELECT 1 FROM sysobjects", "min-pool-size" => "50", "max-pool-size" => "200", "security-domain" => "testDS", "xa-datasource-properties" => { "DatabaseName" => {"value" => "testdbdev"}, "PortNumber" => {"value" => "1433"}, "ServerName" => {"value" => "10.0.0.1"} } }}} 2018-05-24 08:25:35:0093: computeDiff 2018-05-24 08:25:35:0094: Config path:/xadatasource value={"TestDS" => { "enabled" => "true", "jndi-name" => "java:/jboss/datasources/Test", "pool-name" => "java:/jboss/datasources/Test", "driver-name" => "mssql-jdbc4", "check-valid-connection-sql" => "SELECT 1 FROM sysobjects", "min-pool-size" => "50", "max-pool-size" => "200", "security-domain" => "testDS", "xa-datasource-properties" => { "DatabaseName" => {"value" => "testdbdev"}, "PortNumber" => {"value" => "1433"}, "ServerName" => {"value" => "10.0.0.1"} } }} 2018-05-24 08:25:35:0094: Config path:/xadatasource/TestDS value={ "enabled" => "true", "jndi-name" => "java:/jboss/datasources/Test", "pool-name" => "java:/jboss/datasources/Test", "driver-name" => "mssql-jdbc4", "check-valid-connection-sql" => "SELECT 1 FROM sysobjects", "min-pool-size" => "50", "max-pool-size" => "200", "security-domain" => "testDS", "xa-datasource-properties" => { "DatabaseName" => {"value" => "testdbdev"}, "PortNumber" => {"value" => "1433"}, "ServerName" => {"value" => "10.0.0.1"} } } 2018-05-24 08:25:35:0094: Config path:/xadatasource/TestDS/enabled value="true" 2018-05-24 08:25:35:0094: Config path:/xadatasource/TestDS/jndi-name value="java:/jboss/datasources/Test" 2018-05-24 08:25:35:0094: Config path:/xadatasource/TestDS/pool-name value="java:/jboss/datasources/Test" 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/driver-name value="mssql-jdbc4" 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/check-valid-connection-sql value="SELECT 1 FROM sysobjects" 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/min-pool-size value="50" 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/max-pool-size value="200" 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/security-domain value="testDS" 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/xa-datasource-properties value={ "DatabaseName" => {"value" => "testdbdev"}, "PortNumber" => {"value" => "1433"}, "ServerName" => {"value" => "10.0.0.1"} } 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/xa-datasource-properties/DatabaseName value={"value" => "testdbdev"} 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/xa-datasource-properties/DatabaseName/value value="testdbdev" 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/xa-datasource-properties/PortNumber value={"value" => "1433"} 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/xa-datasource-properties/PortNumber/value value="1433" 2018-05-24 08:25:35:0095: Config path:/xadatasource/TestDS/xa-datasource-properties/ServerName value={"value" => "10.0.0.1"} 2018-05-24 08:25:35:0096: Config path:/xadatasource/TestDS/xa-datasource-properties/ServerName/value value="10.0.0.1" 2018-05-24 08:25:35:0096: Server path:/xadatasource value={} 2018-05-24 08:25:35:0096: Processing path /xadatasource:OBJECT 2018-05-24 08:25:35:0096: Comparing for reorder: /xadatasource cfg:[TestDS] s:[] 2018-05-24 08:25:35:0097: Diff:add:/xadatasource/TestDS value={ "enabled" => "true", "jndi-name" => "java:/jboss/datasources/Test", "pool-name" => "java:/jboss/datasources/Test", "driver-name" => "mssql-jdbc4", "check-valid-connection-sql" => "SELECT 1 FROM sysobjects", "min-pool-size" => "50", "max-pool-size" => "200", "security-domain" => "testDS", "xa-datasource-properties" => { "DatabaseName" => {"value" => "testdbdev"}, "PortNumber" => {"value" => "1433"}, "ServerName" => {"value" => "10.0.0.1"} } } 2018-05-24 08:25:35:0097: Diff:add:/xadatasource/TestDS/enabled value="true" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/jndi-name value="java:/jboss/datasources/Test" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/pool-name value="java:/jboss/datasources/Test" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/driver-name value="mssql-jdbc4" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/check-valid-connection-sql value="SELECT 1 FROM sysobjects" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/min-pool-size value="50" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/max-pool-size value="200" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/security-domain value="testDS" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/xa-datasource-properties value={ "DatabaseName" => {"value" => "testdbdev"}, "PortNumber" => {"value" => "1433"}, "ServerName" => {"value" => "10.0.0.1"} } 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/xa-datasource-properties/DatabaseName value={"value" => "testdbdev"} 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/xa-datasource-properties/DatabaseName/value value="testdbdev" 2018-05-24 08:25:35:0098: Diff:add:/xadatasource/TestDS/xa-datasource-properties/PortNumber value={"value" => "1433"} 2018-05-24 08:25:35:0099: Diff:add:/xadatasource/TestDS/xa-datasource-properties/PortNumber/value value="1433" 2018-05-24 08:25:35:0099: Diff:add:/xadatasource/TestDS/xa-datasource-properties/ServerName value={"value" => "10.0.0.1"} 2018-05-24 08:25:35:0099: Diff:add:/xadatasource/TestDS/xa-datasource-properties/ServerName/value value="10.0.0.1" 2018-05-24 08:25:35:0101: Checking rule modify 2018-05-24 08:25:35:0101: Checking rule add 2018-05-24 08:25:35:0101: add will be run on add:/xadatasource/TestDS value={ "enabled" => "true", "jndi-name" => "java:/jboss/datasources/Test", "pool-name" => "java:/jboss/datasources/Test", "driver-name" => "mssql-jdbc4", "check-valid-connection-sql" => "SELECT 1 FROM sysobjects", "min-pool-size" => "50", "max-pool-size" => "200", "security-domain" => "testDS", "xa-datasource-properties" => { "DatabaseName" => {"value" => "testdbdev"}, "PortNumber" => {"value" => "1433"}, "ServerName" => {"value" => "10.0.0.1"} } } 2018-05-24 08:25:35:0102: run:xa-data-source add --name=TestDS --jndi-name="java:/jboss/datasources/Test" --driver-name="mssql-jdbc4" --xa-datasource-properties=[{DatabaseName="testdbdev"} ,{ServerName="10.0.0.1"} ,{PortNumber="1433"}] if result.value==false of /subsystem=datasources/xa-datasource=TestDS:read-resource xa-data-source enable --name=TestDS :reload 2018-05-24 08:25:35:0102: xa-data-source add --name=TestDS --jndi-name="java:/jboss/datasources/Test" --driver-name="mssql-jdbc4" --xa-datasource-properties=[{DatabaseName="testdbdev"} ,{ServerName="10.0.0.1"} ,{PortNumber="1433"}] if result.value==false of /subsystem=datasources/xa-datasource=TestDS:read-resource xa-data-source enable --name=TestDS :reload 2018-05-24 08:25:35:0106: in file:/tmp/jcliff-in6372330334354184144.tmp true 2018-05-24 08:25:35:0106: out file:/tmp/jcliff-out6229902964365459425.tmp true 2018-05-24 08:25:35:0107: err file:/tmp/jcliff-err9178773409945083868.tmp true 2018-05-24 08:25:35:0107: script file:/tmp/jcliff-script5875201469837708203.tmp true 2018-05-24 08:25:35:0107: args:/opt/jboss9/jboss/bin/jboss-cli.sh 2018-05-24 08:25:35:0107: args:--controller=172.28.102.42:9999 2018-05-24 08:25:35:0107: args:--connect 2018-05-24 08:25:35:0107: args:--file=/tmp/jcliff-in6372330334354184144.tmp 2018-05-24 08:25:35:0107: args:--timeout=50000 2018-05-24 08:25:35:0107: cmds:xa-data-source add --name=TestDS --jndi-name="java:/jboss/datasources/Test" --driver-name="mssql-jdbc4" --xa-datasource-properties=[{DatabaseName="testdbdev"} ,{ServerName="10.0.0.1"} ,{PortNumber="1433"}] 2018-05-24 08:25:35:0107: cmds:if result.value==false of /subsystem=datasources/xa-datasource=TestDS:read-resource 2018-05-24 08:25:35:0107: cmds:xa-data-source enable --name=TestDS 2018-05-24 08:25:35:0107: Script file:/tmp/jcliff-script5875201469837708203.tmp true 2018-05-24 08:25:35:0107: In file:/tmp/jcliff-in6372330334354184144.tmp true 2018-05-24 08:25:36:0081: return Code has :1 2018-05-24 08:25:36:0082: stderr: 2018-05-24 08:25:36:0082: stdout:{"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-3" => "JBAS014688: Wrong type for value. Expected [EXPRESSION, STRING] but was LIST"}} 2018-05-24 08:25:36:0083: Return:{"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-3" => "JBAS014688: Wrong type for value. Expected [EXPRESSION, STRING] but was LIST"}} 2018-05-24 08:25:36:0083: java.lang.RuntimeException: Operation failed:{"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-3" => "JBAS014688: Wrong type for value. Expected [EXPRESSION, STRING] but was LIST"}} at com.redhat.jcliff.Configurable$DefaultPostprocessor.process(Configurable.java:64) at com.redhat.jcliff.Ctx.runcmd(Ctx.java:105) at com.redhat.jcliff.Ctx.runQueuedCmds(Ctx.java:144) at com.redhat.jcliff.Main.main(Main.java:263)

ibaboo commented 6 years ago

I forgot to mention that if I have only any two xa-properties it works, when there is more than two this is when it fails.

E.g. 1 Works

"xa-datasource-properties" => {
    "DatabaseName" => {"value" => "testdbdev"},
    "PortNumber" => {"value" => "1433"}

Eg. 2 Works

"xa-datasource-properties" => {
    "DatabaseName" => {"value" => "testdbdev"},
    "ServerName" => {"value" => "10.0.0.1"}
bserdar commented 6 years ago

Which version of jboss are you using? It looks like flags changed at some point.

On Thu, May 24, 2018 at 1:17 AM, Isa notifications@github.com wrote:

I forgot to mention that if I have only any two xa-properties it works, when there is more than two this is when it fails.

E.g. 1

"xa-datasource-properties" => { "DatabaseName" => {"value" => "testdbdev"}, "PortNumber" => {"value" => "1433"}

Eg. 2 "DatabaseName" => { "value" => "testdbdev" }, "ServerName" => { "value" => "10.0.0.1" },

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/bserdar/jcliff/issues/74#issuecomment-391613993, or mute the thread https://github.com/notifications/unsubscribe-auth/ADgDDcvv8NEeaDfAJiKidDdg3fZrzATcks5t1l5zgaJpZM4UKffe .

ibaboo commented 6 years ago

This particular one was Version 6.4.19.GA. However it also fails in Jboss Version 7.1.1.GA

bserdar commented 6 years ago

Please replace /usr/share/jcliff.../rules/xadatasource with the one below, and try again. Let me know.

https://github.com/bserdar/jcliff/blob/fix-74/src/main/resources/xadatasource

ibaboo commented 6 years ago

I have tried the new xadatasource rule and get the following error.

2018-06-13 09:51:56:0260: java.lang.RuntimeException: Syntax error parsing (xa-datasource-properties/DatabaseName),(--xa-datasource-properties=DatabaseName=${value(xa-datasource-properties/DatabaseName/value) at com.redhat.jcliff.Configurable.split(Configurable.java:599) at com.redhat.jcliff.Configurable.func(Configurable.java:407) at com.redhat.jcliff.Configurable.resolve(Configurable.java:329) at com.redhat.jcliff.Configurable.getScript(Configurable.java:261) at com.redhat.jcliff.Main.execute(Main.java:396) at com.redhat.jcliff.Main.executeRules(Main.java:352) at com.redhat.jcliff.Main.main(Main.java:261)

bserdar commented 6 years ago

I fixed it, sorry I should've tested it again before pushing it. Can you get a new copy and run again?

ibaboo commented 6 years ago

That worked , thanks. Will you update the version and create an rpm?

bserdar commented 6 years ago

Pushed a new rpm. Thanlks.

On Thu, Jun 14, 2018 at 12:29 AM, Isa notifications@github.com wrote:

That worked , thanks. Will you update the version and create an rpm?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/bserdar/jcliff/issues/74#issuecomment-397185854, or mute the thread https://github.com/notifications/unsubscribe-auth/ADgDDSAq2qBl8B8aG1tiBOqOFlS5fZB5ks5t8gKygaJpZM4UKffe .