]
Ladislav Thon updated WFCORE-1485:
----------------------------------
Git Pull Request:
":read-resource(recursive=true)" generates output with
random order, could be ordered alphabetically by keys
------------------------------------------------------------------------------------------------------------
Key: WFCORE-1485
URL:
https://issues.jboss.org/browse/WFCORE-1485
Project: WildFly Core
Issue Type: Bug
Components: Domain Management
Reporter: Ladislav Thon
Assignee: Ladislav Thon
":read-resource(recursive=true)" generates output with random order, could it
be ordered alphabetically by keys
Now I can't do simple diff of changes, it's necessary to parse output to get
valid list of changes.
I expect output is stored in some structure data format before processed/printed out,
could you use some sorted structure (Tree* stuff) ?
Command to generate output and diff
{code}
jboss-eap-7.0/bin/jboss-cli.sh -c ":read-resource(recursive=true)" > 01
&& jboss-eap-7.0/bin/jboss-cli.sh -c ":read-resource(recursive=true)"
> 02
diff 01 02 ## meld kdiff3 or your diff favorite tool
{code}
Diff in my case:
{code:diff}
> 02 && diff 01 02
50c50,67
< "security" =>
{"classification" => {"security-domain" => {
---
> "logging" =>
{"classification" => {
> "logger" => {
> "configured-application" =>
undefined,
> "default-application" =>
false,
> "applies-to" => undefined
> },
> "logging-profile" => {
> "configured-application" =>
undefined,
> "default-application" =>
false,
> "applies-to" => undefined
> }
> }},
> "naming" => {"classification"
=> {"binding" => {
> "configured-application" =>
undefined,
> "default-application" => false,
> "applies-to" => undefined
> }}},
> "mail" => {"classification"
=> {"mail-session" => {
64a82,86
> "security" =>
{"classification" => {"security-domain" => {
> "configured-application" =>
undefined,
> "default-application" => false,
> "applies-to" => undefined
> }}},
66,70d87
< "data-source" => {
< "configured-application" =>
undefined,
< "default-application" =>
false,
< "applies-to" => undefined
< },
80,86d96
< }
< }},
< "logging" =>
{"classification" => {
< "logging-profile" => {
< "configured-application" =>
undefined,
< "default-application" =>
false,
< "applies-to" => undefined
88c98
< "logger" => {
---
> "data-source" => {
93,103c103
< }},
< "mail" => {"classification"
=> {"mail-session" => {
< "configured-application" =>
undefined,
< "default-application" => false,
< "applies-to" => undefined
< }}},
< "naming" => {"classification"
=> {"binding" => {
< "configured-application" =>
undefined,
< "default-application" => false,
< "applies-to" => undefined
< }}}
---
> }}
106,114d105
< "mail" => {"classification"
=> {"mail-server-security" => {
< "configured-requires-addressable"
=> undefined,
< "configured-requires-read" =>
undefined,
< "configured-requires-write" =>
undefined,
< "default-requires-addressable" =>
false,
< "default-requires-read" => false,
< "default-requires-write" => true,
< "applies-to" => undefined
< }}},
116c107
< "naming-binding" => {
---
> "jndi-view" => {
121,122c112,113
< "default-requires-read" =>
false,
< "default-requires-write" =>
false,
---
> "default-requires-read" =>
true,
> "default-requires-write" =>
true,
125c116
< "jndi-view" => {
---
> "naming-binding" => {
130,131c121,122
< "default-requires-read" =>
true,
< "default-requires-write" =>
true,
---
> "default-requires-read" =>
false,
> "default-requires-write" =>
false,
153,162c144
< "remoting" =>
{"classification" => {"remoting-security" => {
< "configured-requires-addressable"
=> undefined,
< "configured-requires-read" =>
undefined,
< "configured-requires-write" =>
undefined,
< "default-requires-addressable" =>
false,
< "default-requires-read" => true,
< "default-requires-write" => true,
< "applies-to" => undefined
< }}},
< "security" =>
{"classification" => {"misc-security" => {
---
> "logging" =>
{"classification" => {"view-server-logs" => {
167,168c149,150
< "default-requires-read" => true,
< "default-requires-write" => true,
---
> "default-requires-read" => false,
> "default-requires-write" => false,
171,172c153,154
< "undertow" =>
{"classification" => {
< "undertow-handler" => {
---
> "core" => {"classification"
=> {
> "security-realm-ref" => {
176,178c158,160
< "default-requires-addressable"
=> false,
< "default-requires-read" =>
false,
< "default-requires-write" =>
false,
---
> "default-requires-addressable"
=> true,
> "default-requires-read" =>
true,
> "default-requires-write" =>
true,
181c163
< "undertow-filter" => {
---
> "server-ssl" => {
185,187c167,169
< "default-requires-addressable"
=> false,
< "default-requires-read" =>
false,
< "default-requires-write" =>
false,
---
> "default-requires-addressable"
=> true,
> "default-requires-read" =>
true,
> "default-requires-write" =>
true,
190c172
< "web-connector" => {
---
> "service-container" => {
196c178
< "default-requires-write" =>
false,
---
> "default-requires-write" =>
true,
199c181
< "web-access-log" => {
---
> "extensions" => {
205c187
< "default-requires-write" =>
false,
---
> "default-requires-write" =>
true,
207,237c189,190
< }
< }},
< "logging" =>
{"classification" => {"view-server-logs" => {
< "configured-requires-addressable"
=> undefined,
< "configured-requires-read" =>
undefined,
< "configured-requires-write" =>
undefined,
< "default-requires-addressable" =>
false,
< "default-requires-read" => false,
< "default-requires-write" => false,
< "applies-to" => undefined
< }}},
< "datasources" =>
{"classification" => {"data-source-security" => {
< "configured-requires-addressable"
=> undefined,
< "configured-requires-read" =>
undefined,
< "configured-requires-write" =>
undefined,
< "default-requires-addressable" =>
false,
< "default-requires-read" => true,
< "default-requires-write" => true,
< "applies-to" => undefined
< }}},
< "resource-adapters" =>
{"classification" => {"resource-adapter-security" => {
< "configured-requires-addressable"
=> undefined,
< "configured-requires-read" =>
undefined,
< "configured-requires-write" =>
undefined,
< "default-requires-addressable" =>
false,
< "default-requires-read" => true,
< "default-requires-write" => true,
< "applies-to" => undefined
< }}},
< "core" => {"classification"
=> {
< "extensions" => {
---
> },
> "system-property" => {
246c199
< "service-container" => {
---
> "module-loading" => {
255c208
< "domain-controller" => {
---
> "jvm" => {
264c217
< "domain-names" => {
---
> "snapshots" => {
270c223
< "default-requires-write" =>
true,
---
> "default-requires-write" =>
false,
273c226
< "security-domain-ref" => {
---
> "access-control" => {
291c244
< "management-interfaces" => {
---
> "credential" => {
296c249
< "default-requires-read" =>
false,
---
> "default-requires-read" =>
true,
300c253
< "socket-binding-ref" => {
---
> "management-interfaces" => {
306c259
< "default-requires-write" =>
false,
---
> "default-requires-write" =>
true,
309c262
< "socket-config" => {
---
> "security-domain" => {
313,314c266,267
< "default-requires-addressable"
=> false,
< "default-requires-read" =>
false,
---
> "default-requires-addressable"
=> true,
> "default-requires-read" =>
true,
318c271
< "security-vault" => {
---
> "patching" => {
323c276
< "default-requires-read" =>
true,
---
> "default-requires-read" =>
false,
327c280
< "server-ssl" => {
---
> "read-whole-config" => {
331c284
< "default-requires-addressable"
=> true,
---
> "default-requires-addressable"
=> false,
336c289
< "jvm" => {
---
> "domain-controller" => {
345c298
< "module-loading" => {
---
> "security-vault" => {
350c303
< "default-requires-read" =>
false,
---
> "default-requires-read" =>
true,
354c307
< "security-domain" => {
---
> "security-domain-ref" => {
363c316
< "snapshots" => {
---
> "socket-binding-ref" => {
372c325
< "credential" => {
---
> "domain-names" => {
377c330
< "default-requires-read" =>
true,
---
> "default-requires-read" =>
false,
381c334
< "read-whole-config" => {
---
> "socket-config" => {
386c339
< "default-requires-read" =>
true,
---
> "default-requires-read" =>
false,
389,390c342,363
< },
< "patching" => {
---
> }
> }},
> "mail" => {"classification"
=> {"mail-server-security" => {
> "configured-requires-addressable"
=> undefined,
> "configured-requires-read" =>
undefined,
> "configured-requires-write" =>
undefined,
> "default-requires-addressable" =>
false,
> "default-requires-read" => false,
> "default-requires-write" => true,
> "applies-to" => undefined
> }}},
> "resource-adapters" =>
{"classification" => {"resource-adapter-security" => {
> "configured-requires-addressable"
=> undefined,
> "configured-requires-read" =>
undefined,
> "configured-requires-write" =>
undefined,
> "default-requires-addressable" =>
false,
> "default-requires-read" => true,
> "default-requires-write" => true,
> "applies-to" => undefined
> }}},
> "undertow" =>
{"classification" => {
> "undertow-filter" => {
396c369
< "default-requires-write" =>
true,
---
> "default-requires-write" =>
false,
399c372
< "access-control" => {
---
> "web-connector" => {
403,405c376,378
< "default-requires-addressable"
=> true,
< "default-requires-read" =>
true,
< "default-requires-write" =>
true,
---
> "default-requires-addressable"
=> false,
> "default-requires-read" =>
false,
> "default-requires-write" =>
false,
408c381
< "system-property" => {
---
> "undertow-handler" => {
414c387
< "default-requires-write" =>
true,
---
> "default-requires-write" =>
false,
417c390
< "security-realm-ref" => {
---
> "web-access-log" => {
421,423c394,396
< "default-requires-addressable"
=> true,
< "default-requires-read" =>
true,
< "default-requires-write" =>
true,
---
> "default-requires-addressable"
=> false,
> "default-requires-read" =>
false,
> "default-requires-write" =>
false,
426c399,426
< }}
---
> }},
> "datasources" =>
{"classification" => {"data-source-security" => {
> "configured-requires-addressable"
=> undefined,
> "configured-requires-read" =>
undefined,
> "configured-requires-write" =>
undefined,
> "default-requires-addressable" =>
false,
> "default-requires-read" => true,
> "default-requires-write" => true,
> "applies-to" => undefined
> }}},
> "remoting" =>
{"classification" => {"remoting-security" => {
> "configured-requires-addressable"
=> undefined,
> "configured-requires-read" =>
undefined,
> "configured-requires-write" =>
undefined,
> "default-requires-addressable" =>
false,
> "default-requires-read" => true,
> "default-requires-write" => true,
> "applies-to" => undefined
> }}},
> "security" =>
{"classification" => {"misc-security" => {
> "configured-requires-addressable"
=> undefined,
> "configured-requires-read" =>
undefined,
> "configured-requires-write" =>
undefined,
> "default-requires-addressable" =>
false,
> "default-requires-read" => true,
> "default-requires-write" => true,
> "applies-to" => undefined
> }}}
{code}