Skip to content

Commit

Permalink
Merge pull request #72 from felixs88/rel-2.5.0
Browse files Browse the repository at this point in the history
Release 2.5.0 PowerScale
  • Loading branch information
Bhavneet-Sharma authored Feb 27, 2024
2 parents 9711ce6 + f4e484f commit 96a90e4
Show file tree
Hide file tree
Showing 32 changed files with 1,853 additions and 262 deletions.
98 changes: 40 additions & 58 deletions .github/workflows/ansible-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@ name: CI

on:
push:
branches: [ main ]
branches: [main]
pull_request:
branches: [ main ]
schedule:
- cron: '0 3 * * *'

Expand All @@ -15,7 +14,7 @@ jobs:
strategy:
fail-fast: false
matrix:
ansible-version: [stable-2.14]
ansible-version: [stable-2.14, stable-2.15, stable-2.16, devel]
steps:
- name: Check out code
uses: actions/checkout@v3
Expand Down Expand Up @@ -43,87 +42,68 @@ jobs:
# https://docs.ansible.com/ansible/latest/dev_guide/testing_units.html

unit:
name: Unit Tests
name: Unit Tests (Ⓐ${{ matrix.ansible }} with ${{ matrix.python }} python)
needs: [build]
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11"]
ansible-version: [stable-2.14, stable-2.15, stable-2.16]
python: ['3.9', '3.10', '3.11']
ansible:
- stable-2.14
- stable-2.15
- stable-2.16
- devel
exclude:
# Ansible-core 2.16 is supported only from Python 3.10 onwards
- python-version: "3.9"
ansible-version: stable-2.16
- ansible: stable-2.16
python: '3.9'
- ansible: devel
python: '3.9'

steps:
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
- name: Perform unit testing with ansible-test
uses: ansible-community/ansible-test-gh-action@release/v1
with:
python-version: ${{ matrix.python-version }}
testing-type: units
coverage: always
ansible-core-version: ${{ matrix.ansible }}
target-python-version: ${{ matrix.python }}

- 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
with:
name: collection
path: .cache/collection-tarballs

- name: Setup Unit test Pre-requisites
run: |
ansible-galaxy collection install .cache/collection-tarballs/*.tar.gz
if [ -f /home/runner/.ansible/collections/ansible_collections/dellemc/powerscale/tests/requirements.txt ]; then pip install -r /home/runner/.ansible/collections/ansible_collections/dellemc/powerscale/tests/requirements.txt; fi
- name: Run Unit tests using ansible-test
run: ansible-test units -v --color --python ${{ matrix.python-version }} --coverage
working-directory: /home/runner/.ansible/collections/ansible_collections/dellemc/powerscale

###
# Sanity tests (REQUIRED)
#
# https://docs.ansible.com/ansible/latest/dev_guide/testing_sanity.html

sanity:
name: Sanity Tests
name: Sanity (Ⓐ${{ matrix.ansible }} with ${{ matrix.python }} python)
runs-on: ubuntu-latest
needs: [build]
strategy:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11"]
ansible-version: [stable-2.14, stable-2.15, stable-2.16]
python: ['3.9', '3.10', '3.11']
ansible:
- stable-2.14
- stable-2.15
- stable-2.16
- devel
exclude:
# Ansible-core 2.16 is supported only from Python 3.10 onwards
- python-version: "3.9"
ansible-version: stable-2.16
- ansible: stable-2.16
python: '3.9'
- ansible: devel
python: '3.9'

steps:
- 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.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

- 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
ansible-core-version: ${{ matrix.ansible }}
target-python-version: ${{ matrix.python }}
testing-type: sanity
pull-request-change-detection: true
coverage: never

- 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/powerscale
lint:
name: Ansible lint
runs-on: ubuntu-latest
Expand All @@ -132,10 +112,12 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11"]
ansible-version: [stable-2.14, stable-2.15, stable-2.16]
ansible-version: [stable-2.14, stable-2.15, stable-2.16, devel]
exclude:
- ansible-version: stable-2.16
python-version: '3.9'
- ansible-version: devel
python-version: '3.9'

steps:
# Important: This sets up your GITHUB_WORKSPACE environment variable
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
output
__pycache__/
*.log
14 changes: 14 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,20 @@ Dellemc.Powerscale Change Logs

.. contents:: Topics


v2.5.0
======

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

- Added support for listing server certificates in Info module.

New Modules
-----------

- dellemc.powerscale.server_certificate - Manage server certificates on a PowerScale Storage System.

v2.4.1
======

Expand Down
102 changes: 52 additions & 50 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,20 +35,21 @@ The Ansible Modules for Dell PowerScale support the following features:
- Get details, modify, import, and delete SyncIQ certificates.
- Get details and modify SMB global settings.
- Get details and modify SNMP settings.
- Get details, import, modify, setting default and delete server certificates.

The tasks can be executed by running simple playbooks written in yaml syntax.

## Table of contents

* [Code of conduct](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/CODE_OF_CONDUCT.md)
* [Maintainer guide](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/MAINTAINER_GUIDE.md)
* [Committer guide](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/COMMITTER_GUIDE.md)
* [Contributing guide](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/CONTRIBUTING.md)
* [Branching strategy](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/BRANCHING.md)
* [List of adopters](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/ADOPTERS.md)
* [Maintainers](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/MAINTAINERS.md)
* [Support](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/SUPPORT.md)
* [Security](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/SECURITY.md)
* [Code of conduct](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/CODE_OF_CONDUCT.md)
* [Maintainer guide](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/MAINTAINER_GUIDE.md)
* [Committer guide](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/COMMITTER_GUIDE.md)
* [Contributing guide](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/CONTRIBUTING.md)
* [Branching strategy](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/BRANCHING.md)
* [List of adopters](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/ADOPTERS.md)
* [Maintainers](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/MAINTAINERS.md)
* [Support](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/SUPPORT.md)
* [Security](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/SECURITY.md)
* [License](#license)
* [Supported platforms](#supported-platforms)
* [Prerequisites](#prerequisites)
Expand All @@ -57,7 +58,7 @@ The tasks can be executed by running simple playbooks written in yaml syntax.
* [Maintanence](#maintanence)

## License
Ansible collection for PowerScale is released and licensed under the GPL-3.0 license. See [LICENSE](https://github.com/dell/ansible-powerscale/blob/2.4.1/LICENSE) for the full terms. Ansible modules and modules utilities that are part of the Ansible collection for PowerScale are released and licensed under the Apache 2.0 license. See [MODULE-LICENSE](https://github.com/dell/ansible-powerscale/blob/2.4.1/MODULE-LICENSE) for the full terms.
Ansible collection for PowerScale is released and licensed under the GPL-3.0 license. See [LICENSE](https://github.com/dell/ansible-powerscale/blob/2.5.0/LICENSE) for the full terms. Ansible modules and modules utilities that are part of the Ansible collection for PowerScale are released and licensed under the Apache 2.0 license. See [MODULE-LICENSE](https://github.com/dell/ansible-powerscale/blob/2.5.0/MODULE-LICENSE) for the full terms.

## Supported platforms
* Dell PowerScale OneFS versions 9.3.x, 9.4.x and 9.5.x
Expand All @@ -67,51 +68,52 @@ This table provides information about the software prerequisites for the Ansible

| **Ansible Modules** | **OneFS Version** | **Python version** | **Python SDK version** | **Ansible** |
|---------------------|-----------------------|--------------------|----------------------------|--------------------------|
| v2.4.1 | 9.3.x <br> 9.4.x <br> 9.5.x | 3.9 <br> 3.10 <br> 3.11 | 9.3.0 <br> 9.4.0 <br> 9.5.0 | 2.14 <br> 2.15 <br> 2.16 |
| v2.5.0 | 9.3.x <br> 9.4.x <br> 9.5.x | 3.9 <br> 3.10 <br> 3.11 | 0.3.0.1 | 2.14 <br> 2.15 <br> 2.16 |

# List of Ansible modules for Dell PowerScale
* [File System Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/filesystem.rst)
* [Access Zone Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/accesszone.rst)
* [User Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/user.rst)
* [Group Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/group.rst)
* [Snapshot Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/snapshot.rst)
* [Snapshot Schedule Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/snapshotschedule.rst)
* [NFS Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/nfs.rst)
* [SMB Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/smb.rst)
* [Smart Quota Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/smartquota.rst)
* [Info Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/info.rst)
* [Active Directory Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/ads.rst)
* [LDAP Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/ldap.rst)
* [Node Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/node.rst)
* [SyncIQ Policy Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/synciqpolicy.rst)
* [SyncIQ Jobs Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/synciqjob.rst)
* [SyncIQ Performance Rules Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/synciqrules.rst)
* [SyncIQ Reports Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/synciqreports.rst)
* [SyncIQ Target Reports Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/synciqtargetreports.rst)
* [Groupnet Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/groupnet.rst)
* [Subnet Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/subnet.rst)
* [Network Pool Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/networkpool.rst)
* [Network Rule Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/networkrule.rst)
* [NFS Alias Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/nfs_alias.rst)
* [Settings Module](https://github.com/dell/ansible-powerscale/tree/2.4.1/docs/modules/settings.rst)
* [Network Setting Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/networksettings.rst)
* [Smart Pool Setting Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/smartpoolsettings.rst)
* [Filepool Policy Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/filepoolpolicy.rst)
* [Storagepool Tier Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/storagepooltier.rst)
* [SMB File Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/smb_file.rst)
* [User Mapping Rule Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/user_mapping_rule.rst)
* [S3 Bucket Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/s3_bucket.rst)
* [NFS Default Settings Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/nfs_default_settings.rst)
* [NFS Global Settings Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/nfs_global_settings.rst)
* [NFS Zone Settings Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/nfs_zone_settings.rst)
* [SyncIQ Global Settings Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/synciq_global_settings.rst)
* [SyncIQ Certificate Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/synciqcertificate.rst)
* [SMB Global Settings Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/smb_global_settings.rst)
* [SNMP Settings Module](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/modules/snmp_settings.rst)
* [File System Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/filesystem.rst)
* [Access Zone Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/accesszone.rst)
* [User Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/user.rst)
* [Group Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/group.rst)
* [Snapshot Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/snapshot.rst)
* [Snapshot Schedule Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/snapshotschedule.rst)
* [NFS Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/nfs.rst)
* [SMB Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/smb.rst)
* [Smart Quota Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/smartquota.rst)
* [Info Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/info.rst)
* [Active Directory Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/ads.rst)
* [LDAP Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/ldap.rst)
* [Node Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/node.rst)
* [SyncIQ Policy Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/synciqpolicy.rst)
* [SyncIQ Jobs Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/synciqjob.rst)
* [SyncIQ Performance Rules Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/synciqrules.rst)
* [SyncIQ Reports Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/synciqreports.rst)
* [SyncIQ Target Reports Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/synciqtargetreports.rst)
* [Groupnet Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/groupnet.rst)
* [Subnet Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/subnet.rst)
* [Network Pool Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/networkpool.rst)
* [Network Rule Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/networkrule.rst)
* [NFS Alias Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/nfs_alias.rst)
* [Settings Module](https://github.com/dell/ansible-powerscale/tree/2.5.0/docs/modules/settings.rst)
* [Network Setting Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/networksettings.rst)
* [Smart Pool Setting Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/smartpoolsettings.rst)
* [Filepool Policy Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/filepoolpolicy.rst)
* [Storagepool Tier Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/storagepooltier.rst)
* [SMB File Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/smb_file.rst)
* [User Mapping Rule Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/user_mapping_rule.rst)
* [S3 Bucket Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/s3_bucket.rst)
* [NFS Default Settings Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/nfs_default_settings.rst)
* [NFS Global Settings Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/nfs_global_settings.rst)
* [NFS Zone Settings Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/nfs_zone_settings.rst)
* [SyncIQ Global Settings Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/synciq_global_settings.rst)
* [SyncIQ Certificate Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/synciqcertificate.rst)
* [SMB Global Settings Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/smb_global_settings.rst)
* [SNMP Settings Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/snmp_settings.rst)
* [Server Certificate Module](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/modules/server_certificate.rst)


## Installation and execution of Ansible modules for Dell PowerScale
The installation and execution steps of Ansible modules for Dell PowerScale can be found [here](https://github.com/dell/ansible-powerscale/blob/2.4.1/docs/INSTALLATION.md).
The installation and execution steps of Ansible modules for Dell PowerScale can be found [here](https://github.com/dell/ansible-powerscale/blob/2.5.0/docs/INSTALLATION.md).

## Maintenance
Ansible Modules for Dell Technologies PowerScale deprecation cycle is aligned with [Ansible](https://docs.ansible.com/ansible/latest/dev_guide/module_lifecycle.html).
9 changes: 9 additions & 0 deletions changelogs/changelog.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -255,3 +255,12 @@ releases:
minor_changes:
- Document link fixes in README.
release_date: '2023-12-29'
2.5.0:
changes:
minor_changes:
- Added support for listing server certificates in Info module.
modules:
- description: Manage server certificates on a PowerScale Storage System.
name: server_certificate
namespace: ''
release_date: '2024-02-29'
3 changes: 3 additions & 0 deletions codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
fixes:
- "/ansible_collections/dellemc/powerscale/::"
Loading

0 comments on commit 96a90e4

Please sign in to comment.