[jboss-dev-forums] [JBoss AS 7 Development] - JBoss AS7 Command-line Operation Request Format
Alexey Loubyansky
do-not-reply at jboss.com
Tue Feb 28 11:41:27 EST 2012
Alexey Loubyansky [https://community.jboss.org/people/aloubyansky] created the document:
"JBoss AS7 Command-line Operation Request Format"
To view the document, visit: https://community.jboss.org/docs/DOC-17599
--------------------------------------------------------------
For the definition and description of the AS7 management operation request, please, refer to the https://community.jboss.org/docs/DOC-16336 Format of a detyped operation request.
This article describes only the format of the operation request in the command-line interface, which is
[node_path] : operation_name [parameter_list] [header_list]
As you can see, all the parts except the +operation_name+ preceded with ':' are optional.
node_path := node_type=node_name (, node_type=node_name)*
parameter_list := '(' parameter_name=parameter_value (,parameter_name=parameter_value)* ')'
header_list := {header (;header)*}
h3. Address (node path)
+node_path+ represents the address of the target resource (or the node) against which the operation should be invoked. It consists of +node_type=node_name+ pairs separated by a comma:
node_type=node_name (, node_type=node_name)*
E.g.
+/subsystem=datasources+
or
+/subsystem=datasources/data-source=ExampleDS+
etc.
h3. Operation
The operation consists of an operation name and an optional list of parameters. The operation name is always preceded by a colon. The colon serves as a separator between the +node_path+ and the operation. Even if the +node_path+ is empty, the colon is still required. This is also how an operation is different from a command (commands are not preceded with a colon).
The parameter list, if present, is surrounded with parentheses and consists of +parameter_name=parameter_value+ pairs separated by commas:
:operation-name ['(' [name=value [, name=value]*] ')']
E.g.
+:shutdown+
+:shutdown()+
+:shutdown(restart=true)+
+/subsystem=datasources/data-source=ExampleDS:write-attribute(name=min-pool-size,value=5)+
h3. Headers
If present, the header list is surrounded with curly braces. The headers in the list are separated by a semicolon. The syntax of headers may vary. Simple headers follow +header_name=header_value+ format. But there are also headers (like rollout plans) that require a more complex custom expression. Here is an example of an operation with simple headers:
+:write-attribute(name=my-attr,value=my-value){allow-resource-service-restart=true;rollback-on-runtime-failure=false}+
h3. Rollout plans
For the definition and explanation of what rollout plans are and for, please, refer to the section *Operations with a Rollout Plan* of the https://community.jboss.org/docs/DOC-16336 Format of a detyped operation request.
This article only describes the CLI format of a rollout plan which is
rollout server_group_list [rollback-across-groups]
server_group_list := server_group [ (sequence_separator | concurrent_separator) server_group ]
sequence_separator := ','
concurrent_separator := '^'
server_group := server_group_name [group_policy_list]
group_policy_list := '(' policy_property_name=policy_property_value (, policy_property_name=policy_property_value)* ')'
policy_property_name := 'rolling-to-servers' | 'max-failed-servers' | 'max-failure-percentage'
The value of +policy_property_value+ depends on the property. It can be a boolean, an integer, etc. You can fine the definition and description of each of the policy properties in
the section *Operations with a Rollout Plan* of the https://community.jboss.org/docs/DOC-16336 Format of a detyped operation request.
Here are a few examples.
Rollout the operation in sequence first to main-server-group than the other-server-group:
+:write-attribute(name=my-attr,value=my-value){rollout main-server-group,other-server-group}+
Rollout the operation concurrently to main-server-group and the other-server-group:
+:write-attribute(name=my-attr,value=my-value){rollout main-server-group^other-server-group}+
Rollout the operation in sequence to groupA, concurrently to groupB and groupC and then to groupD using the specified policies and rollback across all the groups in case of a failure.
+:write-attribute(name=my-attr,value=my-value){rollout groupA, groupB(max-failed-servers=1) ^ groupC(max-failure-percentage=10), groupD(max-failed-servers=2, rolling-to-servers=true) rollback-across-groups}+
h4. Headers in commands
Headers are also allowed for the commands that translate into operation requests. Those commands accept argument +--headers+ the value of which is header-list defined above. I.e. the syntax for headers for operations and commands is exactly the same, e.g.
+data-source --profile=default --name=ExampleDS --min-pool-size=5 --headers={rollout groupA, groupB(max-failed-servers=1) ^ groupC(max-failure-percentage=10), groupD(max-failed-servers=2, rolling-to-servers=true) rollback-across-groups}+
--------------------------------------------------------------
Comment by going to Community
[https://community.jboss.org/docs/DOC-17599]
Create a new document in JBoss AS 7 Development at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=102&containerType=14&container=2225]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-dev-forums/attachments/20120228/d9d43b2b/attachment.html
More information about the jboss-dev-forums
mailing list