Commit Graph

20 Commits (bcdd1dc9518304b55fa6cdb6228df3e0a5b798ab)

Author SHA1 Message Date
Xander Madsen 31b02fdd58 Add IndicatorLED control commands to redfish_command module (#53752)
* Add Chassis commands IndicatorLedOn, IndicatorLedOff, and IndicatorLedBlink

* Add manage_indicator_led function to redfish_utils

* Add Chassis command category with IndicatorLedOn/Off/Blink commands to redfish_command

* Add IndicatorLedBlink example to EXAMPLES docstring, and make the category == 'Chassis' section more generic for future development
2019-03-28 20:58:46 +00:00
Bill Dodd d8536e47d3 Expose timeout option to Redfish modules (#54130)
* added timeout option to Redfish modules

* Apply suggestions from code review

Removed 'required: false' and added 'type: int' to 'timeout' documentation string.

Co-Authored-By: billdodd <billdodd@gmail.com>
2019-03-26 17:19:24 +00:00
Bill Dodd 384f4f1cef fix AttributeError for 'systems_uri' (#54178) 2019-03-21 17:50:40 -04:00
panticz c80baf7c58 redfish_facts: Extend CPU data example and output results (#54168)
* Extend CPU data example and output results

Add "Get CPU Model example" and output result from "Get CPU inventory". Also add example for output of the "Inventory information" to make it easier to use the examples for Ansible beginners.

+label: docsite_pr

* Remove white space from blank line
2019-03-21 15:22:52 +00:00
Dhanuka da9b19cef7 redfish_utils: add support to automate multiple systems. (#50854)
* Add support to automate multiple systems

Currently `redfish_utils` module can support only one system.
These changes introduce the ability to support multiple systems.

* Update - add support to automate multiple systems

* Introduce `aggregate()` to avoid code duplication in `get_multi___` like
methods.

* Remove "set" related methods

* include systems URI in each aggregated entry

* rebased

* Fixes KeyError and merge errors
2019-03-12 06:58:42 +10:00
Xander Madsen d0db99e023 Fix redfish_facts GetPsuInventory command not returning correct output (#52675)
* Move GetPsuInventory from Systems category to Chassis category

* Change get_psu_inventory to search through Chassis instead of Systems and PoweredBy for PowerSupplies

* Remove GetPsuInventory from Examples

* remove trailing whitespace

* Change boolean check from '!= None' to 'is not None'

* Don't include 'Absent' PSUs in get_psu_inventory()

* Add check to see if Power key is in Chassis before proceeding

* remove trailing whitespace

* Add continue step for when powersupply property is not found, and check if resulting entries is empty, returning message if nothing was found rather than an empty list
2019-03-06 12:43:23 +00:00
Bill Dodd e0538610bf Update GetBiosBootOrder to use standard spec resources (#51764)
* update GetBiosBootOrder to use standard spec resources

* handle case where BootOrder is present but BootOptions is missing
2019-02-11 14:50:10 +00:00
Bill Dodd 3b20b186d7 remove non-standard GetManagerAttributes, SetManagerAttributes (#51898) 2019-02-11 14:33:15 +00:00
Dag Wieers 05c6ff79f9 Convert to reduced list of known types (#50010) 2018-12-19 07:25:30 +10:00
Xander Madsen 1e415899ad GetManagerNicInventory (#49961)
* Add GetManagerNicInventory command for Manager category, and tweak redfish_utils' get_nic_inventory to accommodate manager nic interfaces

* Remove get_manager_nic_inventory, since it is unnecessary while using get_manager in get_nic_inventory

* Rework get_nic_inventory() to take a resource_type as a string, which will be just the category parameter from redfish_facts, making it clearer

* remove extraneous blank line to conform with pep8

* Add GetManagerNicInventory example task to EXAMPLES docstring
2018-12-18 09:58:17 -06:00
Jose Delarosa 4d77d601ff Add new Redfish command module to handle iDRAC-specific extensions (#49572)
- Module extends the existing RedfishUtils class and leverages its methods
- Acknowlegements to Bill Dodd (@billdodd) for creating original Proof-of-Concept
2018-12-07 13:43:30 +00:00
Bill Dodd 303c3494e6 remove non-standard CreateBiosConfigJob command (#48740) 2018-12-06 15:05:31 -05:00
tomasg2012 07895538b5 Changes to redfish-based parameters (#48717)
* Changes to redfish-based parameters

Corrected (potentially) small scope variable to 'id'

Review to see if this is problematic

* Updated doc information with "version_added"

* Corrected 'username' in redfish_config file
2018-11-27 18:16:24 -05:00
John R Barker 3fcc564bbb
Bulk fix DOCUMENTATION.author (Part 1) (#48934)
* Bulk fix DOCUMENTATION.author
2018-11-20 19:31:35 +00:00
Jose Delarosa 1c37471274 Fix idempotency issues in set_bios_attributes
- Added check to see if attribute even exists, if not, it exits.
- Then checks if attribute is already set to value we want to update
  it to. If yes, then it exits and changed=False
- Otherwise updates the attribute and changed=True
2018-10-25 11:02:02 -04:00
Jose Delarosa 197059b4a2 Update the root URI to match the DMTF specification (#45295) 2018-09-11 19:15:59 -04:00
Jose Delarosa fdb1d1146f Add module redfish_command (#43469)
* Add module redfish_command

Communicates with Out-Of-Band Controller through Redfish APIs
Sends a command to execute an action

* Wrapped all instances of result['msg'] inside to_native()

* Added more entries to Description section

* Minor fixes for PEP8 compliance

* Update the root URI to match the DMTF specification

* Display valid Categories or Commands in case invalid value given

* Updated returned values and description
2018-08-30 15:40:45 -04:00
Jose Delarosa 7f43f49b42 Add module redfish_config (#43470)
* Add module redfish_config

Communicates with Out-Of-Band Controller through Redfish APIs
Sends a configuration update to the Controller

* Wrapped all instances of result['msg'] inside to_native()

* Added more entries to Description section

* Minor fixes for PEP8 compliance

* Update the root URI to match the DMTF specification

* Display valid Categories or Commands in case invalid value given

* Updated returned values and description

* Add default values to bios and mgr variables
2018-08-30 15:38:57 -04:00
Joren Vrancken b954917761 Surround top-level function and class definitions with two blank lines. 2018-07-31 12:06:56 -07:00
Jose Delarosa 779d273192 Add new module for Redfish APIs (#41656)
* Add new module for Redfish APIs

Communicates with Out-Of-Band Controller through Redfish APIs
Module gathers hardware information and sends back

* Removed unused library imports

* Removed token entry from headers

* Made 'command' optional and defined default value for each 'category'

* Replace 'result' with 'ansible_facts' for returned dict variable

* Removed unused variable definitions and library imports

* Renamed dicts where data is returned.

Should make it easier to sort through returned data that is placed
in one file.

* Defined dicts to specify available categories and commands in each one.

- Allows specifying default command for each category
- Allows specifying all commands for each category
- Removed Inventory category and moved commands to System category
- Renamed dicts where data is returned to allow to dump more than one in a file

* Remove choice[] since it's redundant

* Added flexibility when specifying categories

- If a category is not specified, it sets a default value
- Can handle more than one category
- Will accept value "all" for category which will set to all available
- Renamed category System to Systems to better reflect Redfish API

* Defined default category in a variable

* Made category argument a list

* Added examples

* Made command argument a list

* Replaced 'ansible_facts' with 'redfish_facts' for returned dict variable.

* Added default value for category in documentation

* Moving redfish_facts inside ansible_facts

* Updated how results dicts are constructed, where applicable

* Improved error messages

* Removed unused variables

* Undo commit 66a7dcd789726913bdb7a25e59cc3aa2125db95d due to variable 'e' oversight
2018-07-27 12:21:25 -04:00