Thanks Aaron and David, I've modified o.a.g.client.builder.AppClientModuleBuilder and o.a.g.deployment.Deployer to accept multiple ConfigurationStore references, so now Geronimo will run with two ConfigurationStores specified in system-plan.xml. As you guys expected, you can pass a Target to the deployment cli and it gets passed to DeploymentManager.distribute() but it's lost on the server side since the Deploy.deploy() method that gets called doesn't take a target parameter.
I'm a little fuzzy on the theory of operations on the server side - i.e. how the data gets from the wire to Deployer.deploy(). It looks like it uses MX4J but if one of you could sketch out how that code gets set up I could take a look at adding the target code to Deploy tomorrow. Thanks, Toby PS. Please feel free to move this conversation over to the dev list if that's a more appropriate place for it.