Redfish modules: rename _facts -> _info (#60992)

* Rename redfish_facts -> redfish_info, idrac_redfish_facts -> idrac_redfish_info

* Update porting guide.

* Add changelog.

* Fix metadata.

* Remove copy artefacts.

* Change from deprecate/new module to rename.
pull/60916/head
Felix Fontein 5 years ago committed by GitHub
parent 191aa11483
commit 47c2ff4c26
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,5 @@
minor_changes:
- The ``idrac_redfish_facts`` module has been renamed to ``idrac_redfish_info``.
When called with the new name, the module no longer returns ``ansible_facts``.
- The ``redfish_facts`` module has been renamed to ``redfish_info``.
When called with the new name, the module no longer returns ``ansible_facts``.

@ -332,6 +332,9 @@ be removed in Ansible 2.13. Please update update your playbooks accordingly.
* The ``hpilo_facts`` module was renamed to :ref:`hpilo_info <hpilo_info_module>`. * The ``hpilo_facts`` module was renamed to :ref:`hpilo_info <hpilo_info_module>`.
When called with the new name, the module no longer returns ``ansible_facts``. When called with the new name, the module no longer returns ``ansible_facts``.
To access return values, :ref:`register a variable <registered_variables>`. To access return values, :ref:`register a variable <registered_variables>`.
* The ``idrac_redfish_facts`` module was renamed to :ref:`idrac_redfish_info <idrac_redfish_info_module>`.
When called with the new name, the module no longer returns ``ansible_facts``.
To access return values, :ref:`register a variable <registered_variables>`.
* The ``iam_mfa_device_facts`` module was renamed to :ref:`iam_mfa_device_info <iam_mfa_device_info_module>`. * The ``iam_mfa_device_facts`` module was renamed to :ref:`iam_mfa_device_info <iam_mfa_device_info_module>`.
* The ``iam_role_facts`` module was renamed to :ref:`iam_role_info <iam_role_info_module>`. * The ``iam_role_facts`` module was renamed to :ref:`iam_role_info <iam_role_info_module>`.
* The ``iam_server_certificate_facts`` module was renamed to :ref:`iam_server_certificate_info <iam_server_certificate_info_module>`. * The ``iam_server_certificate_facts`` module was renamed to :ref:`iam_server_certificate_info <iam_server_certificate_info_module>`.
@ -346,6 +349,9 @@ be removed in Ansible 2.13. Please update update your playbooks accordingly.
* The ``python_requirements_facts`` module was renamed to :ref:`python_requirements_info <python_requirements_info_module>`. * The ``python_requirements_facts`` module was renamed to :ref:`python_requirements_info <python_requirements_info_module>`.
* The ``rds_instance_facts`` module was renamed to :ref:`rds_instance_info <rds_instance_info_module>`. * The ``rds_instance_facts`` module was renamed to :ref:`rds_instance_info <rds_instance_info_module>`.
* The ``rds_snapshot_facts`` module was renamed to :ref:`rds_snapshot_info <rds_snapshot_info_module>`. * The ``rds_snapshot_facts`` module was renamed to :ref:`rds_snapshot_info <rds_snapshot_info_module>`.
* The ``redfish_facts`` module was renamed to :ref:`redfish_info <redfish_info_module>`.
When called with the new name, the module no longer returns ``ansible_facts``.
To access return values, :ref:`register a variable <registered_variables>`.
* The ``redshift_facts`` module was renamed to :ref:`redshift_info <redshift_info_module>`. * The ``redshift_facts`` module was renamed to :ref:`redshift_info <redshift_info_module>`.
* The ``route53_facts`` module was renamed to :ref:`route53_info <route53_info_module>`. * The ``route53_facts`` module was renamed to :ref:`route53_info <route53_info_module>`.
* The ``xenserver_guest_facts`` module was renamed to :ref:`xenserver_guest_info <xenserver_guest_info_module>`. * The ``xenserver_guest_facts`` module was renamed to :ref:`xenserver_guest_info <xenserver_guest_info_module>`.

@ -13,13 +13,15 @@ ANSIBLE_METADATA = {'status': ['preview'],
DOCUMENTATION = ''' DOCUMENTATION = '''
--- ---
module: idrac_redfish_facts module: idrac_redfish_info
version_added: "2.8" version_added: "2.8"
short_description: Manages servers through iDRAC using Dell Redfish APIs short_description: Manages servers through iDRAC using Dell Redfish APIs
description: description:
- Builds Redfish URIs locally and sends them to remote iDRAC controllers to - Builds Redfish URIs locally and sends them to remote iDRAC controllers to
get information back. get information back.
- For use with Dell iDRAC operations that require Redfish OEM extensions - For use with Dell iDRAC operations that require Redfish OEM extensions
- This module was called C(idrac_redfish_facts) before Ansible 2.9, returning C(ansible_facts).
Note that the M(idrac_redfish_info) module no longer returns C(ansible_facts)!
options: options:
category: category:
required: true required: true
@ -119,6 +121,10 @@ def main():
), ),
supports_check_mode=False supports_check_mode=False
) )
is_old_facts = module._name == 'idrac_redfish_facts'
if is_old_facts:
module.deprecate("The 'idrac_redfish_facts' module has been renamed to 'idrac_redfish_info', "
"and the renamed one no longer returns ansible_facts", version='2.13')
category = module.params['category'] category = module.params['category']
command_list = module.params['command'] command_list = module.params['command']
@ -159,7 +165,10 @@ def main():
# Return data back or fail with proper message # Return data back or fail with proper message
if result['ret'] is True: if result['ret'] is True:
del result['ret'] del result['ret']
if is_old_facts:
module.exit_json(ansible_facts=dict(redfish_facts=result)) module.exit_json(ansible_facts=dict(redfish_facts=result))
else:
module.exit_json(redfish_facts=result)
else: else:
module.fail_json(msg=to_native(result['msg'])) module.fail_json(msg=to_native(result['msg']))

@ -13,13 +13,15 @@ ANSIBLE_METADATA = {'status': ['preview'],
DOCUMENTATION = ''' DOCUMENTATION = '''
--- ---
module: redfish_facts module: redfish_info
version_added: "2.7" version_added: "2.7"
short_description: Manages Out-Of-Band controllers using Redfish APIs short_description: Manages Out-Of-Band controllers using Redfish APIs
description: description:
- Builds Redfish URIs locally and sends them to remote OOB controllers to - Builds Redfish URIs locally and sends them to remote OOB controllers to
get information back. get information back.
- Information retrieved is placed in a location specified by the user. - Information retrieved is placed in a location specified by the user.
- This module was called C(redfish_facts) before Ansible 2.9, returning C(ansible_facts).
Note that the M(redfish_info) module no longer returns C(ansible_facts)!
options: options:
category: category:
required: false required: false
@ -60,82 +62,90 @@ author: "Jose Delarosa (@jose-delarosa)"
EXAMPLES = ''' EXAMPLES = '''
- name: Get CPU inventory - name: Get CPU inventory
redfish_facts: redfish_info:
category: Systems category: Systems
command: GetCpuInventory command: GetCpuInventory
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
register: result
- debug: - debug:
msg: "{{ redfish_facts.cpu.entries | to_nice_json }}" msg: "{{ result.redfish_facts.cpu.entries | to_nice_json }}"
- name: Get CPU model - name: Get CPU model
redfish_facts: redfish_info:
category: Systems category: Systems
command: GetCpuInventory command: GetCpuInventory
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
register: result
- debug: - debug:
msg: "{{ redfish_facts.cpu.entries.0.Model }}" msg: "{{ result.redfish_facts.cpu.entries.0.Model }}"
- name: Get memory inventory - name: Get memory inventory
redfish_facts: redfish_info:
category: Systems category: Systems
command: GetMemoryInventory command: GetMemoryInventory
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
register: result
- name: Get fan inventory with a timeout of 20 seconds - name: Get fan inventory with a timeout of 20 seconds
redfish_facts: redfish_info:
category: Chassis category: Chassis
command: GetFanInventory command: GetFanInventory
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
timeout: 20 timeout: 20
register: result
- name: Get Virtual Media information - name: Get Virtual Media information
redfish_facts: redfish_info:
category: Manager category: Manager
command: GetVirtualMedia command: GetVirtualMedia
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
register: result
- debug: - debug:
msg: "{{ redfish_facts.virtual_media.entries | to_nice_json }}" msg: "{{ result.redfish_facts.virtual_media.entries | to_nice_json }}"
- name: Get Volume Inventory - name: Get Volume Inventory
redfish_facts: redfish_info:
category: Systems category: Systems
command: GetVolumeInventory command: GetVolumeInventory
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
register: result
- debug: - debug:
msg: "{{ redfish_facts.volume.entries | to_nice_json }}" msg: "{{ result.redfish_facts.volume.entries | to_nice_json }}"
- name: Get Session information - name: Get Session information
redfish_facts: redfish_info:
category: Sessions category: Sessions
command: GetSessions command: GetSessions
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
register: result
- debug: - debug:
msg: "{{ redfish_facts.session.entries | to_nice_json }}" msg: "{{ result.redfish_facts.session.entries | to_nice_json }}"
- name: Get default inventory information - name: Get default inventory information
redfish_facts: redfish_info:
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
register: result
- debug: - debug:
msg: "{{ redfish_facts | to_nice_json }}" msg: "{{ result.redfish_facts | to_nice_json }}"
- name: Get several inventories - name: Get several inventories
redfish_facts: redfish_info:
category: Systems category: Systems
command: GetNicInventory,GetBiosAttributes command: GetNicInventory,GetBiosAttributes
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
@ -143,21 +153,21 @@ EXAMPLES = '''
password: "{{ password }}" password: "{{ password }}"
- name: Get default system inventory and user information - name: Get default system inventory and user information
redfish_facts: redfish_info:
category: Systems,Accounts category: Systems,Accounts
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
- name: Get default system, user and firmware information - name: Get default system, user and firmware information
redfish_facts: redfish_info:
category: ["Systems", "Accounts", "Update"] category: ["Systems", "Accounts", "Update"]
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
username: "{{ username }}" username: "{{ username }}"
password: "{{ password }}" password: "{{ password }}"
- name: Get Manager NIC inventory information - name: Get Manager NIC inventory information
redfish_facts: redfish_info:
category: Manager category: Manager
command: GetManagerNicInventory command: GetManagerNicInventory
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
@ -165,7 +175,7 @@ EXAMPLES = '''
password: "{{ password }}" password: "{{ password }}"
- name: Get boot override information - name: Get boot override information
redfish_facts: redfish_info:
category: Systems category: Systems
command: GetBootOverride command: GetBootOverride
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
@ -173,7 +183,7 @@ EXAMPLES = '''
password: "{{ password }}" password: "{{ password }}"
- name: Get chassis inventory - name: Get chassis inventory
redfish_facts: redfish_info:
category: Chassis category: Chassis
command: GetChassisInventory command: GetChassisInventory
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
@ -181,7 +191,7 @@ EXAMPLES = '''
password: "{{ password }}" password: "{{ password }}"
- name: Get all information available in the Manager category - name: Get all information available in the Manager category
redfish_facts: redfish_info:
category: Manager category: Manager
command: all command: all
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
@ -189,7 +199,7 @@ EXAMPLES = '''
password: "{{ password }}" password: "{{ password }}"
- name: Get firmware update capability information - name: Get firmware update capability information
redfish_facts: redfish_info:
category: Update category: Update
command: GetFirmwareUpdateCapabilities command: GetFirmwareUpdateCapabilities
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
@ -197,7 +207,7 @@ EXAMPLES = '''
password: "{{ password }}" password: "{{ password }}"
- name: Get all information available in all categories - name: Get all information available in all categories
redfish_facts: redfish_info:
category: all category: all
command: all command: all
baseuri: "{{ baseuri }}" baseuri: "{{ baseuri }}"
@ -252,6 +262,10 @@ def main():
), ),
supports_check_mode=False supports_check_mode=False
) )
is_old_facts = module._name == 'redfish_facts'
if is_old_facts:
module.deprecate("The 'redfish_facts' module has been renamed to 'redfish_info', "
"and the renamed one no longer returns ansible_facts", version='2.13')
# admin credentials used for authentication # admin credentials used for authentication
creds = {'user': module.params['username'], creds = {'user': module.params['username'],
@ -388,7 +402,10 @@ def main():
result["log"] = rf_utils.get_logs() result["log"] = rf_utils.get_logs()
# Return data back # Return data back
if is_old_facts:
module.exit_json(ansible_facts=dict(redfish_facts=result)) module.exit_json(ansible_facts=dict(redfish_facts=result))
else:
module.exit_json(redfish_facts=result)
if __name__ == '__main__': if __name__ == '__main__':
Loading…
Cancel
Save