From 863746bbd4e85f2b32b55f0512c066e500902edb Mon Sep 17 00:00:00 2001 From: Sachin Apagundi Date: Mon, 20 May 2024 09:57:41 +0530 Subject: [PATCH 1/9] release changes for powerflex --- .github/CODEOWNERS | 2 +- .github/workflows/ansible-test.yml | 20 ++-- CHANGELOG.rst | 11 ++- README.md | 95 ++++++++++++------- changelogs/changelog.yaml | 6 ++ docs/CONTRIBUTING.md | 8 +- docs/INSTALLATION.md | 4 +- docs/ISSUE_TRIAGE.md | 6 +- docs/MAINTAINERS.md | 3 - docs/MAINTAINER_GUIDE.md | 2 +- docs/Release Notes.md | 8 +- docs/SECURITY.md | 2 +- docs/modules/device.rst | 4 +- docs/modules/fault_set.rst | 4 +- docs/modules/info.rst | 4 +- docs/modules/mdm_cluster.rst | 4 +- docs/modules/protection_domain.rst | 4 +- .../modules/replication_consistency_group.rst | 4 +- docs/modules/replication_pair.rst | 4 +- docs/modules/resource_group.rst | 4 +- docs/modules/sdc.rst | 4 +- docs/modules/sds.rst | 4 +- docs/modules/snapshot.rst | 4 +- docs/modules/snapshot_policy.rst | 4 +- docs/modules/storagepool.rst | 4 +- docs/modules/volume.rst | 4 +- galaxy.yml | 8 +- meta/execution-environment.yml | 2 +- meta/runtime.yml | 2 +- plugins/doc_fragments/powerflex.py | 4 +- tests/sanity/ignore-2.14.txt | 47 --------- 31 files changed, 126 insertions(+), 160 deletions(-) delete mode 100644 tests/sanity/ignore-2.14.txt diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index f3093ce..e4209b6 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -15,4 +15,4 @@ # Trisha Datta (trisha-dell) # for all files: -* @kuttattz @Bhavneet-Sharma @Jennifer-John @meenakshidembi691 @Pavan-Mudunuri @trisha-dell @felixs88 @sachin-apa +* @Bhavneet-Sharma @Jennifer-John @meenakshidembi691 @trisha-dell @felixs88 @sachin-apa diff --git a/.github/workflows/ansible-test.yml b/.github/workflows/ansible-test.yml index 058c434..6c5bc20 100644 --- a/.github/workflows/ansible-test.yml +++ b/.github/workflows/ansible-test.yml @@ -14,13 +14,13 @@ jobs: strategy: fail-fast: false matrix: - ansible-version: [stable-2.14, stable-2.15, stable-2.16, devel] + ansible-version: [stable-2.15, stable-2.16, stable-2.17, devel] steps: - name: Check out code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Python 3.11 - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: 3.11 @@ -31,7 +31,7 @@ jobs: run: ansible-galaxy collection build --output-path "${GITHUB_WORKSPACE}/.cache/collection-tarballs" - name: Store migrated collection artifacts - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: collection path: .cache/collection-tarballs @@ -50,13 +50,15 @@ jobs: matrix: python: ['3.9', '3.10', '3.11'] ansible: - - stable-2.14 - stable-2.15 - stable-2.16 + - stable-2.17 - devel exclude: - ansible: stable-2.16 python: '3.9' + - ansible: stable-2.17 + python: '3.9' - ansible: devel python: '3.9' @@ -81,13 +83,15 @@ jobs: matrix: python: ['3.9', '3.10', '3.11'] ansible: - - stable-2.14 - stable-2.15 - stable-2.16 + - stable-2.17 - devel exclude: - ansible: stable-2.16 python: '3.9' + - ansible: stable-2.17 + python: '3.9' - ansible: devel python: '3.9' runs-on: ubuntu-latest @@ -109,11 +113,13 @@ jobs: fail-fast: false matrix: python-version: ["3.9", "3.10", "3.11"] - ansible-version: [stable-2.14, stable-2.15, stable-2.16, devel] + ansible-version: [stable-2.15, stable-2.16, stable-2.17, devel] exclude: # Ansible-core 2.16 is supported only from Python 3.10 onwards - python-version: "3.9" ansible-version: stable-2.16 + - python-version: "3.9" + ansible-version: stable-2.17 - python-version: "3.9" ansible-version: devel diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 6224280f..51ac7ec 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,9 +1,18 @@ =============================== -Dellemc.PowerFlex Change Logs +Dellemc.PowerFlex Release Notes =============================== .. contents:: Topics +v2.5.0 +====== + +Minor Changes +------------- + +- Fixed the roles to support attaching the mdm cluster to the gateway. +- The storage pool module has been enhanced to support more features. + v2.4.0 ====== diff --git a/README.md b/README.md index 06dddb1..7ed316e 100644 --- a/README.md +++ b/README.md @@ -1,64 +1,89 @@ # Ansible Modules for Dell Technologies PowerFlex +[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](https://github.com/dell/ansible-powerflex/blob/main/docs/CODE_OF_CONDUCT.md) +[![License](https://img.shields.io/github/license/dell/dellemc-openmanage-ansible-modules)](https://github.com/dell/ansible-powerflex/blob/main/LICENSE) +[![Python version](https://img.shields.io/badge/python-3.9.6+-blue.svg)](https://www.python.org/downloads/) +[![Ansible version](https://img.shields.io/badge/ansible-2.15.6+-blue.svg)](https://pypi.org/project/ansible/) +[![PyPowerFlex](https://img.shields.io/github/v/release/dell/python-powerflex?include_prereleases&label=PyPowerFlex&style=flat-square)](https://github.com/dell/python-powerflex/releases) +[![GitHub release (latest by date including pre-releases)](https://img.shields.io/github/v/release/dell/ansible-powerflex?include_prereleases&label=latest&style=flat-square)](https://github.com/dell/ansible-powerflex/releases) +[![codecov](https://codecov.io/gh/dell/ansible-powerflex/branch/main/graph/badge.svg)](https://app.codecov.io/gh/dell/ansible-powerflex) + The Ansible Modules for Dell Technologies (Dell) PowerFlex allow Data Center and IT administrators to use RedHat Ansible to automate and orchestrate the provisioning and management of Dell PowerFlex storage systems. The capabilities of the Ansible modules are managing SDCs, volumes, snapshots, snapshot policy, storage pools, replication consistency groups, replication pairs, SDSs, devices, protection domains, MDM cluster, Fault Set and to gather high level facts from the storage system. The options available are list, show, create, modify and delete. These tasks can be executed by running simple playbooks written in yaml syntax. The modules are written so that all the operations are idempotent, so making multiple identical requests has the same effect as making a single request. ## Table of contents -* [Code of conduct](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/CODE_OF_CONDUCT.md) -* [Maintainer guide](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/MAINTAINER_GUIDE.md) -* [Committer guide](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/COMMITTER_GUIDE.md) -* [Contributing guide](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/CONTRIBUTING.md) -* [Branching strategy](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/BRANCHING.md) -* [List of adopters](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/ADOPTERS.md) -* [Maintainers](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/MAINTAINERS.md) -* [Support](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/SUPPORT.md) +* [Code of conduct](https://github.com/dell/ansible-powerflex/blob/main/docs/CODE_OF_CONDUCT.md) +* [Maintainer guide](https://github.com/dell/ansible-powerflex/blob/main/docs/MAINTAINER_GUIDE.md) +* [Committer guide](https://github.com/dell/ansible-powerflex/blob/main/docs/COMMITTER_GUIDE.md) +* [Contributing guide](https://github.com/dell/ansible-powerflex/blob/main/docs/CONTRIBUTING.md) +* [Branching strategy](https://github.com/dell/ansible-powerflex/blob/main/docs/BRANCHING.md) +* [List of adopters](https://github.com/dell/ansible-powerflex/blob/main/docs/ADOPTERS.md) +* [Maintainers](https://github.com/dell/ansible-powerflex/blob/main/docs/MAINTAINERS.md) +* [Support](https://github.com/dell/ansible-powerflex/blob/main/docs/SUPPORT.md) * [License](#license) -* [Security](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/SECURITY.md) +* [Security](https://github.com/dell/ansible-powerflex/blob/main/docs/SECURITY.md) * [Prerequisites](#prerequisites) * [List of Ansible modules for Dell PowerFlex](#list-of-ansible-modules-for-dell-powerflex) * [Installation and execution of Ansible modules for Dell PowerFlex](#installation-and-execution-of-ansible-modules-for-dell-powerflex) * [Releasing, Maintenance and Deprecation](#releasing-maintenance-and-deprecation) -## License -The Ansible collection for PowerFlex is released and licensed under the GPL-3.0 license. See [LICENSE](https://github.com/dell/ansible-powerflex/blob/2.4.0/LICENSE) for the full terms. Ansible modules and modules utilities that are part of the Ansible collection for PowerFlex are released and licensed under the Apache 2.0 license. See [MODULE-LICENSE](https://github.com/dell/ansible-powerflex/blob/2.4.0/MODULE-LICENSE) for the full terms. -## Prerequisites + +## Requirements | **Ansible Modules** | **PowerFlex/VxFlex OS Version** | **SDK version** | **Python version** | **Ansible** | |---------------------|-----------------------|-------|--------------------|--------------------------| -| v2.4.0 |3.6
4.0
4.5
APEX Block Storage for Mircrosoft Azure
APEX Block Storage for AWS | 1.11.0 | 3.9.x
3.10.x
3.11.x | 2.14
2.15
2.16 | +| v2.5.0 |3.6
4.0
4.5
APEX Block Storage for Mircrosoft Azure
APEX Block Storage for AWS | 1.12.0 | 3.9.x
3.10.x
3.11.x | 2.15
2.16
2.17 | * Please follow PyPowerFlex installation instructions on [PyPowerFlex Documentation](https://github.com/dell/python-powerflex) - -## Idempotency -The modules are written in such a way that all requests are idempotent and hence fault-tolerant. It essentially means that the result of a successfully performed request is independent of the number of times it is executed. - -## List of Ansible modules for Dell PowerFlex - * [Info module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/info.rst) - * [Snapshot module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/snapshot.rst) - * [SDC module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/sdc.rst) - * [Storage pool module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/storagepool.rst) - * [Volume module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/volume.rst) - * [SDS module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/sds.rst) - * [Device Module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/device.rst) - * [Protection Domain Module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/protection_domain.rst) - * [MDM Cluster Module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/mdm_cluster.rst) - * [Replication Consistency Group Module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/replication_consistency_group.rst) - * [Replication Pair Module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/replication_pair.rst) - * [Snapshot Policy Module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/snapshot_policy.rst) - * [Fault Sets Module](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/modules/fault_set.rst) ## Installation and execution of Ansible modules for Dell PowerFlex -The installation and execution steps of Ansible modules for Dell PowerFlex can be found [here](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/INSTALLATION.md). +The installation and execution steps of Ansible modules for Dell PowerFlex can be found [here](https://github.com/dell/ansible-powerflex/blob/main/docs/INSTALLATION.md). + +## Use Cases +Refer the [example playbooks](https://github.com/dell/ansible-powerflex/tree/main/playbooks) on how the collection can be used for [modules](https://github.com/dell/ansible-powerflex/tree/main/playbooks/modules) and [roles](https://github.com/dell/ansible-powerflex/tree/main/playbooks/roles). -## Releasing, Maintenance and Deprecation +## Testing +The following tests are done on ansible-powerflex collection +- Unit tests +- Integration tests. +## Support +Refer [Support](https://github.com/dell/ansible-powerflex/blob/main/docs/SUPPORT.md) documenetation for more information on the support from Dell Technologies. + +## Release Notes, Maintenance and Deprecation Ansible Modules for Dell Technologies PowerFlex follows [Semantic Versioning](https://semver.org/). New version will be release regularly if significant changes (bug fix or new feature) are made in the collection. -Released code versions are located on "release" branches with names of the form "release-x.y.z" where x.y.z corresponds to the version number. More information on branching strategy followed can be found [here](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/BRANCHING.md). +Released code versions are located on "release" branches with names of the form "release-x.y.z" where x.y.z corresponds to the version number. More information on branching strategy followed can be found [here](https://github.com/dell/ansible-powerflex/blob/main/docs/BRANCHING.md). + +Ansible Modules for Dell Technologies PowerFlex deprecation cycle is aligned with that of [Ansible](https://docs.ansible.com/ansible/latest/dev_guide/module_lifecycle.html). -Ansible Modules for Dell Technologies PowerFlex deprecation cycle is aligned with that of [Ansible](https://docs.ansible.com/ansible/latest/dev_guide/module_lifecycle.html). \ No newline at end of file +See [change logs](https://github.com/dell/ansible-powerflex/blob/main/CHANGELOG.rst) for more information on what is new in the releases. + +## Related Information + +### Idempotency +The modules are written in such a way that all requests are idempotent and hence fault-tolerant. It essentially means that the result of a successfully performed request is independent of the number of times it is executed. + +### List of Ansible modules for Dell PowerFlex + * [Info module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/info.rst) + * [Snapshot module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/snapshot.rst) + * [SDC module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/sdc.rst) + * [Storage pool module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/storagepool.rst) + * [Volume module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/volume.rst) + * [SDS module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/sds.rst) + * [Device Module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/device.rst) + * [Protection Domain Module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/protection_domain.rst) + * [MDM Cluster Module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/mdm_cluster.rst) + * [Replication Consistency Group Module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/replication_consistency_group.rst) + * [Replication Pair Module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/replication_pair.rst) + * [Snapshot Policy Module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/snapshot_policy.rst) + * [Fault Sets Module](https://github.com/dell/ansible-powerflex/blob/main/docs/modules/fault_set.rst) + + +## License +The Ansible collection for PowerFlex is released and licensed under the GPL-3.0 license. See [LICENSE](https://github.com/dell/ansible-powerflex/blob/main/LICENSE) for the full terms. Ansible modules and modules utilities that are part of the Ansible collection for PowerFlex are released and licensed under the Apache 2.0 license. See [MODULE-LICENSE](https://github.com/dell/ansible-powerflex/blob/main/MODULE-LICENSE) for the full terms. \ No newline at end of file diff --git a/changelogs/changelog.yaml b/changelogs/changelog.yaml index a4fb3c6..fa85a22 100644 --- a/changelogs/changelog.yaml +++ b/changelogs/changelog.yaml @@ -163,3 +163,9 @@ releases: minor_changes: - Added support for executing Ansible PowerFlex modules and roles on AWS environment. release_date: '2024-04-30' + 2.5.0: + changes: + minor_changes: + - The storage pool module has been enhanced to support more features. + - Fixed the roles to support attaching the mdm cluster to the gateway. + release_date: '2024-05-31' diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 8453175..12ce41f 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -10,7 +10,7 @@ You may obtain a copy of the License at # How to contribute -Become one of the contributors to this project! We thrive to build a welcoming and open community for anyone who wants to use the project or contribute to it. There are just a few small guidelines you need to follow. To help us create a safe and positive community experience for all, we require all participants to adhere to the [Code of Conduct](https://github.com/dell/ansible-powerflex/blob/2.4.0/CODE_OF_CONDUCT.md). +Become one of the contributors to this project! We thrive to build a welcoming and open community for anyone who wants to use the project or contribute to it. There are just a few small guidelines you need to follow. To help us create a safe and positive community experience for all, we require all participants to adhere to the [Code of Conduct](https://github.com/dell/ansible-powerflex/blob/main/CODE_OF_CONDUCT.md). ## Table of contents @@ -76,7 +76,7 @@ Triage helps ensure that issues resolve quickly by: If you don't have the knowledge or time to code, consider helping with _issue triage_. The Ansible modules for Dell PowerFlex community will thank you for saving them time by spending some of yours. -Read more about the ways you can [Triage issues](https://github.com/dell/ansible-powerflex/blob/2.4.0/ISSUE_TRIAGE.md). +Read more about the ways you can [Triage issues](https://github.com/dell/ansible-powerflex/blob/main/ISSUE_TRIAGE.md). ## Your first contribution @@ -89,7 +89,7 @@ When you're ready to contribute, it's time to create a pull request. ## Branching -* [Branching Strategy for Ansible modules for Dell PowerFlex](https://github.com/dell/ansible-powerflex/blob/2.4.0/BRANCHING.md) +* [Branching Strategy for Ansible modules for Dell PowerFlex](https://github.com/dell/ansible-powerflex/blob/main/BRANCHING.md) ## Signing your commits @@ -144,7 +144,7 @@ Make sure that the title for your pull request uses the same format as the subje ### Quality gates for pull requests -GitHub Actions are used to enforce quality gates when a pull request is created or when any commit is made to the pull request. These GitHub Actions enforce our minimum code quality requirement for any code that get checked into the repository. If any of the quality gates fail, it is expected that the contributor will look into the check log, understand the problem and resolve the issue. If help is needed, please feel free to reach out the maintainers of the project for [support](https://github.com/dell/ansible-powerflex/blob/2.4.0/SUPPORT.md). +GitHub Actions are used to enforce quality gates when a pull request is created or when any commit is made to the pull request. These GitHub Actions enforce our minimum code quality requirement for any code that get checked into the repository. If any of the quality gates fail, it is expected that the contributor will look into the check log, understand the problem and resolve the issue. If help is needed, please feel free to reach out the maintainers of the project for [support](https://github.com/dell/ansible-powerflex/blob/main/SUPPORT.md). #### Code sanitization diff --git a/docs/INSTALLATION.md b/docs/INSTALLATION.md index c2b8df3..f3e0e1c 100644 --- a/docs/INSTALLATION.md +++ b/docs/INSTALLATION.md @@ -41,7 +41,7 @@ You may obtain a copy of the License at * Download the latest tar build from any of the available distribution channel [Ansible Galaxy](https://galaxy.ansible.com/dellemc/powerflex) /[Automation Hub](https://console.redhat.com/ansible/automation-hub/repo/published/dellemc/powerflex) and use this command to install the collection anywhere in your system: - ansible-galaxy collection install dellemc-powerflex-2.4.0.tar.gz -p + ansible-galaxy collection install dellemc-powerflex-2.5.0.tar.gz -p * Set the environment variable: @@ -68,7 +68,7 @@ You may obtain a copy of the License at ## Ansible modules execution -The Ansible server must be configured with Python library for PowerFlex to run the Ansible playbooks. The [Documents](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/) provide information on different Ansible modules along with their functions and syntax. The parameters table in the Product Guide provides information on various parameters which needs to be configured before running the modules. +The Ansible server must be configured with Python library for PowerFlex to run the Ansible playbooks. The [Documents](https://github.com/dell/ansible-powerflex/blob/main/docs/) provide information on different Ansible modules along with their functions and syntax. The parameters table in the Product Guide provides information on various parameters which needs to be configured before running the modules. ## SSL certificate validation diff --git a/docs/ISSUE_TRIAGE.md b/docs/ISSUE_TRIAGE.md index 50d4665..3172161 100644 --- a/docs/ISSUE_TRIAGE.md +++ b/docs/ISSUE_TRIAGE.md @@ -41,10 +41,10 @@ This section describes the various issue templates and the expected content. Should explain what happened, what was expected and how to reproduce it together with any additional information that may help giving a complete picture of what happened such as screenshots, output and any environment related information that's applicable and/or maybe related to the reported problem: - - Ansible Version: [e.g. 2.14] + - Ansible Version: [e.g. 2.15] - Python Version [e.g. 3.11] - - Ansible modules for Dell PowerFlex Version: [e.g. 2.4.0] - - PowerFlex SDK version: [e.g. PyPowerFlex 1.11.0] + - Ansible modules for Dell PowerFlex Version: [e.g. 2.5.0] + - PowerFlex SDK version: [e.g. PyPowerFlex 1.12.0] - Any other additional information... #### Feature requests diff --git a/docs/MAINTAINERS.md b/docs/MAINTAINERS.md index 4679f6d..6f0c610 100644 --- a/docs/MAINTAINERS.md +++ b/docs/MAINTAINERS.md @@ -9,10 +9,7 @@ You may obtain a copy of the License at --> # Maintainers - -* Ananthu Kuttattu (kuttattz) * Bhavneet Sharma (Bhavneet-Sharma) * Jennifer John (Jennifer-John) * Meenakshi Dembi (meenakshidembi691) -* Pavan Mudunuri (Pavan-Mudunuri) * Trisha Datta (trisha-dell) diff --git a/docs/MAINTAINER_GUIDE.md b/docs/MAINTAINER_GUIDE.md index 5f982c2..2832c97 100644 --- a/docs/MAINTAINER_GUIDE.md +++ b/docs/MAINTAINER_GUIDE.md @@ -27,7 +27,7 @@ If a candidate is approved, a Maintainer contacts the candidate to invite them t ## Maintainer policies * Lead by example -* Follow the [Code of Conduct](https://github.com/dell/ansible-powerflex/blob/2.4.0/CODE_OF_CONDUCT.md) and the guidelines in the [Contributing](https://github.com/dell/ansible-powerflex/blob/2.4.0/CONTRIBUTING.md) and [Committer](https://github.com/dell/ansible-powerflex/blob/2.4.0/COMMITTER_GUIDE.md) guides +* Follow the [Code of Conduct](https://github.com/dell/ansible-powerflex/blob/main/CODE_OF_CONDUCT.md) and the guidelines in the [Contributing](https://github.com/dell/ansible-powerflex/blob/main/CONTRIBUTING.md) and [Committer](https://github.com/dell/ansible-powerflex/blob/main/COMMITTER_GUIDE.md) guides * Promote a friendly and collaborative environment within our community * Be actively engaged in discussions, answering questions, updating defects, and reviewing pull requests * Criticize code, not people. Ideally, tell the contributor a better way to do what they need. diff --git a/docs/Release Notes.md b/docs/Release Notes.md index 1a25523..5eabb0d 100644 --- a/docs/Release Notes.md +++ b/docs/Release Notes.md @@ -1,6 +1,6 @@ **Ansible Modules for Dell Technologies PowerFlex** ========================================= -### Release notes 2.4.0 +### Release notes 2.5.0 > © 2024 Dell Inc. or its subsidiaries. All rights reserved. Dell > and other trademarks are trademarks of Dell Inc. or its @@ -28,7 +28,7 @@ Table 1. Revision history | Revision | Date | Description | |----------|-----------------|-------------------------------------------------------------| -| 01 | April 2024 | Current release of Ansible Modules for Dell PowerFlex 2.4.0 | +| 01 | May 2024 | Current release of Ansible Modules for Dell PowerFlex 2.5.0 | Product description ------------------- @@ -63,11 +63,11 @@ Limitations Distribution ------------ The software package is available for download from the [Ansible Modules -for PowerFlex GitHub](https://github.com/dell/ansible-powerflex/tree/2.4.0) page. +for PowerFlex GitHub](https://github.com/dell/ansible-powerflex/tree/main) page. Documentation ------------- -The documentation is available on [Ansible Modules for PowerFlex GitHub](https://github.com/dell/ansible-powerflex/tree/2.4.0/docs) +The documentation is available on [Ansible Modules for PowerFlex GitHub](https://github.com/dell/ansible-powerflex/tree/main/docs) page. It includes the following: - README diff --git a/docs/SECURITY.md b/docs/SECURITY.md index a7eab1b..b2de265 100644 --- a/docs/SECURITY.md +++ b/docs/SECURITY.md @@ -12,7 +12,7 @@ You may obtain a copy of the License at The Ansible modules for Dell PowerFlex repository are inspected for security vulnerabilities via blackduck scans and static code analysis. -In addition to this, there are various security checks that get executed against a branch when a pull request is created/updated. Please refer to [pull request](https://github.com/dell/ansible-powerflex/blob/2.4.0/docs/CONTRIBUTING.md#Pull-requests) for more information. +In addition to this, there are various security checks that get executed against a branch when a pull request is created/updated. Please refer to [pull request](https://github.com/dell/ansible-powerflex/blob/main/docs/CONTRIBUTING.md#Pull-requests) for more information. ## Reporting a vulnerability diff --git a/docs/modules/device.rst b/docs/modules/device.rst index cbeb0f8..9eccc26 100644 --- a/docs/modules/device.rst +++ b/docs/modules/device.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/fault_set.rst b/docs/modules/fault_set.rst index 191ab73..d1d5fb3 100644 --- a/docs/modules/fault_set.rst +++ b/docs/modules/fault_set.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/info.rst b/docs/modules/info.rst index fd67480..49c1f0f 100644 --- a/docs/modules/info.rst +++ b/docs/modules/info.rst @@ -23,9 +23,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/mdm_cluster.rst b/docs/modules/mdm_cluster.rst index fa73ae5..4c64170 100644 --- a/docs/modules/mdm_cluster.rst +++ b/docs/modules/mdm_cluster.rst @@ -23,9 +23,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/protection_domain.rst b/docs/modules/protection_domain.rst index 0bd532b..10acf4b 100644 --- a/docs/modules/protection_domain.rst +++ b/docs/modules/protection_domain.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/replication_consistency_group.rst b/docs/modules/replication_consistency_group.rst index d8d1440..f60ce5b 100644 --- a/docs/modules/replication_consistency_group.rst +++ b/docs/modules/replication_consistency_group.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/replication_pair.rst b/docs/modules/replication_pair.rst index 7c883c6..9da3699 100644 --- a/docs/modules/replication_pair.rst +++ b/docs/modules/replication_pair.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/resource_group.rst b/docs/modules/resource_group.rst index a72918d..3a0d9cd 100644 --- a/docs/modules/resource_group.rst +++ b/docs/modules/resource_group.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/sdc.rst b/docs/modules/sdc.rst index 7b0871b..6d4003f 100644 --- a/docs/modules/sdc.rst +++ b/docs/modules/sdc.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/sds.rst b/docs/modules/sds.rst index 188fe9f..cd2730c 100644 --- a/docs/modules/sds.rst +++ b/docs/modules/sds.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/snapshot.rst b/docs/modules/snapshot.rst index e09e800..f44b327 100644 --- a/docs/modules/snapshot.rst +++ b/docs/modules/snapshot.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/snapshot_policy.rst b/docs/modules/snapshot_policy.rst index dd683c9..21823e9 100644 --- a/docs/modules/snapshot_policy.rst +++ b/docs/modules/snapshot_policy.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/storagepool.rst b/docs/modules/storagepool.rst index f9f3f27..5602fe3 100644 --- a/docs/modules/storagepool.rst +++ b/docs/modules/storagepool.rst @@ -21,9 +21,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/docs/modules/volume.rst b/docs/modules/volume.rst index 16dbf2b..1132bec 100644 --- a/docs/modules/volume.rst +++ b/docs/modules/volume.rst @@ -23,9 +23,7 @@ Requirements The below requirements are needed on the host that executes this module. - A Dell PowerFlex storage system version 3.6 or later. -- Ansible-core 2.14 or later. -- PyPowerFlex 1.11.0. -- Python 3.9, 3.10 or 3.11. +- PyPowerFlex 1.12.0. diff --git a/galaxy.yml b/galaxy.yml index b0af3b9..1f6a62c 100644 --- a/galaxy.yml +++ b/galaxy.yml @@ -14,7 +14,7 @@ name: powerflex # The version of the collection. # Must be compatible with semantic versioning -version: 2.4.0 +version: 2.5.0 # The path to the Markdown (.md) readme file. # This path is relative to the root of the collection. @@ -60,13 +60,13 @@ tags: [storage] dependencies: {} # The URL of the originating SCM repository -repository: https://github.com/dell/ansible-powerflex/tree/2.4.0 +repository: https://github.com/dell/ansible-powerflex/tree/main # The URL to any online docs -documentation: https://github.com/dell/ansible-powerflex/tree/2.4.0/docs +documentation: https://github.com/dell/ansible-powerflex/tree/main/docs # The URL to the homepage of the collection/project -homepage: https://github.com/dell/ansible-powerflex/tree/2.4.0 +homepage: https://github.com/dell/ansible-powerflex/tree/main # The URL to the collection issue tracker issues: https://www.dell.com/community/Automation/bd-p/Automation diff --git a/meta/execution-environment.yml b/meta/execution-environment.yml index 54e87f9..2b747b7 100644 --- a/meta/execution-environment.yml +++ b/meta/execution-environment.yml @@ -1,5 +1,5 @@ --- -version: 1 +version: 3 dependencies: # Absolute/relative path of requirements.yml galaxy: requirements.yml diff --git a/meta/runtime.yml b/meta/runtime.yml index dd41c3e..6711a25 100644 --- a/meta/runtime.yml +++ b/meta/runtime.yml @@ -1,5 +1,5 @@ --- -requires_ansible: ">=2.14.0" +requires_ansible: ">=2.15.0" plugin_routing: modules: dellemc_powerflex_gatherfacts: diff --git a/plugins/doc_fragments/powerflex.py b/plugins/doc_fragments/powerflex.py index 32b17a4..b6d8626 100644 --- a/plugins/doc_fragments/powerflex.py +++ b/plugins/doc_fragments/powerflex.py @@ -52,9 +52,7 @@ class ModuleDocFragment(object): default: 120 requirements: - A Dell PowerFlex storage system version 3.6 or later. - - Ansible-core 2.14 or later. - - PyPowerFlex 1.10.0. - - Python 3.9, 3.10 or 3.11. + - PyPowerFlex 1.12.0. notes: - The modules present in the collection named as 'dellemc.powerflex' are built to support the Dell PowerFlex storage platform. diff --git a/tests/sanity/ignore-2.14.txt b/tests/sanity/ignore-2.14.txt deleted file mode 100644 index 438f0a7..0000000 --- a/tests/sanity/ignore-2.14.txt +++ /dev/null @@ -1,47 +0,0 @@ -plugins/modules/sds.py import-2.7 -plugins/modules/sds.py import-3.5 -plugins/modules/sds.py compile-2.7 -plugins/modules/sds.py compile-3.5 -plugins/modules/info.py import-2.7 -plugins/modules/info.py import-3.5 -plugins/modules/info.py compile-2.7 -plugins/modules/fault_set.py import-2.7 -plugins/modules/fault_set.py import-3.5 -plugins/modules/fault_set.py compile-2.7 -plugins/modules/fault_set.py compile-3.5 -plugins/module_utils/storage/dell/libraries/configuration.py import-2.7 -plugins/module_utils/storage/dell/libraries/configuration.py import-3.5 -plugins/module_utils/storage/dell/libraries/configuration.py compile-2.7 -plugins/module_utils/storage/dell/libraries/configuration.py compile-3.5 -plugins/modules/device.py validate-modules:missing-gplv3-license -plugins/modules/sdc.py validate-modules:missing-gplv3-license -plugins/modules/sds.py validate-modules:missing-gplv3-license -plugins/modules/snapshot.py validate-modules:missing-gplv3-license -plugins/modules/storagepool.py validate-modules:missing-gplv3-license -plugins/modules/volume.py validate-modules:missing-gplv3-license -plugins/modules/info.py validate-modules:missing-gplv3-license -plugins/modules/protection_domain.py validate-modules:missing-gplv3-license -plugins/modules/mdm_cluster.py validate-modules:missing-gplv3-license -plugins/modules/replication_consistency_group.py validate-modules:missing-gplv3-license -plugins/modules/replication_pair.py validate-modules:missing-gplv3-license -plugins/modules/snapshot_policy.py validate-modules:missing-gplv3-license -plugins/modules/fault_set.py validate-modules:missing-gplv3-license -plugins/modules/snapshot_policy.py compile-2.7 -plugins/modules/snapshot_policy.py compile-3.5 -plugins/modules/snapshot_policy.py import-2.7 -plugins/modules/snapshot_policy.py import-3.5 -plugins/modules/sdc.py import-2.7 -plugins/modules/sdc.py import-3.5 -plugins/modules/sdc.py compile-2.7 -plugins/modules/sdc.py compile-3.5 -tests/unit/plugins/module_utils/mock_device_api.py compile-2.7 -tests/unit/plugins/module_utils/mock_device_api.py compile-3.5 -plugins/modules/replication_consistency_group.py import-2.7 -plugins/modules/replication_consistency_group.py import-3.5 -plugins/modules/replication_consistency_group.py compile-2.7 -plugins/modules/replication_consistency_group.py compile-3.5 -plugins/modules/resource_group.py validate-modules:missing-gplv3-license -plugins/modules/resource_group.py compile-2.7 -plugins/modules/resource_group.py import-2.7 -plugins/modules/storagepool.py compile-2.7 -plugins/modules/storagepool.py import-2.7 From 8df23549ad2fd193d5c047ee20e76e2ede1488ce Mon Sep 17 00:00:00 2001 From: Sachin Apagundi Date: Mon, 20 May 2024 10:06:14 +0530 Subject: [PATCH 2/9] release changes for powerflex --- .github/workflows/ansible-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ansible-test.yml b/.github/workflows/ansible-test.yml index 6c5bc20..c6a0ba8 100644 --- a/.github/workflows/ansible-test.yml +++ b/.github/workflows/ansible-test.yml @@ -17,10 +17,10 @@ jobs: ansible-version: [stable-2.15, stable-2.16, stable-2.17, devel] steps: - name: Check out code - uses: actions/checkout@v4 + uses: actions/checkout@v3 - name: Set up Python 3.11 - uses: actions/setup-python@v5 + uses: actions/setup-python@v4 with: python-version: 3.11 From e5ca506dbe50478048cb0511415eedb40a2bb8f3 Mon Sep 17 00:00:00 2001 From: Sachin Apagundi Date: Mon, 20 May 2024 10:08:08 +0530 Subject: [PATCH 3/9] release changes for powerflex --- .github/workflows/ansible-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ansible-test.yml b/.github/workflows/ansible-test.yml index c6a0ba8..76f9538 100644 --- a/.github/workflows/ansible-test.yml +++ b/.github/workflows/ansible-test.yml @@ -31,7 +31,7 @@ jobs: run: ansible-galaxy collection build --output-path "${GITHUB_WORKSPACE}/.cache/collection-tarballs" - name: Store migrated collection artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v1 with: name: collection path: .cache/collection-tarballs From 7ef8765850e82269458f62f423fa81ffadb1f772 Mon Sep 17 00:00:00 2001 From: Sachin Apagundi <62133262+sachin-apa@users.noreply.github.com> Date: Wed, 22 May 2024 09:26:20 +0530 Subject: [PATCH 4/9] Update CHANGELOG.rst Co-authored-by: Bhavneet-Sharma <91545772+Bhavneet-Sharma@users.noreply.github.com> --- CHANGELOG.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 51ac7ec..528c20f 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,5 +1,5 @@ =============================== -Dellemc.PowerFlex Release Notes +Dellemc.PowerFlex Change Logs =============================== .. contents:: Topics From 3b63e2b43ebed5df03fa172df7b89a48e6e72349 Mon Sep 17 00:00:00 2001 From: Sachin Apagundi <62133262+sachin-apa@users.noreply.github.com> Date: Wed, 22 May 2024 09:28:57 +0530 Subject: [PATCH 5/9] Update README.md Co-authored-by: Bhavneet-Sharma <91545772+Bhavneet-Sharma@users.noreply.github.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7ed316e..19e3eb7 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Ansible Modules for Dell Technologies PowerFlex [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](https://github.com/dell/ansible-powerflex/blob/main/docs/CODE_OF_CONDUCT.md) -[![License](https://img.shields.io/github/license/dell/dellemc-openmanage-ansible-modules)](https://github.com/dell/ansible-powerflex/blob/main/LICENSE) +[![License](https://img.shields.io/github/license/dell/ansible-powerflex)](https://github.com/dell/ansible-powerflex/blob/main/LICENSE) [![Python version](https://img.shields.io/badge/python-3.9.6+-blue.svg)](https://www.python.org/downloads/) [![Ansible version](https://img.shields.io/badge/ansible-2.15.6+-blue.svg)](https://pypi.org/project/ansible/) [![PyPowerFlex](https://img.shields.io/github/v/release/dell/python-powerflex?include_prereleases&label=PyPowerFlex&style=flat-square)](https://github.com/dell/python-powerflex/releases) From 36cf24fe906fc91191fd81c7d23f11b4f9e8ba73 Mon Sep 17 00:00:00 2001 From: sharmb5 Date: Fri, 24 May 2024 05:27:32 -0400 Subject: [PATCH 6/9] Updating github actions --- .github/workflows/ansible-test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ansible-test.yml b/.github/workflows/ansible-test.yml index 76f9538..b8738ab 100644 --- a/.github/workflows/ansible-test.yml +++ b/.github/workflows/ansible-test.yml @@ -19,10 +19,10 @@ jobs: - name: Check out code uses: actions/checkout@v3 - - name: Set up Python 3.11 + - name: Set up Python 3.12 uses: actions/setup-python@v4 with: - python-version: 3.11 + python-version: 3.12 - name: Install ansible (${{ matrix.ansible-version }}) run: pip install https://github.com/ansible/ansible/archive/${{ matrix.ansible-version }}.tar.gz --disable-pip-version-check @@ -48,7 +48,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.9', '3.10', '3.11'] + python: ['3.9', '3.10', '3.11', '3.12'] ansible: - stable-2.15 - stable-2.16 @@ -81,7 +81,7 @@ jobs: needs: [build] strategy: matrix: - python: ['3.9', '3.10', '3.11'] + python: ['3.9', '3.10', '3.11', '3.12'] ansible: - stable-2.15 - stable-2.16 @@ -112,7 +112,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.9", "3.10", "3.11", "3.12"] ansible-version: [stable-2.15, stable-2.16, stable-2.17, devel] exclude: # Ansible-core 2.16 is supported only from Python 3.10 onwards From 22dda2a6b06c3b6dce5e8b33eeea426cd7547895 Mon Sep 17 00:00:00 2001 From: sharmb5 Date: Fri, 24 May 2024 05:43:20 -0400 Subject: [PATCH 7/9] Updating github actions --- .github/workflows/ansible-test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ansible-test.yml b/.github/workflows/ansible-test.yml index b8738ab..76f9538 100644 --- a/.github/workflows/ansible-test.yml +++ b/.github/workflows/ansible-test.yml @@ -19,10 +19,10 @@ jobs: - name: Check out code uses: actions/checkout@v3 - - name: Set up Python 3.12 + - name: Set up Python 3.11 uses: actions/setup-python@v4 with: - python-version: 3.12 + python-version: 3.11 - name: Install ansible (${{ matrix.ansible-version }}) run: pip install https://github.com/ansible/ansible/archive/${{ matrix.ansible-version }}.tar.gz --disable-pip-version-check @@ -48,7 +48,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11'] ansible: - stable-2.15 - stable-2.16 @@ -81,7 +81,7 @@ jobs: needs: [build] strategy: matrix: - python: ['3.9', '3.10', '3.11', '3.12'] + python: ['3.9', '3.10', '3.11'] ansible: - stable-2.15 - stable-2.16 @@ -112,7 +112,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11", "3.12"] + python-version: ["3.9", "3.10", "3.11"] ansible-version: [stable-2.15, stable-2.16, stable-2.17, devel] exclude: # Ansible-core 2.16 is supported only from Python 3.10 onwards From 3492f84541dbf5fa15d4dc10285e8578c361251a Mon Sep 17 00:00:00 2001 From: Datta Date: Fri, 24 May 2024 17:13:57 +0530 Subject: [PATCH 8/9] Upfdating release notes --- CHANGELOG.rst | 2 +- README.md | 2 +- changelogs/changelog.yaml | 2 +- docs/Release Notes.md | 8 +++----- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 528c20f..e95a936 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -10,7 +10,7 @@ v2.5.0 Minor Changes ------------- -- Fixed the roles to support attaching the mdm cluster to the gateway. +- Fixed the roles to support attaching the MDM cluster to the gateway. - The storage pool module has been enhanced to support more features. v2.4.0 diff --git a/README.md b/README.md index 19e3eb7..b4002a0 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ The capabilities of the Ansible modules are managing SDCs, volumes, snapshots, s | **Ansible Modules** | **PowerFlex/VxFlex OS Version** | **SDK version** | **Python version** | **Ansible** | |---------------------|-----------------------|-------|--------------------|--------------------------| -| v2.5.0 |3.6
4.0
4.5
APEX Block Storage for Mircrosoft Azure
APEX Block Storage for AWS | 1.12.0 | 3.9.x
3.10.x
3.11.x | 2.15
2.16
2.17 | +| v2.5.0 |3.6
4.0
4.5
APEX Block Storage for Mircrosoft Azure
APEX Block Storage for AWS | 1.12.0 | 3.9.x
3.10.x
3.11.x
3.12.x | 2.15
2.16
2.17 | * Please follow PyPowerFlex installation instructions on [PyPowerFlex Documentation](https://github.com/dell/python-powerflex) diff --git a/changelogs/changelog.yaml b/changelogs/changelog.yaml index fa85a22..eacc6dd 100644 --- a/changelogs/changelog.yaml +++ b/changelogs/changelog.yaml @@ -167,5 +167,5 @@ releases: changes: minor_changes: - The storage pool module has been enhanced to support more features. - - Fixed the roles to support attaching the mdm cluster to the gateway. + - Fixed the roles to support attaching the MDM cluster to the gateway. release_date: '2024-05-31' diff --git a/docs/Release Notes.md b/docs/Release Notes.md index 5eabb0d..36cf06f 100644 --- a/docs/Release Notes.md +++ b/docs/Release Notes.md @@ -28,7 +28,7 @@ Table 1. Revision history | Revision | Date | Description | |----------|-----------------|-------------------------------------------------------------| -| 01 | May 2024 | Current release of Ansible Modules for Dell PowerFlex 2.5.0 | +| 01 | May 2024 | Current release of Ansible Modules for Dell PowerFlex 2.5.0 | Product description ------------------- @@ -44,10 +44,8 @@ each of the entities. New features and enhancements ----------------------------- Along with the previous release deliverables, this release supports following features - -- Added support for executing Ansible PowerFlex modules and roles on AWS environment. -- Added support for resource group provisioning to validate, deploy, edit, add nodes and delete a resource group. -- The Info module is enhanced to list out all the firmware repository. -- Added support for PowerFlex ansible modules and roles on Azure. + - The storage pool module has been enhanced to support more features. + - Fixed the roles to support attaching the MDM cluster to the gateway. Known issues ------------ From d4986448a4d32cf4066ff0530eadade4c690d370 Mon Sep 17 00:00:00 2001 From: sharmb5 Date: Sat, 25 May 2024 00:32:23 -0400 Subject: [PATCH 9/9] Updating docs --- CHANGELOG.rst | 1 + changelogs/changelog.yaml | 1 + docs/modules/storagepool.rst | 248 +++++++++++++++++++++++++++++++---- 3 files changed, 224 insertions(+), 26 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index e95a936..981bbfc 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -12,6 +12,7 @@ Minor Changes - Fixed the roles to support attaching the MDM cluster to the gateway. - The storage pool module has been enhanced to support more features. +- Added support for PowerFlex Onyx version(4.6.x). v2.4.0 ====== diff --git a/changelogs/changelog.yaml b/changelogs/changelog.yaml index eacc6dd..15db60f 100644 --- a/changelogs/changelog.yaml +++ b/changelogs/changelog.yaml @@ -168,4 +168,5 @@ releases: minor_changes: - The storage pool module has been enhanced to support more features. - Fixed the roles to support attaching the MDM cluster to the gateway. + - Added support for PowerFlex Onyx version(4.6.x). release_date: '2024-05-31' diff --git a/docs/modules/storagepool.rst b/docs/modules/storagepool.rst index 5602fe3..1cc9717 100644 --- a/docs/modules/storagepool.rst +++ b/docs/modules/storagepool.rst @@ -78,6 +78,163 @@ Parameters Enable/Disable RMcache on a specific storage pool. + enable_zero_padding (optional, bool, None) + Enable/Disable zero padding on a specific storage pool. + + + rep_cap_max_ratio (optional, int, None) + Set replication journal capacity of a storage pool. + + + enable_rebalance (optional, bool, None) + Enable/Disable rebalance on a specific storage pool. + + + spare_percentage (optional, int, None) + Set the spare percentage of a specific storage pool. + + + rmcache_write_handling_mode (optional, str, Cached) + Set RM cache write handling mode of a storage pool. + + *Passthrough* Writes skip the cache and are stored in storage only. + + *Cached* Writes are stored in both cache and storage (the default). + + Caching is only performed for IOs whose size is a multiple of 4k bytes. + + + enable_rebuild (optional, bool, None) + Enable/Disable rebuild of a specific storage pool. + + + enable_fragmentation (optional, bool, None) + Enable/Disable fragmentation of a specific storage pool. + + + parallel_rebuild_rebalance_limit (optional, int, None) + Set rebuild/rebalance parallelism limit of a storage pool. + + + persistent_checksum (optional, dict, None) + Enable/Disable persistent checksum of a specific storage pool. + + + enable (optional, bool, None) + Enable / disable persistent checksum. + + + validate_on_read (optional, bool, None) + Validate checksum upon reading data. + + + builder_limit (optional, int, 3072) + Bandwidth limit in KB/s for the checksum building process. + + Valid range is 1024 to 10240. + + + + protected_maintenance_mode_io_priority_policy (optional, dict, None) + Set protected maintenance mode I/O priority policy of a storage pool. + + + policy (optional, str, limitNumOfConcurrentIos) + The I/O priority policy for protected maintenance mode. + + ``unlimited`` Protected maintenance mode IOPS are not limited + + ``limitNumOfConcurrentIos``Limit the number of allowed concurrent protected maintenance mode migration I/Os to the value defined for *concurrent_ios_per_device*. + + ``favorAppIos`` Always limit the number of allowed concurrent protected maintenance mode migration I/Os to value defined for *concurrent_ios_per_device*. + + If application I/Os are in progress, should also limit the bandwidth of protected maintenance mode migration I/Os to the limit defined for the *bw_limit_per_device*. + + + concurrent_ios_per_device (optional, int, None) + The maximum number of concurrent protected maintenance mode migration I/Os per device. + + Valid range is 1 to 20. + + + bw_limit_per_device (optional, int, None) + The maximum bandwidth of protected maintenance mode migration I/Os, in KB per second, per device. + + Valid range is 1024 to 1048576. + + + + vtree_migration_io_priority_policy (optional, dict, None) + Set the I/O priority policy for V-Tree migration for a specific Storage Pool. + + + policy (optional, str, None) + The I/O priority policy for protected maintenance mode. + + ``limitNumOfConcurrentIos`` Limit the number of allowed concurrent V-Tree migration I/Os (default) to the *concurrent_ios_per_device*. + + ``favorAppIos`` Always limit the number of allowed concurrent V-Tree migration I/Os to defined for *concurrent_ios_per_device*. + + If application I/Os are in progress, should also limit the bandwidth of V-Tree migration I/Os to the limit defined for the *bw_limit_per_device*. + + + concurrent_ios_per_device (optional, int, None) + The maximum number of concurrent V-Tree migration I/Os per device. + + Valid range is 1 to 20 + + + bw_limit_per_device (optional, int, None) + The maximum bandwidth of V-Tree migration I/Os, in KB per second, per device. + + Valid range is 1024 to 25600. + + + + rebalance_io_priority_policy (optional, dict, None) + Set the rebalance I/O priority policy for a Storage Pool. + + + policy (optional, str, favorAppIos) + Policy to use for rebalance I/O priority. + + ``unlimited`` Rebalance I/Os are not limited. + + ``limitNumOfConcurrentIos`` Limit the number of allowed concurrent rebalance I/Os. + + ``favorAppIos`` Limit the number and bandwidth of rebalance I/Os when application I/Os are in progress. + + + concurrent_ios_per_device (optional, int, None) + The maximum number of concurrent rebalance I/Os per device. + + Valid range is 1 to 20. + + + bw_limit_per_device (optional, int, None) + The maximum bandwidth of rebalance I/Os, in KB/s, per device. + + Valid range is 1024 to 1048576. + + + + cap_alert_thresholds (optional, dict, None) + Set the threshold for triggering capacity usage alerts. + + Alerts thresholds are calculated from each Storage Pool capacity after deducting the defined amount of spare capacity. + + + high_threshold (optional, int, None) + Threshold of the non-spare capacity of the Storage Pool that will trigger a high-priority alert, expressed as a percentage. + + This value must be lower than the *critical_threshold*. + + + critical_threshold (optional, int, None) + Threshold of the non-spare capacity of the Storage Pool that will trigger a critical-priority alert, expressed as a percentage. + + + state (True, str, None) State of the storage pool. @@ -120,7 +277,7 @@ Notes .. note:: - TRANSITIONAL media type is supported only during modification. - - The *check_mode* is not supported. + - The *check_mode* is supported. - The modules present in the collection named as 'dellemc.powerflex' are built to support the Dell PowerFlex storage platform. @@ -151,37 +308,75 @@ Examples storage_pool_id: "abcd1234ab12r" state: "present" - - name: Create a new storage pool by name - dellemc.powerflex.storagepool: - hostname: "{{hostname}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - storage_pool_name: "ansible_test_pool" - protection_domain_id: "1c957da800000000" - media_type: "HDD" - state: "present" - - - name: Modify a storage pool by name + - name: Create a new Storage pool dellemc.powerflex.storagepool: - hostname: "{{hostname}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - storage_pool_name: "ansible_test_pool" - protection_domain_id: "1c957da800000000" + hostname: "{{ hostname }}" + username: "{{ username }}" + password: "{{ password }}" + validate_certs: "{{ validate_certs }}" + storage_pool_name: "{{ pool_name }}" + protection_domain_name: "{{ protection_domain_name }}" + cap_alert_thresholds: + high_threshold: 30 + critical_threshold: 50 + media_type: "TRANSITIONAL" + enable_zero_padding: true + rep_cap_max_ratio: 40 + rmcache_write_handling_mode: "Passthrough" + spare_percentage: 80 + enable_rebalance: false + enable_fragmentation: false + enable_rebuild: false use_rmcache: true use_rfcache: true + parallel_rebuild_rebalance_limit: 3 + protected_maintenance_mode_io_priority_policy: + policy: "unlimited" + rebalance_io_priority_policy: + policy: "unlimited" + vtree_migration_io_priority_policy: + policy: "limitNumOfConcurrentIos" + concurrent_ios_per_device: 10 + persistent_checksum: + enable: false state: "present" - - name: Rename storage pool by id + - name: Modify a Storage pool by name dellemc.powerflex.storagepool: - hostname: "{{hostname}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - storage_pool_id: "abcd1234ab12r" - storage_pool_new_name: "new_ansible_pool" + hostname: "{{ hostname }}" + username: "{{ username }}" + password: "{{ password }}" + validate_certs: "{{ validate_certs }}" + storage_pool_name: "{{ pool_name }}" + protection_domain_name: "{{ protection_domain_name }}" + storage_pool_new_name: "pool_name_new" + cap_alert_thresholds: + high_threshold: 50 + critical_threshold: 70 + enable_zero_padding: false + rep_cap_max_ratio: 60 + rmcache_write_handling_mode: "Passthrough" + spare_percentage: 90 + enable_rebalance: true + enable_fragmentation: true + enable_rebuild: true + use_rmcache: true + use_rfcache: true + parallel_rebuild_rebalance_limit: 6 + protected_maintenance_mode_io_priority_policy: + policy: "limitNumOfConcurrentIos" + concurrent_ios_per_device: 4 + rebalance_io_priority_policy: + policy: "favorAppIos" + concurrent_ios_per_device: 10 + bw_limit_per_device: 4096 + vtree_migration_io_priority_policy: + policy: "limitNumOfConcurrentIos" + concurrent_ios_per_device: 10 + persistent_checksum: + enable: true + validate_on_read: true + builder_limit: 1024 state: "present" @@ -258,4 +453,5 @@ Authors - Arindam Datta (@dattaarindam) - P Srinivas Rao (@srinivas-rao5) +- Trisha Datta (@trisha-dell)