You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A common use case for Arquillian and Byteman is to have a single client interacting with two or more servers, where:
the Byteman agent is installed on each server (and possibly the client)
rules deployed to the servers only (or to both client and servers)
the test runs on the client
The current version of Arquillian Byteman extension does not handle this case,as the Byteman configuration allows configuration of a single clientAgentPort and a single containerAgentPort. In other words, the test configuration is limited to a client interacting with a single container. This is my understanding, in any case.
I'm currently trying to think of a simple way to fix this, but it's complicated by the fact that agents can be auto-installed or not, containers may be remote or managed, and enough information needs to be provided to enable the generation of the correct set of ExecContexts which are used by the RuleInstaller to communicate with the various agents.
One starting point might be to allow a user to specify a simple list of agent ports via a new element in the Byteman configuration schema. Or more completely to specify a new XML element "agent" with attributes host, port and auto-install flag which are children of an "agents" element so that each agent can be configured separately. I think the latter would allow more precise configuration possibilities.
I'll try and set up a PR for this in the near future. Any comments appreciated.
NOTE: just realised that the Byteman configuration is provided as an extension configuration within arquillian.xml, so the latter configuration option involving adding new XML elements is probably not viable; some form of String will need to be used.
The text was updated successfully, but these errors were encountered:
This feature would be nice. Currently I need to managed multiple containers manually by adding the byteman command line arguments as part of the jvmArgs of particular app server.
Regarding the configuration. I've never tried to hook such thing with Arquillian but would not be possible to attach those parameters for particular container directly? Instead of
A common use case for Arquillian and Byteman is to have a single client interacting with two or more servers, where:
The current version of Arquillian Byteman extension does not handle this case,as the Byteman configuration allows configuration of a single clientAgentPort and a single containerAgentPort. In other words, the test configuration is limited to a client interacting with a single container. This is my understanding, in any case.
I'm currently trying to think of a simple way to fix this, but it's complicated by the fact that agents can be auto-installed or not, containers may be remote or managed, and enough information needs to be provided to enable the generation of the correct set of ExecContexts which are used by the RuleInstaller to communicate with the various agents.
One starting point might be to allow a user to specify a simple list of agent ports via a new element in the Byteman configuration schema. Or more completely to specify a new XML element "agent" with attributes host, port and auto-install flag which are children of an "agents" element so that each agent can be configured separately. I think the latter would allow more precise configuration possibilities.
I'll try and set up a PR for this in the near future. Any comments appreciated.
NOTE: just realised that the Byteman configuration is provided as an extension configuration within arquillian.xml, so the latter configuration option involving adding new XML elements is probably not viable; some form of String will need to be used.
The text was updated successfully, but these errors were encountered: