Closed smiklosovic closed 8 years ago
Yes the problem I see is that sysout does something related for loging and not for being reused in another way.
This seems to fix it
After dumping it looks like this:
containers:
tomcat:
alwaysPull: false
await: {iterations: 15, sleepPollingTime: 5 s, stdErr: false, stdOut: true, strategy: polling,
timeout: 15, type: ping}
cpuSet: '123'
exposedPorts: [1099/tcp, 8000/tcp, 8080/tcp, 8009/tcp]
image: some.image:5000/org/tomcat:latest
links: ['mariadb:mariadb', 'mongodb:mongodb', 'activemq:activemq']
portBindings: [1099/tcp, 8000/tcp, 8080/tcp, 8009/tcp]
readonlyRootfs: false
networks: {}
The problem was that there was "containers" string which was treated as a name of container so there was not any "tomcat" variable in CubeContainer - so you have to basically do one step down to containers.
I want to get rid of arquillian.xml file completely so everything will be configurable from the configuration class where I basically gather possible configuration from user and after that I set system properties programmatically so Arquillian manager will be configured purely from system properties so arquillian.xml is not needed anymore.
The problem is that when I provide some CubeContainer configuration, currently Cube does it other way around, it takes whatever is in "dockerContainers" in arquillian.xml and it constructs CubeContainers structure where that string is demarshalled from string to its model class.
I want it other way around, I construct CubeContainers and I want to marshall it to String and set it as a system property
arq.extension.docker.dockerContainers
so once Arqullian picks it from there, it will be reconstructed again by Cube internals.But this is not symmetrical, look at this:
The output is like this:
And the exception raised by loading is this: