diff options
Diffstat (limited to 'ansible_collections/dellemc/unity')
32 files changed, 1138 insertions, 1137 deletions
diff --git a/ansible_collections/dellemc/unity/.github/workflows/ansible-test.yml b/ansible_collections/dellemc/unity/.github/workflows/ansible-test.yml index 58d3ea030..ff8d181f8 100644 --- a/ansible_collections/dellemc/unity/.github/workflows/ansible-test.yml +++ b/ansible_collections/dellemc/unity/.github/workflows/ansible-test.yml @@ -2,9 +2,8 @@ name: CI on: push: - branches: [ main ] + branches: [main] pull_request: - branches: [ main ] schedule: - cron: '0 3 * * *' @@ -15,15 +14,15 @@ jobs: strategy: fail-fast: false matrix: - ansible-version: [stable-2.13] + ansible-version: [stable-2.14, stable-2.15, stable-2.16, devel] 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 @@ -39,45 +38,36 @@ jobs: ### # Unit tests (OPTIONAL) - # + # # 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.13, stable-2.14, stable-2.15] + python: ['3.9', '3.10', '3.11'] + ansible: + - stable-2.14 + - stable-2.15 + - stable-2.16 + - devel exclude: - # Python 3.11 is supported only from ansible-core 2.14 onwards - - python-version: "3.11" - ansible-version: stable-2.13 + - ansible: stable-2.16 + python: '3.9' + - ansible: devel + python: '3.9' steps: - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v1 + - name: Perform unit testing with ansible-test + uses: ansible-community/ansible-test-gh-action@release/v1 with: - python-version: ${{ matrix.python-version }} - - - 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/unity/tests/requirements.txt ]; then pip install -r /home/runner/.ansible/collections/ansible_collections/dellemc/unity/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/unity + testing-type: units + coverage: always + ansible-core-version: ${{ matrix.ansible }} + target-python-version: ${{ matrix.python }} ### # Sanity tests (REQUIRED) @@ -85,40 +75,31 @@ 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 }} python) needs: [build] strategy: - fail-fast: false matrix: - ansible-version: [stable-2.13, stable-2.14, stable-2.15] - + python: ['3.9', '3.10', '3.11'] + ansible: + - stable-2.14 + - stable-2.15 + - stable-2.16 + - devel + exclude: + - ansible: stable-2.16 + python: '3.9' + - ansible: devel + python: '3.9' + runs-on: ubuntu-latest steps: - - name: Set up Python 3.9 - 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.9 - - - 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/unity + ansible-core-version: ${{ matrix.ansible }} + target-python-version: ${{ matrix.python }} + testing-type: sanity + pull-request-change-detection: true + coverage: never lint: name: Ansible lint @@ -128,7 +109,13 @@ 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, 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: devel steps: # Important: This sets up your GITHUB_WORKSPACE environment variable @@ -138,7 +125,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 }} diff --git a/ansible_collections/dellemc/unity/CHANGELOG.rst b/ansible_collections/dellemc/unity/CHANGELOG.rst index cf231b653..db0cba7c9 100644 --- a/ansible_collections/dellemc/unity/CHANGELOG.rst +++ b/ansible_collections/dellemc/unity/CHANGELOG.rst @@ -5,6 +5,14 @@ Dellemc.Unity Change Log .. contents:: Topics +v2.0.0 +====== + +Major Changes +------------- + +- Adding support for Unity Puffin v5.4. + v1.7.1 ====== diff --git a/ansible_collections/dellemc/unity/FILES.json b/ansible_collections/dellemc/unity/FILES.json index 24ae1cf93..41fadaabe 100644 --- a/ansible_collections/dellemc/unity/FILES.json +++ b/ansible_collections/dellemc/unity/FILES.json @@ -88,14 +88,14 @@ "name": ".github/workflows/ansible-test.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d648c6b2038a891200af1f6ae981928a37427a14b230e0b7b6ba030cae29a37a", + "chksum_sha256": "8037200617d1da54d6765489808d93bdfec01ee19dbfb2501f75472b129cfdbd", "format": 1 }, { "name": "CHANGELOG.rst", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0f7304d22c291fa4120f7f01ce4db2d000c00d422fd5fb2a4b2cc771e49c43f6", + "chksum_sha256": "49a0181850cb1896fb91301602356f71bac6229aedbfa49e39165cf2f1c6fc16", "format": 1 }, { @@ -116,7 +116,7 @@ "name": "README.md", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e9dda8bf38a7da066fc2fbfff79d3945479c31549df311b3d18229fb2e3634ed", + "chksum_sha256": "acc1e7f5a6d9b72232c26f27a06ecbf34043892d00be230bf3da54127e4a78f0", "format": 1 }, { @@ -130,14 +130,14 @@ "name": "changelogs/.plugin-cache.yaml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4869399d305f2a50f7f0abe8a42823ecd1ca153957ed55d8b913bfda4b9dbfae", + "chksum_sha256": "72d1d5770f6286724c4779f5cb9834744592752ec99e45c61b0aa5999424664e", "format": 1 }, { "name": "changelogs/changelog.yaml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0c48d1c2f86f067385dfee3d1c7e4355b42325860936dd4395ecde150b7d894d", + "chksum_sha256": "3e57f1dd9c6bdcfaf29a2929b93a16dee2ec96969ae0e2982be0e5fb41ddc3bf", "format": 1 }, { @@ -186,21 +186,21 @@ "name": "docs/CONTRIBUTING.md", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4cf604f9b0b86445fa475876590076d016fa422d2b062e4242e6c4060e3b6738", + "chksum_sha256": "8d2a10e85fc5c68607e5083dcb778fcb660fe6b572c8bd31afdcce5c9bc6320a", "format": 1 }, { "name": "docs/INSTALLATION.md", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "eb198be51142a91a0196541ff636aabbb68f17e34de329213a41c83ad3059923", + "chksum_sha256": "00f59d4b14622649360cef3f83f3aee72f4a0f46b7b650ae9b4a33dc66e4515c", "format": 1 }, { "name": "docs/ISSUE_TRIAGE.md", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c5a6b4bd9e4875696f16454844a45f7b2cf95102f1960c1a25cf5e2dafff3e14", + "chksum_sha256": "1348c93aaa1d3836b185e4c23aa184c413a65374323f11a8fe34efcc1d8573bb", "format": 1 }, { @@ -214,21 +214,21 @@ "name": "docs/MAINTAINER_GUIDE.md", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9c3558b79f0913255880f5d2066b98dd2ca5e1e51bce28ccb3bf6cac390a23d7", + "chksum_sha256": "eeb2a871e29bec756dad05bab627baa40a897bfde5026b7f3d62b1af30d0972b", "format": 1 }, { "name": "docs/Release Notes.md", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3d01761e2b3a2260eeb24e776c773a89a37389156e7e4d43b9c77d24d0506afa", + "chksum_sha256": "9c615cde875875a36bc46715104048e6ccb4cb7b53a8bab1d61b90214d27ee71", "format": 1 }, { "name": "docs/SECURITY.md", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "11f2d0c94f6b4e19e25a683d25d7dda948f9c4c05bd23fc5e40eeaf23f84cf00", + "chksum_sha256": "894bd4282359004513506335feccdf9a793089a9c526715769709a066f8181b4", "format": 1 }, { @@ -389,7 +389,7 @@ "name": "meta/runtime.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0d8f17122fc4d22811162d2eb588ef6ffdc292b62b1df6beea44e5f5fedad1d6", + "chksum_sha256": "6b62595744e5b1751e79f2f3b85307187267ed35fa9e07e51565977aceea730c", "format": 1 }, { @@ -550,7 +550,7 @@ "name": "plugins/doc_fragments/unity.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "cf04d65ed0cf78f3979951670bace9f5930ede590cafc562bc7db97ce16238d9", + "chksum_sha256": "97effad53be187a731145b4a9c9677761cf7ff4a0cf161c79a24978e3979efc1", "format": 1 }, { @@ -613,21 +613,21 @@ "name": "plugins/modules/consistencygroup.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4db39611403cf3c3acd0290d26f7de37bf680a50d51b86106b1658060f9e3af3", + "chksum_sha256": "fb947e18d9f16759c9d70d798da599c3ab70657b5a607a976580d6ae18fd8385", "format": 1 }, { "name": "plugins/modules/filesystem.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c3f3ff2fd8bb07a600a25cecaf00caa533dd8d242903cdd24dc8c25381953d63", + "chksum_sha256": "9ac48b349e8a531bc2afef0738027e235a88258dd1fe425776156b84b19f5829", "format": 1 }, { "name": "plugins/modules/filesystem_snapshot.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c9c6eb9dbf17604409652740babf1bac714c487d56f78dae4fd5dbab88037cb2", + "chksum_sha256": "f1b23cb93d784f389f4cb77a8cdd87d0290306c61b81a33a19f2e135824fbb72", "format": 1 }, { @@ -641,35 +641,35 @@ "name": "plugins/modules/info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9653d4b095f23e5b1dfd53c5485611457bffe6807643f898635d4bc41c74630e", + "chksum_sha256": "43357b1c6078d84c8b62f99e79acec81bcbf5cabc42075999ada0becc858c50b", "format": 1 }, { "name": "plugins/modules/interface.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ed2d921df52b3a54e41f5279240402f290c9f4d5a7c36c4ccb442fb0b7bc0f02", + "chksum_sha256": "6535e43d4c858d48866f6e3c155eddcc05c477eef51e73ae1102639431e0fb66", "format": 1 }, { "name": "plugins/modules/nasserver.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c9909cc77062b9e43e54f2b62b3407412cc68915b5e7bc8f0b3726bec091b381", + "chksum_sha256": "17bf38bb733c7246c6dc65699d835795d06697f9284ad1fb0f6b0a8ea10da085", "format": 1 }, { "name": "plugins/modules/nfs.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "72d5eb3a6bed5969eb5e656bdf1965bce77a790c7e0f6909019ab493dd7cb08e", + "chksum_sha256": "07405be0249c332c2322c1c46e51b3bb48e8217f5be338487df4cc5bf8c5e8be", "format": 1 }, { "name": "plugins/modules/nfsserver.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4629fa9ca28f77bd3de962fe5ee226a814153bdce75d3d8c6089210217a4c3e2", + "chksum_sha256": "debebbe1ef1c98c722bb679353dd7e92b3e4a34954a3a8b32dad08b0df23755d", "format": 1 }, { @@ -690,42 +690,42 @@ "name": "plugins/modules/snapshot.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "05f8a7b43e33347e1a71283c87f1af24a696836b52ffb271e96c601ca74d6ba4", + "chksum_sha256": "9a9dec578628d100f86732add0e2bd4be2405838c860204c7d1fa1e3f5c8a412", "format": 1 }, { "name": "plugins/modules/snapshotschedule.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6214c681ce55b24a89c8307e55d56f770665227d40929e918d906c20570a0c2d", + "chksum_sha256": "c9df424fece2c13b309104226532c1a93a9599d74a303edfb27b631d3fa8e800", "format": 1 }, { "name": "plugins/modules/storagepool.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "da90ecfe49e95add45dd9b936905d5d8e3076ad3aab4416ec9823583ad1c4cd3", + "chksum_sha256": "af53c0decab1b392b20629063ac56a14ca33590fca39d1874ce443891ec9d1f3", "format": 1 }, { "name": "plugins/modules/tree_quota.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "494320b0e7cc55515bb85d9a39e20f4c01a8dfbafae9b3855e46ec3a3c98898b", + "chksum_sha256": "a482d31390d4bf1e3b5b9ec0292b117d048e6358188c83bfc57436023b545b7f", "format": 1 }, { "name": "plugins/modules/user_quota.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bd9b8bc4f0b76cea3e13d0ccf7ec7ac1f41ab3d73609d732c07720aac1df99b1", + "chksum_sha256": "9050b4578577fee994f237d3a51d1741eef8d6c8491b7e9f904f830804fba3dd", "format": 1 }, { "name": "plugins/modules/volume.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d93a6b6a055cbe33647c1386b2e9efdc86465c286a5a79b02e0370497a8b4b2b", + "chksum_sha256": "fee4db702477dd8aabe83516e4db9c23d1af7fcd25fc62bf22e8577e1348da88", "format": 1 }, { @@ -750,13 +750,6 @@ "format": 1 }, { - "name": "tests/requirements.txt", - "ftype": "file", - "chksum_type": "sha256", - "chksum_sha256": "65e6091d1c8d88a703555bd13590bb95248fb0b7376d3ed1d660e2b9d65581c8", - "format": 1 - }, - { "name": "tests/sanity", "ftype": "dir", "chksum_type": null, @@ -764,24 +757,31 @@ "format": 1 }, { - "name": "tests/sanity/ignore-2.13.txt", + "name": "tests/sanity/ignore-2.14.txt", "ftype": "file", "chksum_type": "sha256", "chksum_sha256": "8286d2f238aa5a2835bdd8a9ff38663a0e70b416a2b4a2971a54d75d76a349e7", "format": 1 }, { - "name": "tests/sanity/ignore-2.14.txt", + "name": "tests/sanity/ignore-2.15.txt", "ftype": "file", "chksum_type": "sha256", "chksum_sha256": "8286d2f238aa5a2835bdd8a9ff38663a0e70b416a2b4a2971a54d75d76a349e7", "format": 1 }, { - "name": "tests/sanity/ignore-2.15.txt", + "name": "tests/sanity/ignore-2.16.txt", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "8286d2f238aa5a2835bdd8a9ff38663a0e70b416a2b4a2971a54d75d76a349e7", + "chksum_sha256": "99746c6aa2cae22324034503cb91b384afa154aa8a5a14b89c9d0857efff1d28", + "format": 1 + }, + { + "name": "tests/sanity/ignore-2.17.txt", + "ftype": "file", + "chksum_type": "sha256", + "chksum_sha256": "9df23cfd54d708a73ad687d70f1d124a54a162647ab4eccdee4ffe21a419d896", "format": 1 }, { @@ -993,6 +993,13 @@ "chksum_type": "sha256", "chksum_sha256": "5bc48d2969cfaa5670ab538ba51cef532e1c3177004e2a2d6dbbd2cd7b4e7714", "format": 1 + }, + { + "name": "tests/unit/requirements.txt", + "ftype": "file", + "chksum_type": "sha256", + "chksum_sha256": "65e6091d1c8d88a703555bd13590bb95248fb0b7376d3ed1d660e2b9d65581c8", + "format": 1 } ], "format": 1 diff --git a/ansible_collections/dellemc/unity/MANIFEST.json b/ansible_collections/dellemc/unity/MANIFEST.json index fbd2511d5..ad7d7f85d 100644 --- a/ansible_collections/dellemc/unity/MANIFEST.json +++ b/ansible_collections/dellemc/unity/MANIFEST.json @@ -2,7 +2,7 @@ "collection_info": { "namespace": "dellemc", "name": "unity", - "version": "1.7.1", + "version": "2.0.0", "authors": [ "Akash Shendge <ansible.team@dell.com>", "Ambuj Dubey <ansible.team@dell.com>", @@ -25,16 +25,16 @@ ], "license_file": null, "dependencies": {}, - "repository": "https://github.com/dell/ansible-unity/tree/1.7.1", - "documentation": "https://github.com/dell/ansible-unity/tree/1.7.1/docs", - "homepage": "https://github.com/dell/ansible-unity/tree/1.7.1", + "repository": "https://github.com/dell/ansible-unity/tree/2.0.0", + "documentation": "https://github.com/dell/ansible-unity/tree/2.0.0/docs", + "homepage": "https://github.com/dell/ansible-unity/tree/2.0.0", "issues": "https://www.dell.com/community/Automation/bd-p/Automation" }, "file_manifest_file": { "name": "FILES.json", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3a6859700a30b9a90ae32f32e2e99b09a7289bf793832b1657a943ecdb8604d8", + "chksum_sha256": "0cde7569a5266f0469d36b79b9c3e2618cf770d1da7f06b2060bc529f28f59a9", "format": 1 }, "format": 1 diff --git a/ansible_collections/dellemc/unity/README.md b/ansible_collections/dellemc/unity/README.md index a50754721..19d5b1757 100644 --- a/ansible_collections/dellemc/unity/README.md +++ b/ansible_collections/dellemc/unity/README.md @@ -6,60 +6,60 @@ The capabilities of the Ansible modules are managing consistency groups, filesys ## Table of contents -* [Code of conduct](https://github.com/dell/ansible-unity/blob/1.7.1/docs/CODE_OF_CONDUCT.md) -* [Maintainer guide](https://github.com/dell/ansible-unity/blob/1.7.1/docs/MAINTAINER_GUIDE.md) -* [Committer guide](https://github.com/dell/ansible-unity/blob/1.7.1/docs/COMMITTER_GUIDE.md) -* [Contributing guide](https://github.com/dell/ansible-unity/blob/1.7.1/docs/CONTRIBUTING.md) -* [Branching strategy](https://github.com/dell/ansible-unity/blob/1.7.1/docs/BRANCHING.md) -* [List of adopters](https://github.com/dell/ansible-unity/blob/1.7.1/docs/ADOPTERS.md) -* [Maintainers](https://github.com/dell/ansible-unity/blob/1.7.1/docs/MAINTAINERS.md) -* [Support](https://github.com/dell/ansible-unity/blob/1.7.1/docs/SUPPORT.md) +* [Code of conduct](https://github.com/dell/ansible-unity/blob/2.0.0/docs/CODE_OF_CONDUCT.md) +* [Maintainer guide](https://github.com/dell/ansible-unity/blob/2.0.0/docs/MAINTAINER_GUIDE.md) +* [Committer guide](https://github.com/dell/ansible-unity/blob/2.0.0/docs/COMMITTER_GUIDE.md) +* [Contributing guide](https://github.com/dell/ansible-unity/blob/2.0.0/docs/CONTRIBUTING.md) +* [Branching strategy](https://github.com/dell/ansible-unity/blob/2.0.0/docs/BRANCHING.md) +* [List of adopters](https://github.com/dell/ansible-unity/blob/2.0.0/docs/ADOPTERS.md) +* [Maintainers](https://github.com/dell/ansible-unity/blob/2.0.0/docs/MAINTAINERS.md) +* [Support](https://github.com/dell/ansible-unity/blob/2.0.0/docs/SUPPORT.md) * [License](#license) -* [Security](https://github.com/dell/ansible-unity/blob/1.7.1/docs/SECURITY.md) +* [Security](https://github.com/dell/ansible-unity/blob/2.0.0/docs/SECURITY.md) * [Prerequisites](#prerequisites) * [List of Ansible modules for Dell Unity](#list-of-ansible-modules-for-dell-unity) * [Installation and execution of Ansible modules for Dell Unity](#installation-and-execution-of-ansible-modules-for-dell-unity) * [Releasing, Maintenance and Deprecation](#releasing-maintenance-and-deprecation) ## License -The Ansible collection for Unity is released and licensed under the GPL-3.0 license. See [LICENSE](https://github.com/dell/ansible-unity/blob/1.7.1/LICENSE) for the full terms. Ansible modules and module utilities that are part of the Ansible collection for Unity are released and licensed under the Apache 2.0 license. See [MODULE-LICENSE](https://github.com/dell/ansible-unity/blob/1.7.1/MODULE-LICENSE) for the full terms. +The Ansible collection for Unity is released and licensed under the GPL-3.0 license. See [LICENSE](https://github.com/dell/ansible-unity/blob/2.0.0/LICENSE) for the full terms. Ansible modules and module utilities that are part of the Ansible collection for Unity are released and licensed under the Apache 2.0 license. See [MODULE-LICENSE](https://github.com/dell/ansible-unity/blob/2.0.0/MODULE-LICENSE) for the full terms. ## Supported Platforms - * Dell Unity Arrays version 5.1, 5.2, 5.3 + * Dell Unity Arrays version 5.2, 5.3, 5.4 ## Prerequisites This table provides information about the software prerequisites for the Ansible Modules for Dell Unity. | **Ansible Modules** | **Python version** | **Storops - Python SDK version** | **Ansible** | |---------------------|--------------------|----------------------------------|-------------| -| v1.7.1 | 3.9 <br> 3.10 <br> 3.11 | 1.2.11 | 2.13 <br> 2.14 <br> 2.15| +| v2.0.0 | 3.9 <br> 3.10 <br> 3.11 | 1.2.11 | 2.14 <br> 2.15 <br> 2.16| ## 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 Unity - * [Consistency group module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/consistencygroup.rst) - * [Filesystem module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/filesystem.rst) - * [Filesystem snapshot module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/filesystem_snapshot.rst) - * [Info module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/info.rst) - * [Host module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/host.rst) - * [CIFS server module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/cifsserver.rst) - * [NAS server module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/nasserver.rst) - * [NFS server module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/nfsserver.rst) - * [NFS export module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/nfs.rst) - * [SMB share module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/smbshare.rst) - * [Interface module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/interface.rst) - * [Snapshot module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/snapshot.rst) - * [Snapshot schedule module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/snapshotschedule.rst) - * [Storage pool module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/storagepool.rst) - * [User quota module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/user_quota.rste) - * [Quota tree module ](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/tree_quota.rst) - * [Volume module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/volume.rst) - * [Replication session module](https://github.com/dell/ansible-unity/blob/1.7.1/docs/modules/replication_session.rst) + * [Consistency group module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/consistencygroup.rst) + * [Filesystem module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/filesystem.rst) + * [Filesystem snapshot module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/filesystem_snapshot.rst) + * [Info module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/info.rst) + * [Host module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/host.rst) + * [CIFS server module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/cifsserver.rst) + * [NAS server module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/nasserver.rst) + * [NFS server module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/nfsserver.rst) + * [NFS export module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/nfs.rst) + * [SMB share module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/smbshare.rst) + * [Interface module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/interface.rst) + * [Snapshot module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/snapshot.rst) + * [Snapshot schedule module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/snapshotschedule.rst) + * [Storage pool module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/storagepool.rst) + * [User quota module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/user_quota.rste) + * [Quota tree module ](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/tree_quota.rst) + * [Volume module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/volume.rst) + * [Replication session module](https://github.com/dell/ansible-unity/blob/2.0.0/docs/modules/replication_session.rst) ## Installation and execution of Ansible modules for Dell Unity -The installation and execution steps of Ansible modules for Dell Unity can be found [here](https://github.com/dell/ansible-unity/blob/1.7.1/docs/INSTALLATION.md). +The installation and execution steps of Ansible modules for Dell Unity can be found [here](https://github.com/dell/ansible-unity/blob/2.0.0/docs/INSTALLATION.md). ## Releasing, Maintenance and Deprecation @@ -67,6 +67,6 @@ Ansible Modules for Dell Technnologies Unity follows [Semantic Versioning](https 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-unity/blob/1.7.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-unity/blob/2.0.0/docs/BRANCHING.md). Ansible Modules for Dell Technologies Unity deprecation cycle is aligned with that of [Ansible](https://docs.ansible.com/ansible/latest/dev_guide/module_lifecycle.html). diff --git a/ansible_collections/dellemc/unity/changelogs/.plugin-cache.yaml b/ansible_collections/dellemc/unity/changelogs/.plugin-cache.yaml index 5e4c94e39..cbb44069c 100644 --- a/ansible_collections/dellemc/unity/changelogs/.plugin-cache.yaml +++ b/ansible_collections/dellemc/unity/changelogs/.plugin-cache.yaml @@ -106,4 +106,4 @@ plugins: strategy: {} test: {} vars: {} -version: 1.7.1 +version: 2.0.0 diff --git a/ansible_collections/dellemc/unity/changelogs/changelog.yaml b/ansible_collections/dellemc/unity/changelogs/changelog.yaml index 6ab226ac6..719a979b6 100644 --- a/ansible_collections/dellemc/unity/changelogs/changelog.yaml +++ b/ansible_collections/dellemc/unity/changelogs/changelog.yaml @@ -174,3 +174,8 @@ releases: minor_changes: - Patch update to fix import errors in utils file. release_date: '2023-07-31' + 2.0.0: + changes: + major_changes: + - Adding support for Unity Puffin v5.4. + release_date: '2024-03-29' diff --git a/ansible_collections/dellemc/unity/docs/CONTRIBUTING.md b/ansible_collections/dellemc/unity/docs/CONTRIBUTING.md index f26c1cd08..67199cd04 100644 --- a/ansible_collections/dellemc/unity/docs/CONTRIBUTING.md +++ b/ansible_collections/dellemc/unity/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-unity/blob/1.7.1/docs/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-unity/blob/2.0.0/docs/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 Unity 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-unity/blob/1.7.1/docs/ISSUE_TRIAGE.md). +Read more about the ways you can [Triage issues](https://github.com/dell/ansible-unity/blob/2.0.0/docs/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 Unity](https://github.com/dell/ansible-unity/blob/1.7.1/docs/BRANCHING.md) +* [Branching Strategy for Ansible modules for Dell Unity](https://github.com/dell/ansible-unity/blob/2.0.0/docs/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-unity/blob/1.7.1/docs/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-unity/blob/2.0.0/docs/SUPPORT.md). #### Code sanitization diff --git a/ansible_collections/dellemc/unity/docs/INSTALLATION.md b/ansible_collections/dellemc/unity/docs/INSTALLATION.md index e361588f1..8ab4d1932 100644 --- a/ansible_collections/dellemc/unity/docs/INSTALLATION.md +++ b/ansible_collections/dellemc/unity/docs/INSTALLATION.md @@ -35,7 +35,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/unity) /[Automation Hub](https://console.redhat.com/ansible/automation-hub/repo/published/dellemc/unity) and use this command to install the collection anywhere in your system: - ansible-galaxy collection install dellemc-unity-1.7.1.tar.gz -p <install_path> + ansible-galaxy collection install dellemc-unity-2.0.0.tar.gz -p <install_path> * Set the environment variable: @@ -62,7 +62,7 @@ You may obtain a copy of the License at ## Ansible modules execution -The Ansible server must be configured with Python library for Unity to run the Ansible playbooks. The [Documents](https://github.com/dell/ansible-unity/blob/1.7.1/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 Unity to run the Ansible playbooks. The [Documents](https://github.com/dell/ansible-unity/blob/2.0.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. ## SSL certificate validation diff --git a/ansible_collections/dellemc/unity/docs/ISSUE_TRIAGE.md b/ansible_collections/dellemc/unity/docs/ISSUE_TRIAGE.md index 2e25b256a..2d448a852 100644 --- a/ansible_collections/dellemc/unity/docs/ISSUE_TRIAGE.md +++ b/ansible_collections/dellemc/unity/docs/ISSUE_TRIAGE.md @@ -41,9 +41,9 @@ 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.16] - Python Version [e.g. 3.10] - - Ansible modules for Dell Unity Version: [e.g. 1.7.1] + - Ansible modules for Dell Unity Version: [e.g. 2.0.0] - Unity SDK version: [e.g. Unity 1.2.11] - Any other additional information... diff --git a/ansible_collections/dellemc/unity/docs/MAINTAINER_GUIDE.md b/ansible_collections/dellemc/unity/docs/MAINTAINER_GUIDE.md index a46a3d37d..c9687e1f4 100644 --- a/ansible_collections/dellemc/unity/docs/MAINTAINER_GUIDE.md +++ b/ansible_collections/dellemc/unity/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-unity/blob/1.7.1/docs/CODE_OF_CONDUCT.md) and the guidelines in the [Contributing](https://github.com/dell/ansible-unity/blob/1.7.1/docs/CONTRIBUTING.md) and [Committer](https://github.com/dell/ansible-unity/blob/1.7.1/docs/COMMITTER_GUIDE.md) guides +* Follow the [Code of Conduct](https://github.com/dell/ansible-unity/blob/2.0.0/docs/CODE_OF_CONDUCT.md) and the guidelines in the [Contributing](https://github.com/dell/ansible-unity/blob/2.0.0/docs/CONTRIBUTING.md) and [Committer](https://github.com/dell/ansible-unity/blob/2.0.0/docs/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/ansible_collections/dellemc/unity/docs/Release Notes.md b/ansible_collections/dellemc/unity/docs/Release Notes.md index 4243667c1..966a00ffd 100644 --- a/ansible_collections/dellemc/unity/docs/Release Notes.md +++ b/ansible_collections/dellemc/unity/docs/Release Notes.md @@ -1,8 +1,8 @@ **Ansible Modules for Dell Technologies Unity** ========================================= -### Release Notes 1.7.1 +### Release Notes 2.0.0 -> © 2022 Dell Inc. or its subsidiaries. All rights reserved. Dell +> © 2024 Dell Inc. or its subsidiaries. All rights reserved. Dell > and other trademarks are trademarks of Dell Inc. or its > subsidiaries. Other trademarks may be trademarks of their respective > owners. @@ -28,7 +28,7 @@ Table 1. Revision history | Revision | Date | Description | |----------|----------------|---------------------------------------------------------| -| 01 | July 2023 | Current release of Ansible Modules for Dell Unity 1.7.1 | +| 01 | March 2024 | Current release of Ansible Modules for Dell Unity 2.0.0 | Product Description ------------------- @@ -38,9 +38,7 @@ New features & enhancements --------------------------- This release has the following changes - -- Support addition of host from the Host List to NFS Export in nfs module. -- Support enable/disable advanced dedup in volume module. -- Add synchronous replication support for filesystem. +- Adding support for Unity Puffin v5.4. Known issues ------------ @@ -71,7 +69,7 @@ for Unity GitHub](https://github.com/dell/ansible-unity/) page. Documentation ------------- -The documentation is available on [Ansible Modules for Unity GitHub](https://github.com/dell/ansible-unity/tree/1.7.1/docs) +The documentation is available on [Ansible Modules for Unity GitHub](https://github.com/dell/ansible-unity/tree/2.0.0/docs) page. It includes the following: - README - Release Notes (this document) diff --git a/ansible_collections/dellemc/unity/docs/SECURITY.md b/ansible_collections/dellemc/unity/docs/SECURITY.md index f77239eac..4388acc49 100644 --- a/ansible_collections/dellemc/unity/docs/SECURITY.md +++ b/ansible_collections/dellemc/unity/docs/SECURITY.md @@ -12,7 +12,7 @@ You may obtain a copy of the License at The Ansible modules for Dell Unity 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-unity/blob/1.7.1/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-unity/blob/2.0.0/docs/CONTRIBUTING.md#Pull-requests) for more information. ## Reporting a vulnerability diff --git a/ansible_collections/dellemc/unity/meta/runtime.yml b/ansible_collections/dellemc/unity/meta/runtime.yml index 82e44c7f7..9f0f69044 100644 --- a/ansible_collections/dellemc/unity/meta/runtime.yml +++ b/ansible_collections/dellemc/unity/meta/runtime.yml @@ -1,79 +1,64 @@ --- -requires_ansible: ">=2.13" +requires_ansible: ">=2.14" plugin_routing: modules: dellemc_unity_info: - redirect: dellemc.unity.info - deprecation: - removal_date: "2024-03-31" - warning_text: Use info instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use info instead. dellemc_unity_gatherfacts: - redirect: dellemc.unity.info - deprecation: - removal_date: "2024-03-31" - warning_text: Use info instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use info instead. dellemc_unity_consistencygroup: - redirect: dellemc.unity.consistencygroup - deprecation: - removal_date: "2024-03-31" - warning_text: Use consistencygroup instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use consistencygroup instead. dellemc_unity_filesystem_snapshot: - redirect: dellemc.unity.filesystem_snapshot - deprecation: - removal_date: "2024-03-31" - warning_text: Use filesystem_snapshot instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use filesystem_snapshot instead. dellemc_unity_filesystem: - redirect: dellemc.unity.filesystem - deprecation: - removal_date: "2024-03-31" - warning_text: Use filesystem instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use filesystem instead. dellemc_unity_host: - redirect: dellemc.unity.host - deprecation: - removal_date: "2024-03-31" - warning_text: Use host instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use host instead. dellemc_unity_nasserver: - redirect: dellemc.unity.nasserver - deprecation: - removal_date: "2024-03-31" - warning_text: Use nasserver instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use nasserver instead. dellemc_unity_nfs: - redirect: dellemc.unity.nfs - deprecation: - removal_date: "2024-03-31" - warning_text: Use nfs instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use nfs instead. dellemc_unity_smbshare: - redirect: dellemc.unity.smbshare - deprecation: - removal_date: "2024-03-31" - warning_text: Use smbshare instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use smbshare instead. dellemc_unity_snapshot: - redirect: dellemc.unity.snapshot - deprecation: - removal_date: "2024-03-31" - warning_text: Use snapshot instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use snapshot instead. dellemc_unity_snapshotschedule: - redirect: dellemc.unity.snapshotschedule - deprecation: - removal_date: "2024-03-31" - warning_text: Use snapshotschedule instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use snapshotschedule instead. dellemc_unity_storagepool: - redirect: dellemc.unity.storagepool - deprecation: - removal_date: "2024-03-31" - warning_text: Use storagepool instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use storagepool instead. dellemc_unity_tree_quota: - redirect: dellemc.unity.tree_quota - deprecation: - removal_date: "2024-03-31" - warning_text: Use tree_quota instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use tree_quota instead. dellemc_unity_user_quota: - redirect: dellemc.unity.user_quota - deprecation: - removal_date: "2024-03-31" - warning_text: Use user_quota instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use user_quota instead. dellemc_unity_volume: - redirect: dellemc.unity.volume - deprecation: - removal_date: "2024-03-31" - warning_text: Use volume instead. + tombstone: + removal_date: "2024-03-22" + warning_text: Use volume instead. diff --git a/ansible_collections/dellemc/unity/plugins/doc_fragments/unity.py b/ansible_collections/dellemc/unity/plugins/doc_fragments/unity.py index 0df468567..a712a8037 100644 --- a/ansible_collections/dellemc/unity/plugins/doc_fragments/unity.py +++ b/ansible_collections/dellemc/unity/plugins/doc_fragments/unity.py @@ -1,4 +1,4 @@ -# Copyright: (c) 2020, Dell Technologies. +# Copyright: (c) 2024, Dell Technologies. # Apache License version 2.0 (see MODULE-LICENSE or http://www.apache.org/licenses/LICENSE-2.0.txt) from __future__ import absolute_import, division, print_function @@ -44,7 +44,7 @@ class ModuleDocFragment(object): default: 443 requirements: - A Dell Unity Storage device version 5.1 or later. - - Ansible-core 2.13 or later. + - Ansible-core 2.14 or later. - Python 3.9, 3.10 or 3.11. - Storops Python SDK 1.2.11. notes: diff --git a/ansible_collections/dellemc/unity/plugins/modules/consistencygroup.py b/ansible_collections/dellemc/unity/plugins/modules/consistencygroup.py index e0d6a6c06..c5c4b5599 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/consistencygroup.py +++ b/ansible_collections/dellemc/unity/plugins/modules/consistencygroup.py @@ -267,8 +267,8 @@ EXAMPLES = r""" validate_certs: "{{validate_certs}}" cg_id: "{{cg_id}}" hosts: - - host_name: "10.226.198.248" - - host_id: "Host_511" + - host_name: "10.226.198.248" + - host_id: "Host_511" mapping_state: "mapped" state: "present" @@ -280,8 +280,8 @@ EXAMPLES = r""" validate_certs: "{{validate_certs}}" cg_id: "{{cg_id}}" hosts: - - host_id: "Host_511" - - host_name: "10.226.198.248" + - host_id: "Host_511" + - host_name: "10.226.198.248" mapping_state: "unmapped" state: "present" @@ -293,8 +293,8 @@ EXAMPLES = r""" validate_certs: "{{validate_certs}}" cg_name: "{{new_cg_name}}" volumes: - - vol_name: "Ansible_Test-3" - - vol_id: "sv_1744" + - vol_name: "Ansible_Test-3" + - vol_id: "sv_1744" vol_state: "{{vol_state_absent}}" state: "present" @@ -315,16 +315,16 @@ EXAMPLES = r""" validate_certs: "{{validate_certs}}" cg_id: "cg_id_1" replication_params: - destination_cg_name: "destination_cg_1" - replication_mode: "asynchronous" - rpo: 60 - replication_type: "remote" - remote_system: - remote_system_host: '10.1.2.3' - remote_system_verifycert: false - remote_system_username: 'username' - remote_system_password: 'password' - destination_pool_name: "pool_test_1" + destination_cg_name: "destination_cg_1" + replication_mode: "asynchronous" + rpo: 60 + replication_type: "remote" + remote_system: + remote_system_host: '10.1.2.3' + remote_system_verifycert: false + remote_system_username: 'username' + remote_system_password: 'password' + destination_pool_name: "pool_test_1" replication_state: "enable" state: "present" diff --git a/ansible_collections/dellemc/unity/plugins/modules/filesystem.py b/ansible_collections/dellemc/unity/plugins/modules/filesystem.py index 95cffeec6..d8057ac4e 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/filesystem.py +++ b/ansible_collections/dellemc/unity/plugins/modules/filesystem.py @@ -327,10 +327,10 @@ EXAMPLES = r""" pool_name: "pool_1" size: 5 quota_config: - grace_period: 8 - grace_period_unit: "days" - default_soft_limit: 10 - is_user_quota_enabled: false + grace_period: 8 + grace_period_unit: "days" + default_soft_limit: 10 + is_user_quota_enabled: false state: "present" - name: Expand FileSystem size @@ -451,7 +451,7 @@ EXAMPLES = r""" validate_certs: "{{validate_certs}}" filesystem_id: "rs_405" replication_params: - replication_name: "test_replication" + replication_name: "test_replication" replication_state: "disable" state: "present" """ diff --git a/ansible_collections/dellemc/unity/plugins/modules/filesystem_snapshot.py b/ansible_collections/dellemc/unity/plugins/modules/filesystem_snapshot.py index a82fbe89b..93258c84b 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/filesystem_snapshot.py +++ b/ansible_collections/dellemc/unity/plugins/modules/filesystem_snapshot.py @@ -112,91 +112,91 @@ notes: ''' EXAMPLES = r''' - - name: Create Filesystem Snapshot - dellemc.unity.filesystem_snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_name: "ansible_test_FS_snap" - filesystem_name: "ansible_test_FS" - nas_server_name: "lglad069" - description: "Created using playbook" - auto_delete: true - fs_access_type: "Protocol" - state: "present" - - - name: Create Filesystem Snapshot with expiry time - dellemc.unity.filesystem_snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_name: "ansible_test_FS_snap_1" - filesystem_name: "ansible_test_FS_1" - nas_server_name: "lglad069" - description: "Created using playbook" - expiry_time: "04/15/2021 2:30" - fs_access_type: "Protocol" - state: "present" - - - name: Get Filesystem Snapshot Details using Name - dellemc.unity.filesystem_snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_name: "ansible_test_FS_snap" - state: "present" - - - name: Get Filesystem Snapshot Details using ID - dellemc.unity.filesystem_snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_id: "10008000403" - state: "present" - - - name: Update Filesystem Snapshot attributes - dellemc.unity.filesystem_snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_name: "ansible_test_FS_snap" - description: "Description updated" - auto_delete: false - expiry_time: "04/15/2021 5:30" - state: "present" - - - name: Update Filesystem Snapshot attributes using ID - dellemc.unity.filesystem_snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_id: "10008000403" - expiry_time: "04/18/2021 8:30" - state: "present" - - - name: Delete Filesystem Snapshot using Name - dellemc.unity.filesystem_snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_name: "ansible_test_FS_snap" - state: "absent" - - - name: Delete Filesystem Snapshot using ID - dellemc.unity.filesystem_snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_id: "10008000403" - state: "absent" +- name: Create Filesystem Snapshot + dellemc.unity.filesystem_snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_name: "ansible_test_FS_snap" + filesystem_name: "ansible_test_FS" + nas_server_name: "lglad069" + description: "Created using playbook" + auto_delete: true + fs_access_type: "Protocol" + state: "present" + +- name: Create Filesystem Snapshot with expiry time + dellemc.unity.filesystem_snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_name: "ansible_test_FS_snap_1" + filesystem_name: "ansible_test_FS_1" + nas_server_name: "lglad069" + description: "Created using playbook" + expiry_time: "04/15/2021 2:30" + fs_access_type: "Protocol" + state: "present" + +- name: Get Filesystem Snapshot Details using Name + dellemc.unity.filesystem_snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_name: "ansible_test_FS_snap" + state: "present" + +- name: Get Filesystem Snapshot Details using ID + dellemc.unity.filesystem_snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_id: "10008000403" + state: "present" + +- name: Update Filesystem Snapshot attributes + dellemc.unity.filesystem_snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_name: "ansible_test_FS_snap" + description: "Description updated" + auto_delete: false + expiry_time: "04/15/2021 5:30" + state: "present" + +- name: Update Filesystem Snapshot attributes using ID + dellemc.unity.filesystem_snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_id: "10008000403" + expiry_time: "04/18/2021 8:30" + state: "present" + +- name: Delete Filesystem Snapshot using Name + dellemc.unity.filesystem_snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_name: "ansible_test_FS_snap" + state: "absent" + +- name: Delete Filesystem Snapshot using ID + dellemc.unity.filesystem_snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_id: "10008000403" + state: "absent" ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/info.py b/ansible_collections/dellemc/unity/plugins/modules/info.py index 641074286..b924d674a 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/info.py +++ b/ansible_collections/dellemc/unity/plugins/modules/info.py @@ -64,220 +64,220 @@ notes: ''' EXAMPLES = r''' - - name: Get detailed list of Unity entities - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - host - - fc_initiator - - iscsi_initiator - - cg - - storage_pool - - vol - - snapshot_schedule - - nas_server - - file_system - - snapshot - - nfs_export - - smb_share - - user_quota - - tree_quota - - disk_group - - nfs_server - - cifs_server - - ethernet_port - - file_interface - - replication_session - - - name: Get information of Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - - - name: Get list of hosts on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - host - - - name: Get list of FC initiators on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - fc_initiator - - - name: Get list of ISCSI initiators on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - iscsi_initiator - - - name: Get list of consistency groups on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - cg - - - name: Get list of storage pools on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - storage_pool - - - name: Get list of volumes on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - vol - - - name: Get list of snapshot schedules on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - snapshot_schedule - - - name: Get list of NAS Servers on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - nas_server - - - name: Get list of File Systems on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - file_system - - - name: Get list of Snapshots on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - snapshot - - - name: Get list of NFS exports on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - nfs_export - - - name: Get list of SMB shares on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - smb_share - - - name: Get list of user quotas on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - user_quota - - - name: Get list of quota trees on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - tree_quota - - - name: Get list of disk groups on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - disk_group - - - name: Get list of NFS Servers on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - nfs_server - - - name: Get list of CIFS Servers on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - cifs_server - - - name: Get list of ethernet ports on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - ethernet_port - - - name: Get list of file interfaces on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - file_interface - - - name: Get list of replication sessions on Unity array - dellemc.unity.info: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - gather_subset: - - replication_session +- name: Get detailed list of Unity entities + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - host + - fc_initiator + - iscsi_initiator + - cg + - storage_pool + - vol + - snapshot_schedule + - nas_server + - file_system + - snapshot + - nfs_export + - smb_share + - user_quota + - tree_quota + - disk_group + - nfs_server + - cifs_server + - ethernet_port + - file_interface + - replication_session + +- name: Get information of Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + +- name: Get list of hosts on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - host + +- name: Get list of FC initiators on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - fc_initiator + +- name: Get list of ISCSI initiators on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - iscsi_initiator + +- name: Get list of consistency groups on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - cg + +- name: Get list of storage pools on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - storage_pool + +- name: Get list of volumes on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - vol + +- name: Get list of snapshot schedules on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - snapshot_schedule + +- name: Get list of NAS Servers on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - nas_server + +- name: Get list of File Systems on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - file_system + +- name: Get list of Snapshots on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - snapshot + +- name: Get list of NFS exports on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - nfs_export + +- name: Get list of SMB shares on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - smb_share + +- name: Get list of user quotas on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - user_quota + +- name: Get list of quota trees on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - tree_quota + +- name: Get list of disk groups on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - disk_group + +- name: Get list of NFS Servers on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - nfs_server + +- name: Get list of CIFS Servers on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - cifs_server + +- name: Get list of ethernet ports on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - ethernet_port + +- name: Get list of file interfaces on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - file_interface + +- name: Get list of replication sessions on Unity array + dellemc.unity.info: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + gather_subset: + - replication_session ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/interface.py b/ansible_collections/dellemc/unity/plugins/modules/interface.py index 2523f940e..70be8021a 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/interface.py +++ b/ansible_collections/dellemc/unity/plugins/modules/interface.py @@ -79,55 +79,55 @@ notes: EXAMPLES = r''' - - name: Add Interface as Backup to NAS Server - dellemc.unity.interface: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - ethernet_port_name: "SP A 4-Port Card Ethernet Port 0" - role: "BACKUP" - interface_ip: "xx.xx.xx.xx" - netmask: "xx.xx.xx.xx" - gateway: "xx.xx.xx.xx" - vlan_id: 324 - state: "present" - - - name: Add Interface as Production to NAS Server - dellemc.unity.interface: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - ethernet_port_name: "SP A 4-Port Card Ethernet Port 0" - role: "PRODUCTION" - interface_ip: "xx.xx.xx.xx" - netmask: "xx.xx.xx.xx" - gateway: "xx.xx.xx.xx" - vlan_id: 324 - state: "present" - - - name: Get interface details - dellemc.unity.interface: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - interface_ip: "xx.xx.xx.xx" - state: "present" - - - name: Delete Interface - dellemc.unity.interface: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - interface_ip: "xx.xx.xx.xx" - state: "absent" +- name: Add Interface as Backup to NAS Server + dellemc.unity.interface: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + ethernet_port_name: "SP A 4-Port Card Ethernet Port 0" + role: "BACKUP" + interface_ip: "xx.xx.xx.xx" + netmask: "xx.xx.xx.xx" + gateway: "xx.xx.xx.xx" + vlan_id: 324 + state: "present" + +- name: Add Interface as Production to NAS Server + dellemc.unity.interface: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + ethernet_port_name: "SP A 4-Port Card Ethernet Port 0" + role: "PRODUCTION" + interface_ip: "xx.xx.xx.xx" + netmask: "xx.xx.xx.xx" + gateway: "xx.xx.xx.xx" + vlan_id: 324 + state: "present" + +- name: Get interface details + dellemc.unity.interface: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + interface_ip: "xx.xx.xx.xx" + state: "present" + +- name: Delete Interface + dellemc.unity.interface: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + interface_ip: "xx.xx.xx.xx" + state: "absent" ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/nasserver.py b/ansible_collections/dellemc/unity/plugins/modules/nasserver.py index 925cc932e..446611f4e 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/nasserver.py +++ b/ansible_collections/dellemc/unity/plugins/modules/nasserver.py @@ -208,138 +208,138 @@ notes: EXAMPLES = r''' - - name: Get Details of NAS Server - dellemc.unity.nasserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "{{nas_server_name}}" - state: "present" - - - name: Modify Details of NAS Server - dellemc.unity.nasserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "{{nas_server_name}}" - nas_server_new_name: "updated_sample_nas_server" - is_replication_destination: false - is_backup_only: false - is_multiprotocol_enabled: true - allow_unmapped_user: true - default_unix_user: "default_unix_sample_user" - default_windows_user: "default_windows_sample_user" - enable_windows_to_unix_username_mapping: true - current_unix_directory_service: "LDAP" - is_packet_reflect_enabled: true - state: "present" - - - name: Enable replication for NAS Server on Local System - dellemc.unity.nasserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_id: "nas_10" - replication_reuse_resource: false - replication_params: - replication_name: "test_replication" - destination_nas_server_name: "destination_nas" - replication_mode: "asynchronous" - rpo: 60 - replication_type: "local" - destination_pool_name: "Pool_Ansible_Neo_DND" - destination_sp: "SPA" - is_backup: true - replication_state: "enable" - state: "present" - - - name: Enable replication for NAS Server on Remote System - dellemc.unity.nasserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - replication_reuse_resource: false - replication_params: - replication_name: "test_replication" - destination_nas_server_name: "destination_nas" - replication_mode: "asynchronous" - rpo: 60 - replication_type: "remote" - remote_system: - remote_system_host: '10.10.10.10' - remote_system_verifycert: false - remote_system_username: 'test1' - remote_system_password: 'test1!' - destination_pool_name: "fastVP_pool" - destination_sp: "SPA" - is_backup: true - replication_state: "enable" - state: "present" - - - name: Enable replication for NAS Server on Remote System in existing NAS Server - dellemc.unity.nasserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - replication_reuse_resource: true - replication_params: - destination_nas_server_name: "destination_nas" - replication_mode: "asynchronous" - rpo: 60 - replication_type: "remote" - replication_name: "test_replication" - remote_system: - remote_system_host: '10.10.10.10' - remote_system_verifycert: false - remote_system_username: 'test1' - remote_system_password: 'test1!' - destination_pool_name: "fastVP_pool" - replication_state: "enable" - state: "present" - - - name: Modify replication on the nasserver - dellemc.unity.nasserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - replication_params: - replication_name: "test_repl" - new_replication_name: "test_repl_updated" - replication_mode: "asynchronous" - rpo: 50 - replication_state: "enable" - state: "present" - - - name: Disable replication on the nasserver - dellemc.unity.nasserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - replication_state: "disable" - state: "present" - - - name: Disable replication by specifying replication_name on the nasserver - dellemc.unity.nasserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - replication_params: - replication_name: "test_replication" - replication_state: "disable" - state: "present" +- name: Get Details of NAS Server + dellemc.unity.nasserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "{{nas_server_name}}" + state: "present" + +- name: Modify Details of NAS Server + dellemc.unity.nasserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "{{nas_server_name}}" + nas_server_new_name: "updated_sample_nas_server" + is_replication_destination: false + is_backup_only: false + is_multiprotocol_enabled: true + allow_unmapped_user: true + default_unix_user: "default_unix_sample_user" + default_windows_user: "default_windows_sample_user" + enable_windows_to_unix_username_mapping: true + current_unix_directory_service: "LDAP" + is_packet_reflect_enabled: true + state: "present" + +- name: Enable replication for NAS Server on Local System + dellemc.unity.nasserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_id: "nas_10" + replication_reuse_resource: false + replication_params: + replication_name: "test_replication" + destination_nas_server_name: "destination_nas" + replication_mode: "asynchronous" + rpo: 60 + replication_type: "local" + destination_pool_name: "Pool_Ansible_Neo_DND" + destination_sp: "SPA" + is_backup: true + replication_state: "enable" + state: "present" + +- name: Enable replication for NAS Server on Remote System + dellemc.unity.nasserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + replication_reuse_resource: false + replication_params: + replication_name: "test_replication" + destination_nas_server_name: "destination_nas" + replication_mode: "asynchronous" + rpo: 60 + replication_type: "remote" + remote_system: + remote_system_host: '10.10.10.10' + remote_system_verifycert: false + remote_system_username: 'test1' + remote_system_password: 'test1!' + destination_pool_name: "fastVP_pool" + destination_sp: "SPA" + is_backup: true + replication_state: "enable" + state: "present" + +- name: Enable replication for NAS Server on Remote System in existing NAS Server + dellemc.unity.nasserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + replication_reuse_resource: true + replication_params: + destination_nas_server_name: "destination_nas" + replication_mode: "asynchronous" + rpo: 60 + replication_type: "remote" + replication_name: "test_replication" + remote_system: + remote_system_host: '10.10.10.10' + remote_system_verifycert: false + remote_system_username: 'test1' + remote_system_password: 'test1!' + destination_pool_name: "fastVP_pool" + replication_state: "enable" + state: "present" + +- name: Modify replication on the nasserver + dellemc.unity.nasserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + replication_params: + replication_name: "test_repl" + new_replication_name: "test_repl_updated" + replication_mode: "asynchronous" + rpo: 50 + replication_state: "enable" + state: "present" + +- name: Disable replication on the nasserver + dellemc.unity.nasserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + replication_state: "disable" + state: "present" + +- name: Disable replication by specifying replication_name on the nasserver + dellemc.unity.nasserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + replication_params: + replication_name: "test_replication" + replication_state: "disable" + state: "present" ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/nfs.py b/ansible_collections/dellemc/unity/plugins/modules/nfs.py index 473e40b2a..d0426f9cf 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/nfs.py +++ b/ansible_collections/dellemc/unity/plugins/modules/nfs.py @@ -395,15 +395,15 @@ EXAMPLES = r""" filesystem_id: "fs_377" adv_host_mgmt_enabled: false no_access_hosts: - - domain: "google.com" + - domain: "google.com" read_only_hosts: - - netgroup: "netgroup_admin" + - netgroup: "netgroup_admin" read_only_root_hosts: - - host_name: "host5" + - host_name: "host5" read_write_hosts: - - subnet: "168.159.57.4/255.255.255.0" + - subnet: "168.159.57.4/255.255.255.0" read_write_root_hosts: - - ip_address: "10.255.2.4" + - ip_address: "10.255.2.4" host_state: "present-in-export" state: "present" @@ -417,15 +417,15 @@ EXAMPLES = r""" filesystem_id: "fs_377" adv_host_mgmt_enabled: false no_access_hosts: - - domain: "google.com" + - domain: "google.com" read_only_hosts: - - netgroup: "netgroup_admin" + - netgroup: "netgroup_admin" read_only_root_hosts: - - host_name: "host5" + - host_name: "host5" read_write_hosts: - - subnet: "168.159.57.4/255.255.255.0" + - subnet: "168.159.57.4/255.255.255.0" read_write_root_hosts: - - ip_address: "10.255.2.4" + - ip_address: "10.255.2.4" host_state: "absent-in-export" state: "present" diff --git a/ansible_collections/dellemc/unity/plugins/modules/nfsserver.py b/ansible_collections/dellemc/unity/plugins/modules/nfsserver.py index 30d2c787f..90aba930e 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/nfsserver.py +++ b/ansible_collections/dellemc/unity/plugins/modules/nfsserver.py @@ -84,56 +84,56 @@ notes: EXAMPLES = r''' - - name: Create NFS server with kdctype as Windows - dellemc.unity.nfsserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - host_name: "dummy_nas23" - is_secure_enabled: true - kerberos_domain_controller_type: "WINDOWS" - kerberos_domain_controller_username: "administrator" - kerberos_domain_controller_password: "Password123!" - is_extended_credentials_enabled: true - nfs_v4_enabled: true - state: "present" - - - name: Create NFS server with kdctype as Unix - dellemc.unity.nfsserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - host_name: "dummy_nas23" - is_secure_enabled: true - kerberos_domain_controller_type: "UNIX" - is_extended_credentials_enabled: true - nfs_v4_enabled: true - state: "present" - - - name: Get NFS server details - dellemc.unity.nfsserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - state: "present" - - - name: Delete NFS server - dellemc.unity.nfsserver: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - nas_server_name: "dummy_nas" - kerberos_domain_controller_username: "administrator" - kerberos_domain_controller_password: "Password123!" - unjoin_server_account: false - state: "absent" +- name: Create NFS server with kdctype as Windows + dellemc.unity.nfsserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + host_name: "dummy_nas23" + is_secure_enabled: true + kerberos_domain_controller_type: "WINDOWS" + kerberos_domain_controller_username: "administrator" + kerberos_domain_controller_password: "Password123!" + is_extended_credentials_enabled: true + nfs_v4_enabled: true + state: "present" + +- name: Create NFS server with kdctype as Unix + dellemc.unity.nfsserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + host_name: "dummy_nas23" + is_secure_enabled: true + kerberos_domain_controller_type: "UNIX" + is_extended_credentials_enabled: true + nfs_v4_enabled: true + state: "present" + +- name: Get NFS server details + dellemc.unity.nfsserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + state: "present" + +- name: Delete NFS server + dellemc.unity.nfsserver: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + nas_server_name: "dummy_nas" + kerberos_domain_controller_username: "administrator" + kerberos_domain_controller_password: "Password123!" + unjoin_server_account: false + state: "absent" ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/snapshot.py b/ansible_collections/dellemc/unity/plugins/modules/snapshot.py index 5660e3c5c..efdd6e292 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/snapshot.py +++ b/ansible_collections/dellemc/unity/plugins/modules/snapshot.py @@ -112,79 +112,79 @@ notes: ''' EXAMPLES = r''' - - name: Create a Snapshot for a CG - dellemc.unity.snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - port: "{{port}}" - cg_name: "{{cg_name}}" - snapshot_name: "{{cg_snapshot_name}}" - description: "{{description}}" - auto_delete: false - state: "present" - - - name: Create a Snapshot for a volume with Host attached - dellemc.unity.snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - port: "{{port}}" - vol_name: "{{vol_name}}" - snapshot_name: "{{vol_snapshot_name}}" - description: "{{description}}" - expiry_time: "04/15/2025 16:30" - host_name: "{{host_name}}" - host_state: "mapped" - state: "present" - - - name: Unmap a host for a Snapshot - dellemc.unity.snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - port: "{{port}}" - snapshot_name: "{{vol_snapshot_name}}" - host_name: "{{host_name}}" - host_state: "unmapped" - state: "present" - - - name: Map snapshot to a host - dellemc.unity.snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - port: "{{port}}" - snapshot_name: "{{vol_snapshot_name}}" - host_name: "{{host_name}}" - host_state: "mapped" - state: "present" - - - name: Update attributes of a Snapshot for a volume - dellemc.unity.snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_name: "{{vol_snapshot_name}}" - new_snapshot_name: "{{new_snapshot_name}}" - description: "{{new_description}}" - host_name: "{{host_name}}" - host_state: "unmapped" - state: "present" - - - name: Delete Snapshot of CG - dellemc.unity.snapshot: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - snapshot_name: "{{cg_snapshot_name}}" - state: "absent" +- name: Create a Snapshot for a CG + dellemc.unity.snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + port: "{{port}}" + cg_name: "{{cg_name}}" + snapshot_name: "{{cg_snapshot_name}}" + description: "{{description}}" + auto_delete: false + state: "present" + +- name: Create a Snapshot for a volume with Host attached + dellemc.unity.snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + port: "{{port}}" + vol_name: "{{vol_name}}" + snapshot_name: "{{vol_snapshot_name}}" + description: "{{description}}" + expiry_time: "04/15/2025 16:30" + host_name: "{{host_name}}" + host_state: "mapped" + state: "present" + +- name: Unmap a host for a Snapshot + dellemc.unity.snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + port: "{{port}}" + snapshot_name: "{{vol_snapshot_name}}" + host_name: "{{host_name}}" + host_state: "unmapped" + state: "present" + +- name: Map snapshot to a host + dellemc.unity.snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + port: "{{port}}" + snapshot_name: "{{vol_snapshot_name}}" + host_name: "{{host_name}}" + host_state: "mapped" + state: "present" + +- name: Update attributes of a Snapshot for a volume + dellemc.unity.snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_name: "{{vol_snapshot_name}}" + new_snapshot_name: "{{new_snapshot_name}}" + description: "{{new_description}}" + host_name: "{{host_name}}" + host_state: "unmapped" + state: "present" + +- name: Delete Snapshot of CG + dellemc.unity.snapshot: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + snapshot_name: "{{cg_snapshot_name}}" + state: "absent" ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/snapshotschedule.py b/ansible_collections/dellemc/unity/plugins/modules/snapshotschedule.py index 1d6e6ec6c..0690239ea 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/snapshotschedule.py +++ b/ansible_collections/dellemc/unity/plugins/modules/snapshotschedule.py @@ -142,8 +142,8 @@ EXAMPLES = r""" name: "Ansible_Every_Day_Testing" type: "every_day" hours_of_day: - - 8 - - 14 + - 8 + - 14 auto_delete: true state: "{{state_present}}" @@ -169,8 +169,8 @@ EXAMPLES = r""" name: "Ansible_Every_Week_Testing" type: "every_week" days_of_week: - - MONDAY - - FRIDAY + - MONDAY + - FRIDAY hour: 12 minute: 30 desired_retention: 200 diff --git a/ansible_collections/dellemc/unity/plugins/modules/storagepool.py b/ansible_collections/dellemc/unity/plugins/modules/storagepool.py index 6438e9c6a..b7b8bfd69 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/storagepool.py +++ b/ansible_collections/dellemc/unity/plugins/modules/storagepool.py @@ -212,22 +212,21 @@ EXAMPLES = r''' pool_name: "Test" pool_description: "test pool" raid_groups: - disk_group_id : "dg_16" - disk_num : 2 - raid_type : "RAID10" - stripe_width : "BEST_FIT" - alert_threshold : 50 - is_harvest_enabled : true - pool_harvest_high_threshold : 60 - pool_harvest_low_threshold : 40 - is_snap_harvest_enabled : true - snap_harvest_high_threshold : 70 - snap_harvest_low_threshold : 50 + disk_group_id: "dg_16" + disk_num: 2 + raid_type: "RAID10" + stripe_width: "BEST_FIT" + alert_threshold: 50 + is_harvest_enabled: true + pool_harvest_high_threshold: 60 + pool_harvest_low_threshold: 40 + is_snap_harvest_enabled: true + snap_harvest_high_threshold: 70 + snap_harvest_low_threshold: 50 fast_vp: "enabled" fast_cache: "enabled" - pool_type : "DYNAMIC" + pool_type: "DYNAMIC" state: "present" - ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/tree_quota.py b/ansible_collections/dellemc/unity/plugins/modules/tree_quota.py index b066a01fa..dd0a76374 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/tree_quota.py +++ b/ansible_collections/dellemc/unity/plugins/modules/tree_quota.py @@ -101,97 +101,97 @@ notes: ''' EXAMPLES = r''' - - name: Get quota tree details by quota tree id - dellemc.unity.tree_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - tree_quota_id: "treequota_171798700679_10" - state: "present" - - - name: Get quota tree details by quota tree path - dellemc.unity.tree_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_name: "fs_2171" - nas_server_id: "nas_21" - path: "/test" - state: "present" - - - name: Create quota tree for a filesystem with filesystem id - dellemc.unity.tree_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - hard_limit: 6 - cap_unit: "TB" - soft_limit: 5 - path: "/test_new" - state: "present" - - - name: Create quota tree for a filesystem with filesystem name - dellemc.unity.tree_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_name: "Test_filesystem" - nas_server_name: "lglad068" - hard_limit: 6 - cap_unit: "TB" - soft_limit: 5 - path: "/test_new" - state: "present" - - - name: Modify quota tree limit usage by quota tree path - dellemc.unity.tree_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - path: "/test_new" - hard_limit: 10 - cap_unit: "TB" - soft_limit: 8 - state: "present" - - - name: Modify quota tree by quota tree id - dellemc.unity.tree_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - tree_quota_id: "treequota_171798700679_10" - hard_limit: 12 - cap_unit: "TB" - soft_limit: 10 - state: "present" - - - name: Delete quota tree by quota tree id - dellemc.unity.tree_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - tree_quota_id: "treequota_171798700679_10" - state: "absent" - - - name: Delete quota tree by path - dellemc.unity.tree_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - path: "/test_new" - state: "absent" +- name: Get quota tree details by quota tree id + dellemc.unity.tree_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + tree_quota_id: "treequota_171798700679_10" + state: "present" + +- name: Get quota tree details by quota tree path + dellemc.unity.tree_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_name: "fs_2171" + nas_server_id: "nas_21" + path: "/test" + state: "present" + +- name: Create quota tree for a filesystem with filesystem id + dellemc.unity.tree_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + hard_limit: 6 + cap_unit: "TB" + soft_limit: 5 + path: "/test_new" + state: "present" + +- name: Create quota tree for a filesystem with filesystem name + dellemc.unity.tree_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_name: "Test_filesystem" + nas_server_name: "lglad068" + hard_limit: 6 + cap_unit: "TB" + soft_limit: 5 + path: "/test_new" + state: "present" + +- name: Modify quota tree limit usage by quota tree path + dellemc.unity.tree_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + path: "/test_new" + hard_limit: 10 + cap_unit: "TB" + soft_limit: 8 + state: "present" + +- name: Modify quota tree by quota tree id + dellemc.unity.tree_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + tree_quota_id: "treequota_171798700679_10" + hard_limit: 12 + cap_unit: "TB" + soft_limit: 10 + state: "present" + +- name: Delete quota tree by quota tree id + dellemc.unity.tree_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + tree_quota_id: "treequota_171798700679_10" + state: "absent" + +- name: Delete quota tree by path + dellemc.unity.tree_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + path: "/test_new" + state: "absent" ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/user_quota.py b/ansible_collections/dellemc/unity/plugins/modules/user_quota.py index 06413aa53..0a09ff44d 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/user_quota.py +++ b/ansible_collections/dellemc/unity/plugins/modules/user_quota.py @@ -123,170 +123,170 @@ notes: ''' EXAMPLES = r''' - - name: Get user quota details by user quota id - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - user_quota_id: "userquota_171798700679_0_123" - state: "present" - - - name: Get user quota details by user quota uid/user name - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_name: "fs_2171" - nas_server_id: "nas_21" - user_name: "test" - state: "present" - - - name: Create user quota for a filesystem with filesystem id - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - hard_limit: 6 - cap_unit: "TB" - soft_limit: 5 - uid: "111" - state: "present" - - - name: Create user quota for a filesystem with filesystem name - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_name: "Test_filesystem" - nas_server_name: "lglad068" - hard_limit: 6 - cap_unit: "TB" - soft_limit: 5 - uid: "111" - state: "present" - - - name: Modify user quota limit usage by user quota id - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - user_quota_id: "userquota_171798700679_0_123" - hard_limit: 10 - cap_unit: "TB" - soft_limit: 8 - state: "present" - - - name: Modify user quota by filesystem id and user quota uid/user_name - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - user_type: "Windows" - win_domain: "prod" - user_name: "sample" - hard_limit: 12 - cap_unit: "TB" - soft_limit: 10 - state: "present" - - - name: Delete user quota - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - win_domain: "prod" - user_name: "sample" - state: "absent" - - - name: Create user quota of a quota tree - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - tree_quota_id: "treequota_171798700679_4" - user_type: "Windows" - win_domain: "prod" - user_name: "sample" - soft_limit: 9 - cap_unit: "TB" - state: "present" - - - name: Create user quota of a quota tree by quota tree path - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - path: "/sample" - user_type: "Unix" - user_name: "test" - hard_limit: 2 - cap_unit: "TB" - state: "present" - - - name: Modify user quota of a quota tree - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - tree_quota_id: "treequota_171798700679_4" - user_type: "Windows" - win_domain: "prod" - user_name: "sample" - soft_limit: 10 - cap_unit: "TB" - state: "present" - - - name: Modify user quota of a quota tree by quota tree path - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - path: "/sample" - user_type: "Windows" - win_domain: "prod" - user_name: "sample" - hard_limit: 12 - cap_unit: "TB" - state: "present" - - - name: Delete user quota of a quota tree by quota tree path - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - filesystem_id: "fs_2171" - path: "/sample" - win_domain: "prod" - user_name: "sample" - state: "absent" - - - name: Delete user quota of a quota tree by quota tree id - dellemc.unity.user_quota: - unispherehost: "{{unispherehost}}" - username: "{{username}}" - password: "{{password}}" - validate_certs: "{{validate_certs}}" - tree_quota_id: "treequota_171798700679_4" - win_domain: "prod" - user_name: "sample" - state: "absent" +- name: Get user quota details by user quota id + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + user_quota_id: "userquota_171798700679_0_123" + state: "present" + +- name: Get user quota details by user quota uid/user name + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_name: "fs_2171" + nas_server_id: "nas_21" + user_name: "test" + state: "present" + +- name: Create user quota for a filesystem with filesystem id + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + hard_limit: 6 + cap_unit: "TB" + soft_limit: 5 + uid: "111" + state: "present" + +- name: Create user quota for a filesystem with filesystem name + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_name: "Test_filesystem" + nas_server_name: "lglad068" + hard_limit: 6 + cap_unit: "TB" + soft_limit: 5 + uid: "111" + state: "present" + +- name: Modify user quota limit usage by user quota id + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + user_quota_id: "userquota_171798700679_0_123" + hard_limit: 10 + cap_unit: "TB" + soft_limit: 8 + state: "present" + +- name: Modify user quota by filesystem id and user quota uid/user_name + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + user_type: "Windows" + win_domain: "prod" + user_name: "sample" + hard_limit: 12 + cap_unit: "TB" + soft_limit: 10 + state: "present" + +- name: Delete user quota + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + win_domain: "prod" + user_name: "sample" + state: "absent" + +- name: Create user quota of a quota tree + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + tree_quota_id: "treequota_171798700679_4" + user_type: "Windows" + win_domain: "prod" + user_name: "sample" + soft_limit: 9 + cap_unit: "TB" + state: "present" + +- name: Create user quota of a quota tree by quota tree path + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + path: "/sample" + user_type: "Unix" + user_name: "test" + hard_limit: 2 + cap_unit: "TB" + state: "present" + +- name: Modify user quota of a quota tree + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + tree_quota_id: "treequota_171798700679_4" + user_type: "Windows" + win_domain: "prod" + user_name: "sample" + soft_limit: 10 + cap_unit: "TB" + state: "present" + +- name: Modify user quota of a quota tree by quota tree path + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + path: "/sample" + user_type: "Windows" + win_domain: "prod" + user_name: "sample" + hard_limit: 12 + cap_unit: "TB" + state: "present" + +- name: Delete user quota of a quota tree by quota tree path + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + filesystem_id: "fs_2171" + path: "/sample" + win_domain: "prod" + user_name: "sample" + state: "absent" + +- name: Delete user quota of a quota tree by quota tree id + dellemc.unity.user_quota: + unispherehost: "{{unispherehost}}" + username: "{{username}}" + password: "{{password}}" + validate_certs: "{{validate_certs}}" + tree_quota_id: "treequota_171798700679_4" + win_domain: "prod" + user_name: "sample" + state: "absent" ''' RETURN = r''' diff --git a/ansible_collections/dellemc/unity/plugins/modules/volume.py b/ansible_collections/dellemc/unity/plugins/modules/volume.py index 81790ea24..4b23267ac 100644 --- a/ansible_collections/dellemc/unity/plugins/modules/volume.py +++ b/ansible_collections/dellemc/unity/plugins/modules/volume.py @@ -224,10 +224,10 @@ EXAMPLES = r""" validate_certs: "{{validate_certs}}" vol_id: "{{vol_id}}" hosts: - - host_name: "10.226.198.248" - hlu: 1 - - host_id: "Host_929" - hlu: 2 + - host_name: "10.226.198.248" + hlu: 1 + - host_id: "Host_929" + hlu: 2 mapping_state: "mapped" state: "present" diff --git a/ansible_collections/dellemc/unity/tests/sanity/ignore-2.13.txt b/ansible_collections/dellemc/unity/tests/sanity/ignore-2.16.txt index a7aa13146..fcf3bcfba 100644 --- a/ansible_collections/dellemc/unity/tests/sanity/ignore-2.13.txt +++ b/ansible_collections/dellemc/unity/tests/sanity/ignore-2.16.txt @@ -17,16 +17,10 @@ plugins/modules/nfsserver.py validate-modules:missing-gplv3-license plugins/modules/host.py import-2.7 plugins/modules/interface.py import-2.7 plugins/modules/nfs.py import-2.7 -plugins/modules/nfs.py import-3.5 plugins/modules/nfs.py compile-2.7 -plugins/modules/nfs.py compile-3.5 plugins/modules/filesystem.py compile-2.7 -plugins/modules/filesystem.py compile-3.5 plugins/modules/filesystem.py import-2.7 -plugins/modules/filesystem.py import-3.5 plugins/modules/interface.py validate-modules:missing-gplv3-license plugins/modules/replication_session.py validate-modules:missing-gplv3-license plugins/modules/replication_session.py import-2.7 -plugins/modules/replication_session.py import-3.5 plugins/modules/replication_session.py compile-2.7 -plugins/modules/replication_session.py compile-3.5 diff --git a/ansible_collections/dellemc/unity/tests/sanity/ignore-2.17.txt b/ansible_collections/dellemc/unity/tests/sanity/ignore-2.17.txt new file mode 100644 index 000000000..c034ae364 --- /dev/null +++ b/ansible_collections/dellemc/unity/tests/sanity/ignore-2.17.txt @@ -0,0 +1,18 @@ +plugins/modules/consistencygroup.py validate-modules:missing-gplv3-license +plugins/modules/filesystem.py validate-modules:missing-gplv3-license +plugins/modules/filesystem_snapshot.py validate-modules:missing-gplv3-license +plugins/modules/info.py validate-modules:missing-gplv3-license +plugins/modules/host.py validate-modules:missing-gplv3-license +plugins/modules/nasserver.py validate-modules:missing-gplv3-license +plugins/modules/nfs.py validate-modules:missing-gplv3-license +plugins/modules/smbshare.py validate-modules:missing-gplv3-license +plugins/modules/snapshot.py validate-modules:missing-gplv3-license +plugins/modules/snapshotschedule.py validate-modules:missing-gplv3-license +plugins/modules/storagepool.py validate-modules:missing-gplv3-license +plugins/modules/tree_quota.py validate-modules:missing-gplv3-license +plugins/modules/user_quota.py validate-modules:missing-gplv3-license +plugins/modules/volume.py validate-modules:missing-gplv3-license +plugins/modules/cifsserver.py validate-modules:missing-gplv3-license +plugins/modules/nfsserver.py validate-modules:missing-gplv3-license +plugins/modules/interface.py validate-modules:missing-gplv3-license +plugins/modules/replication_session.py validate-modules:missing-gplv3-license diff --git a/ansible_collections/dellemc/unity/tests/requirements.txt b/ansible_collections/dellemc/unity/tests/unit/requirements.txt index 3541acd15..3541acd15 100644 --- a/ansible_collections/dellemc/unity/tests/requirements.txt +++ b/ansible_collections/dellemc/unity/tests/unit/requirements.txt |