Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the new feature of deploying the template to the devices using de… #443

Merged
merged 4 commits into from
Oct 24, 2024

Conversation

Abhishek-121
Copy link
Collaborator

…vices specific details or site specific with filtering parameters as device family, role, tag etc. and write the playbook, examples and update the documentation for the same, fix the issue of deleting the project/template from the progress state. Also add some common helper functions in dnac.py.

Description

— Implement a new feature in the template workflow manager with which you can deploy the template to the devices.

— There will be 2 ways 2 deploy the template to the devices -
- Either provide any of the one device_specific details either device_ips_list, device_hostnames_list, serial_number_list, mac_address_list to deploy template to the devices.
- Provide the site name and other parameters are optional to narrow down the results like to fetch the devices based on device_family, device_role or device tag.

— Write the playbook with the new updated feature of deploying the template to the devices.

— Also write the documentation for each parameters with description and also provide the examples for the ease of users.

— Also fix the issue of deletion of project/template for the intermediate state while deletion in progress but module return success for that.

— Added some common helper functions in dnac.py file like -
get_device_ips_from_hostname
get_device_ips_from_serial_number
get_device_ips_from_mac_address
get_device_ids_from_device_ips
get_device_ips_from_device_ids
get_network_device_tag_id

— Update the inventory workflow manager module with these functions changes.

Type of Change

  • [ yes ] Bug fix
  • [ yes ] New feature
  • [ no ] Breaking change
  • [ yes ] Documentation update

Checklist

  • [ yes ] My code follows the style guidelines of this project
  • [ yes ] I have performed a self-review of my own code
  • [ yes ] I have commented my code, particularly in hard-to-understand areas
  • [ yes ] I have made corresponding changes to the documentation
  • [ no ] My changes generate no new warnings
  • [ no ] I have added tests that prove my fix is effective or that my feature works
  • [ no ] New and existing unit tests pass locally with my changes
  • [ no ] Any dependent changes have been merged and published in downstream modules
  • [ yes ] All the sanity checks have been completed and the sanity test cases have been executed

Ansible Best Practices

  • [ yes ] Tasks are idempotent (can be run multiple times without changing state)
  • [ no ] Variables and secrets are handled securely (e.g., using ansible-vault or environment variables)
  • [ yes ] Playbooks are modular and reusable
  • [ yes ] Handlers are used for actions that need to run on change

Documentation

  • [ yes ] All options and parameters are documented clearly.
  • [ yes ] Examples are provided and tested.
  • [ yes ] Notes and limitations are clearly stated.

Notes to Reviewers

…vices specific details or site specific with filtering parameters as device family, role, tag etc. and write the playbook, examples and update the documentation for the same, fix the issue of deleting the project/template from the progress state. Also add some common helper functions in dnac.py
plugins/module_utils/dnac.py Show resolved Hide resolved
plugins/module_utils/dnac.py Outdated Show resolved Hide resolved
plugins/module_utils/dnac.py Outdated Show resolved Hide resolved
plugins/module_utils/dnac.py Outdated Show resolved Hide resolved
plugins/module_utils/dnac.py Outdated Show resolved Hide resolved
plugins/modules/template_workflow_manager.py Show resolved Hide resolved
plugins/modules/template_workflow_manager.py Show resolved Hide resolved
plugins/modules/template_workflow_manager.py Outdated Show resolved Hide resolved
plugins/modules/template_workflow_manager.py Show resolved Hide resolved
plugins/modules/template_workflow_manager.py Outdated Show resolved Hide resolved
…ving site_name as argument in all the modules including site, accesspoint, device credentials, inventory by adding the site_name in argument.
plugins/module_utils/dnac.py Outdated Show resolved Hide resolved
plugins/module_utils/dnac.py Outdated Show resolved Hide resolved
@madhansansel madhansansel merged commit ab052ef into madhansansel:main Oct 24, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants