| 85 | | ''' resource_add - Add Resource ''' |
| | 93 | ==== Attribute Services ==== |
| | 94 | |
| | 95 | ===== attribute_add - Add an attribute ===== |
| | 96 | |
| | 97 | {{{ |
| | 98 | <service name="attribute_add"> |
| | 99 | <info>Add attribute to resource</info> |
| | 100 | <args> |
| | 101 | <arg isRequired="true" name="name" value="name"> |
| | 102 | <info>Resource name</info> |
| | 103 | </arg> |
| | 104 | <arg isRequired="true" name="attribute" value="attribute"> |
| | 105 | <info>Name of attribute</info> |
| | 106 | </arg> |
| | 107 | <arg isRequired="true" name="value" value="value"> |
| | 108 | <info>Value of attribute </info> |
| | 109 | </arg> |
| | 110 | </args> |
| | 111 | </service> |
| | 112 | }}} |
| | 113 | |
| | 114 | ===== attribute_delete - Delete an attribute ===== |
| | 115 | |
| | 116 | {{{ |
| | 117 | <service name="attribute_delete"> |
| | 118 | <info>Delete all attributes matching attribute pattern for all nodes matching node name pattern (rn)</info> |
| | 119 | <args> |
| | 120 | <arg isRequired="true" name="name" value="name" |
| | 121 | <info>Resource name or resource name pattern</info> |
| | 122 | </arg> |
| | 123 | <arg isRequired="true" name="attribute" value="attribute"> |
| | 124 | <info>Attribute pattern</info> |
| | 125 | </arg> |
| | 126 | </args> |
| | 127 | </service> |
| | 128 | }}} |
| | 129 | |
| | 130 | ===== attribute_list - List attributes ===== |
| | 131 | |
| | 132 | {{{ |
| | 133 | <service name="attribute_list"> |
| | 134 | <info>Get resource with names matching name pattern with, attributes matching attribute name pattern and value matching attribute value pattern</info> |
| | 135 | <args> |
| | 136 | <arg isRequired="true" name="set" value="set"> |
| | 137 | <info>Set of resource names or resource name pattern</info> |
| | 138 | </arg> |
| | 139 | <arg isRequired="false" name="attribute" value="[attribute]"> |
| | 140 | <info>Attribute name pattern</info> |
| | 141 | </arg> |
| | 142 | <arg isRequired="false" name="value" value="[value]"> |
| | 143 | <info>Attribute value pattern</info> |
| | 144 | </arg> |
| | 145 | </args> |
| | 146 | </service> |
| | 147 | }}} |
| | 148 | |
| | 149 | |
| | 150 | ===== attribute_listChildren - List attributes of children ===== |
| | 151 | |
| | 152 | {{{ |
| | 153 | <service name="attribute_listChildren"> |
| | 154 | <info>Get node with names matching name pattern with child (device) attributes matching attribute name pattern and value matching attribute value pattern</info> |
| | 155 | <args> |
| | 156 | <arg isRequired="true" name="set" value="set"> |
| | 157 | <info>Set of resource names or resource name pattern</info> |
| | 158 | </arg> |
| | 159 | <arg isRequired="false" name="attribute" value="[attribute]"> |
| | 160 | <info>Child attribute name pattern</info></arg> |
| | 161 | <arg isRequired="false" name="value" value="[value]"> |
| | 162 | <info>Child attribute value pattern</info> |
| | 163 | </arg> |
| | 164 | </args> |
| | 165 | </service> |
| | 166 | }}} |
| | 167 | |
| | 168 | ===== attribute_list_full - List node names with attributes ===== |
| | 169 | |
| | 170 | {{{ |
| | 171 | <service name="attribute_list_full"> |
| | 172 | <info>Get node with names matching name pattern with attributes matching attribute name pattern and value matching attribute value pattern</info> |
| | 173 | <args> |
| | 174 | <arg isRequired="true" name="set" value="set"> |
| | 175 | <info>Set of resource names or resource name pattern</info> |
| | 176 | </arg> |
| | 177 | <arg isRequired="false" name="attribute" value="[attribute]"> |
| | 178 | <info>Attribute name pattern</info> |
| | 179 | </arg> |
| | 180 | <arg isRequired="false" name="value" value="[value]"> |
| | 181 | <info>Attribute value pattern</info> |
| | 182 | </arg> |
| | 183 | </args> |
| | 184 | </service> |
| | 185 | }}} |
| | 186 | |
| | 187 | ===== attribute_modify - Modify an attribute value ===== |
| | 188 | |
| | 189 | {{{ |
| | 190 | <service name="attribute_modify"> |
| | 191 | <info>Modify attribute's value</info> |
| | 192 | <args> |
| | 193 | <arg isRequired="true" name="name" value="name"> |
| | 194 | <info>Resource name</info> |
| | 195 | </arg> |
| | 196 | <arg isRequired="true" name="attribute" value="attribute"> |
| | 197 | <info>Attribute name</info> |
| | 198 | </arg> |
| | 199 | <arg isRequired="true" name="value" value="value"> |
| | 200 | <info>New value of attribute </info> |
| | 201 | </arg> |
| | 202 | </args> |
| | 203 | </service> |
| | 204 | }}} |
| | 205 | |
| | 206 | ===== attribute_swap - Swap attribute values between two resources ===== |
| | 207 | |
| | 208 | {{{ |
| | 209 | <service name="attribute_swap"> |
| | 210 | <info>Swap attribute of two resources</info> |
| | 211 | <args> |
| | 212 | <arg isRequired="true" name="attribute" value="atribute"> |
| | 213 | <info>Attribute to be swapped</info> |
| | 214 | </arg> |
| | 215 | <arg isRequired="true" name="resource1" value="resource1"> |
| | 216 | <info>First Resource name</info> |
| | 217 | </arg><arg isRequired="true" name="resource2" value="resource2"> |
| | 218 | <info>Second Resource name</info> |
| | 219 | </arg> |
| | 220 | </args> |
| | 221 | </service> |
| | 222 | }}} |
| | 223 | |
| | 224 | ==== Resource Services ==== |
| | 225 | |
| | 226 | Sub-group for resource management. Resources are: '''topology''','''node''','''domain''','''infrastructure''' |
| | 227 | |
| | 228 | ===== domain_nodes - Show all nodes in a domain ===== |
| | 229 | |
| | 230 | {{{ |
| | 231 | <service name="domain_nodes"> |
| | 232 | <info>Get domain nodes</info> |
| | 233 | <args> |
| | 234 | <arg isRequired="true" name="domain" value="domain"> |
| | 235 | <info>domain/testbed name</info> |
| | 236 | </arg> |
| | 237 | </args> |
| | 238 | </service> |
| | 239 | }}} |
| | 240 | |
| | 241 | ===== parent_list - Show all parent resources ===== |
| | 242 | |
| | 243 | {{{ |
| | 244 | <service name="parent_list"> |
| | 245 | <info>Get all resources that given resourse belongs to</info> |
| | 246 | <args> |
| | 247 | <arg isRequired="false" name="name" value="[name]"> |
| | 248 | <info>Fully qualified resource name</info> |
| | 249 | </arg> |
| | 250 | </args> |
| | 251 | </service> |
| | 252 | }}} |
| | 253 | |
| | 254 | ===== relation_add - Add Relationship Between Resources ===== |
| | 255 | |
| | 256 | {{{ |
| | 257 | <service name="relation_add"> |
| | 258 | <info>Add relatin between two resources</info> |
| | 259 | <args> |
| | 260 | <arg isRequired="true" name="parent" value="rn"> |
| | 261 | <info>parent resource name</info> |
| | 262 | </arg> |
| | 263 | <arg isRequired="true" name="child" value="rn"> |
| | 264 | <info>child resource name</info> |
| | 265 | </arg> |
| | 266 | </args> |
| | 267 | </service> |
| | 268 | }}} |
| | 269 | |
| | 270 | ===== resource_add - Add Resource ===== |
| 133 | | ''' relation_add - Add Relationship Between Resources ''' |
| 134 | | |
| 135 | | {{{ |
| 136 | | <service name="relation_add"> |
| 137 | | <info>Add relation between two resources</info> |
| 138 | | <args> |
| 139 | | <arg name="parent" isRequired="true" value="rn"> |
| 140 | | <info>parent resource name</info> |
| 141 | | </arg> |
| 142 | | <arg name="child" isRequired="true" value="rn"> |
| 143 | | <info>child resource name</info> |
| 144 | | </arg> |
| 145 | | </args> |
| 146 | | </service> |
| 147 | | }}} |
| 148 | | |
| 149 | | ''' attribute_add - Add an attribute ''' |
| 150 | | |
| 151 | | {{{ |
| 152 | | <service name="attribute_add"> |
| 153 | | <info>Add attribute to resource</info> |
| 154 | | <args> |
| 155 | | <arg name="name" value="name" isRequired="true"> |
| 156 | | <info>Resource name</info> |
| 157 | | </arg> |
| 158 | | <arg name="attribute" value="attribute" isRequired="true"> |
| 159 | | <info>Name of attribute</info> |
| 160 | | </arg> |
| 161 | | <arg name="value" value="value" isRequired="true"> |
| 162 | | <info>Value of attribute </info> |
| 163 | | </arg> |
| 164 | | </args> |
| 165 | | </service> |
| 166 | | }}} |
| 167 | | |
| 168 | | ''' attribute_delete - Delete an attribute ''' |
| 169 | | |
| 170 | | {{{ |
| 171 | | <service name="attribute_delete"> |
| 172 | | <info>Delete all attributes matching attribute pattern for all nodes matching node name pattern (rn)</info> |
| 173 | | <args> |
| 174 | | <arg name="name" value="[name]" isRequired="false"> |
| 175 | | <info>Resource name or resource name pattern</info> |
| 176 | | </arg> |
| 177 | | <arg name="attribute" value="attribute" isRequired="true"> |
| 178 | | <info>Attribute pattern</info> |
| 179 | | </arg> |
| 180 | | </args> |
| 181 | | </service> |
| 182 | | }}} |
| 183 | | |
| 184 | | ''' attribute_modify - Modify an attribute value ''' |
| 185 | | |
| 186 | | {{{ |
| 187 | | <service name="attribute_modify"> |
| 188 | | <info>Modify attribute's value</info> |
| 189 | | <args> |
| 190 | | <arg name="name" value="name" isRequired="true"> |
| 191 | | <info>Resource name</info> |
| 192 | | </arg> |
| 193 | | <arg name="attribute" value="attribute" isRequired="true"> |
| 194 | | <info>Attribute name</info> |
| 195 | | </arg> |
| 196 | | <arg name="value" value="value" isRequired="true"> |
| 197 | | <info>New value of attribute </info> |
| 198 | | </arg> |
| 199 | | </args> |
| 200 | | </service> |
| 201 | | }}} |
| 202 | | |
| 203 | | ''' attribute_list - List attributes ''' |
| 204 | | |
| 205 | | {{{ |
| 206 | | <service name="attribute_list"> |
| 207 | | <info>Get node with names matching name pattern with attributes matching attribute name pattern and value matching attribute value pattern</info> |
| 208 | | <args> |
| 209 | | <arg name="set" value="[set]" isRequired="false"> |
| 210 | | <info>Set of resource names or resource name pattern</info> |
| 211 | | </arg> |
| 212 | | <arg name="attribute" value="[attribute]" isRequired="false"> |
| 213 | | <info>Attribute name pattern</info> |
| 214 | | </arg> |
| 215 | | <arg name="value" value="[value]" isRequired="false"> |
| 216 | | <info>Attribute value pattern</info> |
| 217 | | </arg> |
| 218 | | </args> |
| 219 | | </service> |
| 220 | | }}} |
| 221 | | |
| 222 | | ''' attribute_listChildren - List attributes of children ''' |
| 223 | | |
| 224 | | {{{ |
| 225 | | <service name="attribute_listChildren"> |
| 226 | | <info>Get node with names matching name pattern with child (device) attributes matching attribute name pattern and value matching attribute value pattern</info> |
| 227 | | <args> |
| 228 | | <arg name="set" value="[set]" isRequired="false"> |
| 229 | | <info>Set of resource names or resource name pattern</info> |
| 230 | | </arg> |
| 231 | | <arg name="attribute" value="[attribute]" isRequired="false"> |
| 232 | | <info>Child attribute name pattern</info> |
| 233 | | </arg> |
| 234 | | <arg name="value" value="[value]" isRequired="false"> |
| 235 | | <info>Child attribute value pattern</info> |
| 236 | | </arg> |
| 237 | | </args> |
| 238 | | </service> |
| 239 | | }}} |
| 240 | | |
| | 319 | ===== resource_rename - Change resource name ===== |
| | 320 | |
| | 321 | {{{ |
| | 322 | <service name="resource_rename"> |
| | 323 | <info>Rename resource</info> |
| | 324 | <args> |
| | 325 | <arg isRequired="true" name="oldname" value="oldname"> |
| | 326 | <info>Old resource name</info> |
| | 327 | </arg> |
| | 328 | <arg isRequired="true" name="newname" value="newname"> |
| | 329 | <info>New resource name</info> |
| | 330 | </arg> |
| | 331 | </args> |
| | 332 | </service> |
| | 333 | }}} |
| | 334 | |
| | 335 | ===== resource_swap - Swap two resources (names) ===== |
| | 336 | |
| | 337 | {{{ |
| | 338 | <service name="resource_swap"> |
| | 339 | <info>Swap two resources</info><args> |
| | 340 | <arg isRequired="true" name="resource1" value="resource1"> |
| | 341 | <info>First Resource name</info></arg><arg isRequired="true" name="resource2" value="resource2"><info>Second Resource name</info> |
| | 342 | </arg> |
| | 343 | </args> |
| | 344 | </service> |
| | 345 | }}} |
| | 346 | |
| | 347 | ==== Topology Services ==== |
| | 348 | |
| | 349 | Topologies are collections of resources that are grouped based on certain characteristics or attributes. Examples are: topology with the name: '''TOPO_CPU_grid.orbit-lab.org_2.10GHz''' that contains list of nodes in the '''grid''' with a '''CPU''' with'''2.1 GHz clock'''. |
| | 350 | |
| | 351 | ===== topology_add - Service to create new topology ===== |
| | 352 | |
| | 353 | {{{ |
| | 354 | <service name="topology_add"> |
| | 355 | <info>Add topology</info> |
| | 356 | <args> |
| | 357 | <arg isRequired="true" name="name" value="name"> |
| | 358 | <info>Toplogy name</info> |
| | 359 | </arg> |
| | 360 | <arg isRequired="true" name="set" value="set"> |
| | 361 | <info>comma separeted node names</info> |
| | 362 | </arg> |
| | 363 | </args> |
| | 364 | </service> |
| | 365 | }}} |
| | 366 | |
| | 367 | ===== topology_add - Service to delete existing topology ===== |
| | 368 | |
| | 369 | {{{ |
| | 370 | <service name="topology_delete"> |
| | 371 | <info>Remove set of topologies</info> |
| | 372 | <args> |
| | 373 | <arg isRequired="true" name="set" value="set"> |
| | 374 | <info>Set of toplogy names</info> |
| | 375 | </arg> |
| | 376 | </args> |
| | 377 | </service> |
| | 378 | }}} |
| | 379 | |
| | 380 | |
| | 381 | {{{ |
| | 382 | <service name="topology_list"> |
| | 383 | <info>Get all defined topologies</info> |
| | 384 | </service> |
| | 385 | }}} |
| | 386 | |
| | 387 | {{{ |
| | 388 | <service name="topology_nodes"> |
| | 389 | <info>Get topology nodes</info> |
| | 390 | <args> |
| | 391 | <arg isRequired="true" name="shortname" value="shortname"> |
| | 392 | <info>topology shortname</info> |
| | 393 | </arg> |
| | 394 | <arg isRequired="true" name="domain" value="domain"> |
| | 395 | <info>domain/testbed name</info> |
| | 396 | </arg> |
| | 397 | </args> |
| | 398 | </service> |
| | 399 | }}} |
| | 400 | |
| | 401 | {{{ |
| | 402 | <service name="topology_show"> |
| | 403 | <info>Show list of nodes that belong to given topology name</info |
| | 404 | <args> |
| | 405 | <arg isRequired="true" name="name" value="name"> |
| | 406 | <info>topology name</info |
| | 407 | </arg> |
| | 408 | </args> |
| | 409 | </service> |
| | 410 | }}} |
| | 411 | |
| | 412 | ==== Maintenance Services ==== |
| | 413 | |
| | 414 | ===== update_cache - Service to update internal cache ===== |
| | 415 | |
| | 416 | This service should be called after any changes to the inventory. |
| | 417 | {{{ |
| | 418 | <service name="update_cache"> |
| | 419 | <info>Update cache</info> |
| | 420 | </service> |
| | 421 | }}} |