Skip to content

Commit

Permalink
Merge pull request #37 from dell/RTSv2.1.0
Browse files Browse the repository at this point in the history
Ansible Modules for PowerFlex Version 2.1.0
  • Loading branch information
Bhavneet-Sharma authored Nov 29, 2023
2 parents e7191f4 + 82fad09 commit 7d9eeda
Show file tree
Hide file tree
Showing 66 changed files with 639 additions and 402 deletions.
28 changes: 0 additions & 28 deletions .ansible-lint
Original file line number Diff line number Diff line change
@@ -1,30 +1,2 @@
exclude_paths:
- changelogs/
- .github/
- meta/
- roles/powerflex_sdc/molecule/sdc_installation_invalid_path_rpm/converge.yml
- roles/powerflex_sds/molecule/sds_installation/converge.yml
- roles/powerflex_lia/molecule/lia_installation_invalid_path_rpm/converge.yml
- roles/powerflex_gateway/molecule/gateway_installation_invalid_path_rpm/converge.yml
- roles/powerflex_sdr/molecule/sdr_installation_invalid_path_rpm/converge.yml
- roles/powerflex_webui/molecule/webui_installation_invalid_path_rpm/converge.yml
- roles/powerflex_gateway/defaults/
- roles/powerflex_gateway/vars/
- roles/powerflex_lia/defaults/
- roles/powerflex_lia/vars/
- roles/powerflex_mdm/defaults/
- roles/powerflex_mdm/vars/
- roles/powerflex_sdc/defaults/
- roles/powerflex_sdc/vars/
- roles/powerflex_sdr/defaults/
- roles/powerflex_sdr/vars/
- roles/powerflex_sds/defaults/
- roles/powerflex_sds/vars/
- roles/powerflex_tb/defaults/
- roles/powerflex_tb/vars/
- roles/powerflex_webui/defaults/
- roles/powerflex_webui/vars/
- roles/powerflex_activemq/defaults/
- roles/powerflex_activemq/vars/
- roles/powerflex_config/defaults/
- roles/powerflex_config/vars/
27 changes: 27 additions & 0 deletions .ansible-lint-ignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
roles/powerflex_activemq/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_config/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_gateway/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_gateway/vars/CentOS.yml var-naming[no-role-prefix]
roles/powerflex_gateway/vars/Ubuntu.yml var-naming[no-role-prefix]
roles/powerflex_gateway/vars/RedHat.yml var-naming[no-role-prefix]
roles/powerflex_gateway/vars/SLES.yml var-naming[no-role-prefix]
roles/powerflex_gateway/vars/main.yml var-naming[no-role-prefix]
roles/powerflex_lia/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_lia/vars/main.yml var-naming[no-role-prefix]
roles/powerflex_mdm/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_mdm/vars/main.yml var-naming[no-role-prefix]
roles/powerflex_sdc/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_sdc/vars/main.yml var-naming[no-role-prefix]
roles/powerflex_sdr/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_sds/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_sds/vars/main.yml var-naming[no-role-prefix]
roles/powerflex_tb/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_tb/vars/main.yml var-naming[no-role-prefix]
roles/powerflex_webui/defaults/main.yml var-naming[no-role-prefix]
roles/powerflex_webui/vars/main.yml var-naming[no-role-prefix]
roles/powerflex_gateway/molecule/gateway_installation_invalid_path_rpm/converge.yml var-naming[no-role-prefix]
roles/powerflex_lia/molecule/lia_installation_invalid_path_rpm/converge.yml var-naming[no-role-prefix]
roles/powerflex_sdc/molecule/sdc_installation_invalid_path_rpm/converge.yml var-naming[no-role-prefix]
roles/powerflex_sdr/molecule/sdr_installation_invalid_path_rpm/converge.yml var-naming[no-role-prefix]
roles/powerflex_sds/molecule/sds_installation/converge.yml var-naming[no-role-prefix]
roles/powerflex_webui/molecule/webui_installation_invalid_path_rpm/converge.yml var-naming[no-role-prefix]
41 changes: 25 additions & 16 deletions .github/workflows/ansible-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,15 @@ jobs:
strategy:
fail-fast: false
matrix:
ansible-version: [stable-2.13]
ansible-version: [stable-2.14]
steps:
- name: Check out code
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python 3.11
uses: actions/setup-python@v4
with:
python-version: 3.9
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
Expand All @@ -50,16 +50,16 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11"]
ansible-version: [stable-2.13, stable-2.14, stable-2.15]
ansible-version: [stable-2.14, stable-2.15, stable-2.16]
exclude:
# Python 3.11 is supported only from ansible-core 2.14 onwards
- python-version: "3.11"
ansible-version: stable-2.13
# Ansible-core 2.16 is supported only from Python 3.10 onwards
- python-version: "3.9"
ansible-version: stable-2.16


steps:
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

Expand Down Expand Up @@ -93,15 +93,20 @@ jobs:
strategy:
fail-fast: false
matrix:
ansible-version: [stable-2.13, stable-2.14, stable-2.15]
python-version: ["3.9", "3.10", "3.11"]
ansible-version: [stable-2.14, stable-2.15, stable-2.16]
exclude:
# Ansible-core 2.16 is supported only from Python 3.10 onwards
- python-version: "3.9"
ansible-version: stable-2.16

steps:
- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python 3.11
uses: actions/setup-python@v4
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.9
python-version: 3.11

- 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
Expand Down Expand Up @@ -130,7 +135,11 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11"]
ansible-version: [stable-2.13, stable-2.14, stable-2.15]
ansible-version: [stable-2.14, stable-2.15, stable-2.16]
exclude:
# Ansible-core 2.16 is supported only from Python 3.10 onwards
- python-version: "3.9"
ansible-version: stable-2.16

steps:
# Important: This sets up your GITHUB_WORKSPACE environment variable
Expand All @@ -140,7 +149,7 @@ jobs:
fetch-depth: 0 # needed for progressive mode to work

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

Expand Down
13 changes: 11 additions & 2 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,25 @@ Dellemc.PowerFlex Change Logs

.. contents:: Topics


v2.1.0
======

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

- Added support for PowerFlex Denver version(4.5.x) to TB and Config role.

v2.0.1
======

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

- Added Ansible role to support creation and deletion of protection domain, storage pool and fault set.
- Added Ansible role to support installation and uninstallation of Active MQ.
- Added support for PowerFlex Denver version(4.5.x)
- Added support for SDC installation on ESXi, Rocky Linux and Windows OS.
- Added Ansible role to support installation and uninstallation of Active MQ.
- Added Ansible role to support creation and deletion of protection domain, storage pool and fault set.

v1.9.0
======
Expand Down
50 changes: 25 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,58 +6,58 @@ The capabilities of the Ansible modules are managing SDCs, volumes, snapshots, s

## Table of contents

* [Code of conduct](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/CODE_OF_CONDUCT.md)
* [Maintainer guide](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/MAINTAINER_GUIDE.md)
* [Committer guide](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/COMMITTER_GUIDE.md)
* [Contributing guide](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/CONTRIBUTING.md)
* [Branching strategy](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/BRANCHING.md)
* [List of adopters](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/ADOPTERS.md)
* [Maintainers](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/MAINTAINERS.md)
* [Support](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/SUPPORT.md)
* [Code of conduct](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/CODE_OF_CONDUCT.md)
* [Maintainer guide](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/MAINTAINER_GUIDE.md)
* [Committer guide](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/COMMITTER_GUIDE.md)
* [Contributing guide](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/CONTRIBUTING.md)
* [Branching strategy](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/BRANCHING.md)
* [List of adopters](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/ADOPTERS.md)
* [Maintainers](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/MAINTAINERS.md)
* [Support](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/SUPPORT.md)
* [License](#license)
* [Security](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/SECURITY.md)
* [Security](https://github.com/dell/ansible-powerflex/blob/2.1.0/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.0.1/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.0.1/MODULE-LICENSE) for the full terms.
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.1.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.1.0/MODULE-LICENSE) for the full terms.

## Prerequisites

| **Ansible Modules** | **PowerFlex/VxFlex OS Version** | **SDK version** | **Python version** | **Ansible** |
|---------------------|-----------------------|-------|--------------------|--------------------------|
| v2.0.1 |3.6 <br> 4.0 <br> 4.5 | 1.8.0 | 3.9.x <br> 3.10.x <br> 3.11.x | 2.13 <br> 2.14 <br> 2.15 |
| v2.1.0 |3.6 <br> 4.0 <br> 4.5 | 1.8.0 | 3.9.x <br> 3.10.x <br> 3.11.x | 2.14 <br> 2.15 <br> 2.16 |

* 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.0.1/docs/modules/info.rst)
* [Snapshot module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/snapshot.rst)
* [SDC module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/sdc.rst)
* [Storage pool module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/storagepool.rst)
* [Volume module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/volume.rst)
* [SDS module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/sds.rst)
* [Device Module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/device.rst)
* [Protection Domain Module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/protection_domain.rst)
* [MDM Cluster Module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/mdm_cluster.rst)
* [Replication Consistency Grop Module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/replication_consistency_group.rst)
* [Replication Pair Module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/replication_pair.rst)
* [Snapshot Policy Module](https://github.com/dell/ansible-powerflex/blob/2.0.1/docs/modules/snapshot_policy.rst)
* [Info module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/info.rst)
* [Snapshot module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/snapshot.rst)
* [SDC module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/sdc.rst)
* [Storage pool module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/storagepool.rst)
* [Volume module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/volume.rst)
* [SDS module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/sds.rst)
* [Device Module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/device.rst)
* [Protection Domain Module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/protection_domain.rst)
* [MDM Cluster Module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/mdm_cluster.rst)
* [Replication Consistency Grop Module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/replication_consistency_group.rst)
* [Replication Pair Module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/replication_pair.rst)
* [Snapshot Policy Module](https://github.com/dell/ansible-powerflex/blob/2.1.0/docs/modules/snapshot_policy.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.0.1/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/2.1.0/docs/INSTALLATION.md).

## Releasing, Maintenance and Deprecation

Ansible Modules for Dell Technnologies 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.0.1/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/2.1.0/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).
2 changes: 1 addition & 1 deletion changelogs/.plugin-cache.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -76,4 +76,4 @@ plugins:
strategy: {}
test: {}
vars: {}
version: 1.9.0
version: 2.1.0
Loading

0 comments on commit 7d9eeda

Please sign in to comment.