Configuration pre-install validation against schema #58
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix #55
Ideally
active_address_settings
items should accept a map of arbitrary activemq settings (in snake-case instead of kebab-case); given a specific activemq version, the generated configuration should be validate against the corresponding xsd, possibly in the prereq phase. An additional variableactivemq_address_settings_defaults
should control the output (or not) of passed-in parameters that are defined as default in the xml schema, in order to explicitly fix a configuration between schema updates, or alternatively accept whatever is the default of that version.This PR adds extra tasks before the install/configuration phase, which take care of fetching the xsd schemas for required activemq version, pre-generate the configuration, and perform a schema validation step against each of the broker.xml main elements under
<core:core>
Additionally, it refactors how address-settings are generated, so that arbitrary configuration is accepted (and validated).
The
activemq_address_settings
variable has changed type fromlist(dict)
tolist(match(str),parameters(dict)
, like follows: