Skip to content

Commit

Permalink
Release 8.1.0 (#512)
Browse files Browse the repository at this point in the history
* Release 8.1.0

* Release 8.1.0

* Release 8.1.0
  • Loading branch information
felixs88 authored Jul 26, 2023
1 parent 563b064 commit 01db808
Show file tree
Hide file tree
Showing 39 changed files with 1,051 additions and 337 deletions.
48 changes: 19 additions & 29 deletions .github/workflows/ansible-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -96,40 +96,30 @@ jobs:
# https://docs.ansible.com/ansible/latest/dev_guide/testing_sanity.html

sanity:
name: Sanity Tests
runs-on: ubuntu-latest
name: Sanity (Ⓐ${{ matrix.ansible }} with ${{ matrix.python }})
needs: [build]
strategy:
fail-fast: false
matrix:
ansible-version: [stable-2.12, stable-2.13, stable-2.14, stable-2.15, devel]

python: ['3.8', '3.9', '3.10']
ansible:
- stable-2.13
- stable-2.14
- stable-2.15
- devel
exclude:
- ansible: stable-2.14
python: '3.8'
- ansible: stable-2.15
python: '3.8'
runs-on: ubuntu-latest
steps:
- name: Set up Python
uses: actions/setup-python@v1
with:
# it is just required to run that once as "ansible-test sanity" in the docker image
# will run on all python versions it supports.
python-version: 3.10.12

- name: Install ansible (${{ matrix.ansible-version }}) version
run: pip install https://github.com/ansible/ansible/archive/${{ matrix.ansible-version }}.tar.gz --disable-pip-version-check

- name: Download migrated collection artifacts
uses: actions/download-artifact@v1
- name: Perform sanity testing
uses: ansible-community/ansible-test-gh-action@release/v1
with:
name: collection
path: .cache/collection-tarballs

- name: Setup Sanity test Pre-requisites
run: ansible-galaxy collection install .cache/collection-tarballs/*.tar.gz

# run ansible-test sanity inside of Docker.
# The docker container has all the pinned dependencies that are required
# and all python versions ansible supports.
- name: Run sanity tests
run: ansible-test sanity --docker -v --color
working-directory: /home/runner/.ansible/collections/ansible_collections/dellemc/openmanage
ansible-core-version: ${{ matrix.ansible }}
target-python-version: ${{ matrix.python }}
testing-type: sanity
pull-request-change-detection: true

lint:
name: Ansible lint
Expand Down
35 changes: 35 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,41 @@ Dell OpenManage Ansible Modules Release Notes
.. contents:: Topics


v8.1.0
======

Release Summary
---------------

- Support for subject alternative names while generating certificate signing requests on OME.
- Create a user on iDRAC using custom privileges.
- Create a firmware baseline on OME with the filter option of no reboot required.
- Retrieve all server items in the output for ome_device_info.
- Enhancement to add detailed job information for ome_discovery and ome_job_info.

Minor Changes
-------------

- Module ``idrac_user`` is enhanced to configure custom privileges for an user.
- Module ``ome_application_certificate`` is enhanced to support subject alternative names.
- Module ``ome_discovery`` is enhanced to add detailed job information of each IP discovered.
- Module ``ome_firmware_baseline`` is enhanced to support the option to select only components with no reboot required.
- Module ``ome_job_info`` is enhanced to return last execution details and execution histories.

Bugfixes
--------

- The Chassis Power PIN value must be of six numerical digits input from the module. (https://github.com/dell/dellemc-openmanage-ansible-modules/issues/492).
- idrac_attributes module can now support modification of IPv6 attributes on iDRAC 8. (https://github.com/dell/dellemc-openmanage-ansible-modules/issues/488).
- ome_device_info is limited to 50 responses with a query filter. (https://github.com/dell/dellemc-openmanage-ansible-modules/issues/499).

Known Issues
------------

- ome_device_network_services - Issue(212681) - The module does not provide a proper error message if unsupported values are provided for the following parameters- port_number, community_name, max_sessions, max_auth_retries, and idle_timeout.
- ome_device_power_settings - Issue(212679) - The module displays the following message if the value provided for the parameter ``power_cap`` is not within the supported range of 0 to 32767, ``Unable to complete the request because PowerCap does not exist or is not applicable for the resource URI.``
- ome_smart_fabric_uplink - Issue(186024) - Despite the module supported by OpenManage Enterprise Modular, it does not allow the creation of multiple uplinks of the same name. If an uplink is created using the same name as an existing uplink, the existing uplink is modified.

v8.0.0
======

Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,13 @@ OpenManage Ansible Modules simplifies and automates provisioning, deployment, an
* [Additional Information](https://github.com/dell/dellemc-openmanage-ansible-modules/blob/collections/docs/ADDITIONAL_INFORMATION.md)

## Supported Platforms
* iDRAC8 based Dell PowerEdge Servers with firmware versions 2.82.82.82 and above.
* iDRAC9 based Dell PowerEdge Servers with firmware versions 5.10.50.00 and above.
* iDRAC8 based Dell PowerEdge Servers with firmware versions 2.83.83.83 and above.
* iDRAC9 based Dell PowerEdge Servers with firmware versions 6.10.80.00 and above.
* Dell OpenManage Enterprise versions 3.10.1 and above.
* Dell OpenManage Enterprise Modular versions 2.00.00 and above.

## Prerequisites
* [Ansible Core >= 2.15.1 and 2.14.7](https://github.com/ansible/ansible)
* [Ansible Core >= 2.15.2 and 2.14.8](https://github.com/ansible/ansible)
* Python >= 3.9.6
* To run the iDRAC modules, install OpenManage Python Software Development Kit (OMSDK)
using either ```pip install omsdk --upgrade``` or ```pip install -r requirements.txt```.
Expand Down
31 changes: 31 additions & 0 deletions changelogs/changelog.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1427,3 +1427,34 @@ releases:
name: idrac_job_queue
namespace: null
release_date: '2023-06-30'
8.1.0:
changes:
bugfixes:
- The Chassis Power PIN value must be of six numerical digits input from the module. (https://github.com/dell/dellemc-openmanage-ansible-modules/issues/492).
- idrac_attributes module can now support modification of IPv6 attributes on iDRAC 8. (https://github.com/dell/dellemc-openmanage-ansible-modules/issues/488).
- ome_device_info is limited to 50 responses with a query filter. (https://github.com/dell/dellemc-openmanage-ansible-modules/issues/499).
known_issues:
- ome_device_network_services - Issue(212681) - The module does not provide
a proper error message if unsupported values are provided for the following
parameters- port_number, community_name, max_sessions, max_auth_retries, and
idle_timeout.
- ome_device_power_settings - Issue(212679) - The module displays the following
message if the value provided for the parameter ``power_cap`` is not within
the supported range of 0 to 32767, ``Unable to complete the request because
PowerCap does not exist or is not applicable for the resource URI.``
- ome_smart_fabric_uplink - Issue(186024) - Despite the module supported by
OpenManage Enterprise Modular, it does not allow the creation of multiple
uplinks of the same name. If an uplink is created using the same name as an
existing uplink, the existing uplink is modified.
minor_changes:
- Module ``ome_application_certificate`` is enhanced to support subject alternative names.
- Module ``idrac_user`` is enhanced to configure custom privileges for an user.
- Module ``ome_firmware_baseline`` is enhanced to support the option to select only components with no reboot required.
- Module ``ome_discovery`` is enhanced to add detailed job information of each IP discovered.
- Module ``ome_job_info`` is enhanced to return last execution details and execution histories.
release_summary:
"- Support for subject alternative names while generating certificate signing requests on OME.\n- Create a user on
iDRAC using custom privileges.\n- Create a firmware baseline on OME with the filter option of no reboot
required.\n- Retrieve all server items in the output for ome_device_info.\n- Enhancement to add detailed job
information for ome_discovery and ome_job_info."
release_date: '2023-07-30'
2 changes: 0 additions & 2 deletions changelogs/fragments/idra_user-custom_privilege.yaml

This file was deleted.

2 changes: 0 additions & 2 deletions docs/modules/idrac_user.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,6 @@ Parameters

Select ``absent`` to remove a user account.

Ensure Lifecycle Controller is available because the user operation uses the capabilities of Lifecycle Controller.


user_name (True, str, None)
Provide the *user_name* of the account to be created, deleted or modified.
Expand Down
23 changes: 23 additions & 0 deletions docs/modules/ome_application_certificate.rst
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,12 @@ Parameters
Email associated with the issuer. This option is applicable for ``generate_csr``.


subject_alternative_names (optional, str, None)
Subject alternative name required for the certificate signing request generation.

Supports up to 4 comma separated values starting from primary, secondary, Tertiary and Quaternary values.


upload_file (optional, str, None)
Local path of the certificate file to be uploaded. This option is applicable for ``upload``. Once the certificate is uploaded, OpenManage Enterprise cannot be accessed for a few seconds.

Expand Down Expand Up @@ -130,6 +136,22 @@ Examples
country: "US"
email: "support@dell.com"

- name: Generate a certificate signing request with subject alternative names
dellemc.openmanage.ome_application_certificate:
hostname: "192.168.0.1"
username: "username"
password: "password"
ca_path: "/path/to/ca_cert.pem"
command: "generate_csr"
distinguished_name: "hostname.com"
subject_alternative_names: "hostname_chassis.com"
department_name: "Remote Access Group"
business_name: "Dell Inc."
locality: "Round Rock"
country_state: "Texas"
country: "US"
email: "support@dell.com"

- name: Upload the certificate
dellemc.openmanage.ome_application_certificate:
hostname: "192.168.0.1"
Expand Down Expand Up @@ -170,4 +192,5 @@ Authors
~~~~~~~

- Felix Stephen (@felixs88)
- Kritika Bhateja (@Kritika-Bhateja-03)

3 changes: 2 additions & 1 deletion docs/modules/ome_device_info.rst
Original file line number Diff line number Diff line change
Expand Up @@ -203,5 +203,6 @@ Status
Authors
~~~~~~~

- Sajna Shetty(@Sajna-Shetty)
- Sajna Shetty (@Sajna-Shetty)
- Felix Stephen (@felixs88)

9 changes: 6 additions & 3 deletions docs/modules/ome_device_local_access_configuration.rst
Original file line number Diff line number Diff line change
Expand Up @@ -67,13 +67,15 @@ Parameters
This is required when *enable_chassis_power_button* is ``false``.


disabled_button_lcd_override_pin (optional, int, None)
disabled_button_lcd_override_pin (optional, str, None)
The six digit LCD override pin to change the power state of the chassis.

This is required when *enable_lcd_override_pin* is ``true``.

The module will always report change when *disabled_button_lcd_override_pin* is ``true``.

The value must be specified in quotes. ex: "001100".



quick_sync (optional, dict, None)
Expand Down Expand Up @@ -225,7 +227,7 @@ Examples
chassis_power_button:
enable_chassis_power_button: false
enable_lcd_override_pin: true
disabled_button_lcd_override_pin: 123456
disabled_button_lcd_override_pin: "123456"

- name: Configure Quick sync and LCD settings of the chassis using device service tag.
dellemc.openmanage.ome_device_local_access_configuration:
Expand Down Expand Up @@ -257,7 +259,7 @@ Examples
chassis_power_button:
enable_chassis_power_button: false
enable_lcd_override_pin: true
disabled_button_lcd_override_pin: 123456
disabled_button_lcd_override_pin: "123456"
quick_sync:
quick_sync_access: READ_WRITE
enable_read_authentication: true
Expand Down Expand Up @@ -301,4 +303,5 @@ Authors
~~~~~~~

- Felix Stephen (@felixs88)
- Shivam Sharma (@ShivamSh3)

5 changes: 5 additions & 0 deletions docs/modules/ome_discovery.rst
Original file line number Diff line number Diff line change
Expand Up @@ -643,6 +643,10 @@ discovery_ids (when discoveries with duplicate name exist for I(state) is C(pres
IDs of the discoveries with duplicate names.


job_detailed_status (All time., list, [{'ElapsedTime': '00:00:00', 'EndTime': None, 'ExecutionHistoryId': 564873, 'Id': 656893, 'IdBaseEntity': 0, 'JobStatus': {'Id': 2050, 'Name': 'Running'}, 'Key': '192.96.24.1', 'Progress': '0', 'StartTime': '2023-07-04 06:23:54.008', 'Value': 'Running\nDiscovery of target 192.96.24.1 started.\nDiscovery target resolved to IP 192.96.24.1 .'}])
Detailed last execution history of a job.


error_info (on HTTP error, dict, {'error': {'code': 'Base.1.0.GeneralError', 'message': 'A general error has occurred. See ExtendedInfo for more information.', '@Message.ExtendedInfo': [{'MessageId': 'GEN1234', 'RelatedProperties': [], 'Message': 'Unable to process the request because an error occurred.', 'MessageArgs': [], 'Severity': 'Critical', 'Resolution': 'Retry the operation. If the issue persists, contact your system administrator.'}]}})
Details of the HTTP Error.

Expand All @@ -662,4 +666,5 @@ Authors

- Jagadeesh N V (@jagadeeshnv)
- Sajna Shetty (@Sajna-Shetty)
- Abhishek Sinha (@Abhishek-Dell)

45 changes: 44 additions & 1 deletion docs/modules/ome_firmware_baseline.rst
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,10 @@ Parameters
This option is applicable when *job_wait* is ``true``.


filter_no_reboot_required (optional, bool, None)
Select only components with no reboot required allows to create a firmware/driver baseline that consists of only the components of the target devices that don't require a reboot of the target devices.


hostname (True, str, None)
OpenManage Enterprise or OpenManage Enterprise Modular IP address or hostname.

Expand Down Expand Up @@ -165,6 +169,20 @@ Examples
- 1010
- 2020

- name: Create baseline for device IDs with no reboot required
dellemc.openmanage.ome_firmware_baseline:
hostname: "192.168.0.1"
username: "username"
password: "password"
ca_path: "/path/to/ca_cert.pem"
baseline_name: "baseline_name"
baseline_description: "baseline_description"
catalog_name: "catalog_name"
filter_no_reboot_required: true
device_ids:
- 1010
- 2020

- name: Create baseline for servicetags
dellemc.openmanage.ome_firmware_baseline:
hostname: "192.168.0.1"
Expand All @@ -178,6 +196,20 @@ Examples
- "SVCTAG1"
- "SVCTAG2"

- name: Create baseline for servicetags with no reboot required
dellemc.openmanage.ome_firmware_baseline:
hostname: "192.168.0.1"
username: "username"
password: "password"
ca_path: "/path/to/ca_cert.pem"
baseline_name: "baseline_name"
baseline_description: "baseline_description"
catalog_name: "catalog_name"
filter_no_reboot_required: true
device_service_tags:
- "SVCTAG1"
- "SVCTAG2"

- name: Create baseline for device groups without job tracking
dellemc.openmanage.ome_firmware_baseline:
hostname: "192.168.0.1"
Expand Down Expand Up @@ -209,6 +241,16 @@ Examples
downgrade_enabled: false
is_64_bit: true

- name: Modify no reboot filter in existing baseline
dellemc.openmanage.ome_firmware_baseline:
hostname: "192.168.0.1"
username: "username"
password: "password"
ca_path: "/path/to/ca_cert.pem"
baseline_name: "existing_baseline_name"
new_baseline_name: "new_baseline_name"
filter_no_reboot_required: true

- name: Delete a baseline
dellemc.openmanage.ome_firmware_baseline:
hostname: "192.168.0.1"
Expand All @@ -227,7 +269,7 @@ msg (always, str, Successfully created the firmware baseline.)
Overall status of the firmware baseline operation.


baseline_status (success, dict, {'CatalogId': 123, 'Description': 'BASELINE DESCRIPTION', 'DeviceComplianceReports': [], 'DowngradeEnabled': True, 'Id': 23, 'Is64Bit': True, 'Name': 'my_baseline', 'RepositoryId': 123, 'RepositoryName': 'catalog123', 'RepositoryType': 'HTTP', 'Targets': [{'Id': 10083, 'Type': {'Id': 1000, 'Name': 'DEVICE'}}, {'Id': 10076, 'Type': {'Id': 1000, 'Name': 'DEVICE'}}], 'TaskId': 11235, 'TaskStatusId': 2060})
baseline_status (success, dict, {'CatalogId': 123, 'Description': 'BASELINE DESCRIPTION', 'DeviceComplianceReports': [], 'DowngradeEnabled': True, 'FilterNoRebootRequired': True, 'Id': 23, 'Is64Bit': True, 'Name': 'my_baseline', 'RepositoryId': 123, 'RepositoryName': 'catalog123', 'RepositoryType': 'HTTP', 'Targets': [{'Id': 10083, 'Type': {'Id': 1000, 'Name': 'DEVICE'}}, {'Id': 10076, 'Type': {'Id': 1000, 'Name': 'DEVICE'}}], 'TaskId': 11235, 'TaskStatusId': 2060})
Details of the baseline status.


Expand Down Expand Up @@ -257,4 +299,5 @@ Authors
~~~~~~~

- Jagadeesh N V(@jagadeeshnv)
- Kritika Bhateja (@Kritika-Bhateja-03)

Loading

0 comments on commit 01db808

Please sign in to comment.