Using the CLI to add Complex Types with boundless elements - (eg: vault-options)
abn Apr 19, 2012 9:26 PMI am trying to add to the host.xml config using the CLI:
<vault>
<vault-option name="KEYSTORE_URL" value="${jboss.domain.config.dir}/vault/vault.keys"/>
<vault-option name="KEYSTORE_PASSWORD" value="MASK-3m3R2kvwf54"/>
<vault-option name="KEYSTORE_ALIAS" value="https"/>
<vault-option name="SALT" value="12345678"/>
<vault-option name="ITERATION_COUNT" value="44"/>
<vault-option name="ENC_FILE_DIR" value="${jboss.domain.config.dir}/vault/"/>
</vault>
Manually adding it provides the following DMR:
[domain@localhost:9999 core-service] ./vault:read-resource(recursive=true)
{
"outcome" => "success",
"result" => {
"code" => undefined,
"vault-options" => {
"KEYSTORE_URL" => "${jboss.domain.config.dir}/vault/vault.keys",
"KEYSTORE_PASSWORD" => "MASK-3m3R2kvwf54",
"KEYSTORE_ALIAS" => "https",
"SALT" => "12345678",
"ITERATION_COUNT" => "44",
"ENC_FILE_DIR" => "${jboss.domain.config.dir}/vault/"
}
}
}
How do I go about adding this block using the CLI?
What I have tried so far:
Using vault-options: CLI complains that it is not a supported property.
[domain@localhost:9999 core-service] echo-dmr ./vault:add(vault-options={"KEYSTORE_URL"=>"${jboss.domain.config.dir}/vault/vault.keys","KEYSTORE_PASSWORD" => "MASK-3m3R2kvwf54","KEYSTORE_ALIAS" => "https","SALT" => "12345678","ITERATION_COUNT" => "44","ENC_FILE_DIR" => "${jboss.domain.config.dir}/vault/"})
{
"address" => [
("host" => "master"),
("core-service" => "vault")
],
"operation" => "add",
"vault-options" => {
"KEYSTORE_URL" => "${jboss.domain.config.dir}/vault/vault.keys",
"KEYSTORE_PASSWORD" => "MASK-3m3R2kvwf54",
"KEYSTORE_ALIAS" => "https",
"SALT" => "12345678",
"ITERATION_COUNT" => "44",
"ENC_FILE_DIR" => "${jboss.domain.config.dir}/vault/"
}
}
[domain@localhost:9999 core-service] ./vault:add(vault-options={"KEYSTORE_URL"=>"${jboss.domain.config.dir}/vault/vault.keys","KEYSTORE_PASSWORD" => "MASK-3m3R2kvwf54","KEYSTORE_ALIAS" => "https","SALT" => "12345678","ITERATION_COUNT" => "44","ENC_FILE_DIR" => "${jboss.domain.config.dir}/vault/"})
'vault-options' is not found among the supported properties: [code, vault-option]
Naive approach: Used multiple 'vault-option', but this just meant that all the properties got over-written to the same location.
[domain@localhost:9999 core-service] echo-dmr ./vault:add(vault-option={"KEYSTORE_URL"=>"${jboss.domain.config.dir}/vault/vault.keys"},vault-option={"KEYSTORE_PASSWORD" => "MASK-3m3R2kvwf54"},vault-option={"KEYSTORE_ALIAS" => "https"},vault-option={"SALT" => "12345678"},vault-option={"ITERATION_COUNT" => "44"},vault-option={"ENC_FILE_DIR" => "${jboss.domain.config.dir}/vault/"})
{
"address" => [
("host" => "master"),
("core-service" => "vault")
],
"operation" => "add",
"vault-option" => {"ENC_FILE_DIR" => "${jboss.domain.config.dir}/vault/"}
}