-
Notifications
You must be signed in to change notification settings - Fork 27
Support ACLP Monitor Services Alerts Modules #736
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR enables ACLP alerts functionality in Linode Ansible modules by introducing support for alert definitions and alert channels. The implementation includes modules for creating, updating, deleting, and listing alert definitions, as well as listing alert channels. A key technical enhancement is the addition of a disable_filters configuration option to the ListModule base class to accommodate API endpoints that don't support filtering.
- Adds comprehensive alert definition management with create/update/delete operations and wait functionality
- Implements specialized listing modules for alert definitions and channels with custom filter logic
- Extends base
ListModuleclass to support endpoints without filtering capabilities
Reviewed changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/integration/targets/monitor_services_alert_definition/tasks/main.yaml | Integration test suite validating CRUD operations and list functionality for alert definitions |
| plugins/modules/monitor_services_alert_definition.py | Main module implementing alert definition lifecycle management with wait conditions |
| plugins/modules/monitor_services_alert_definition_list.py | List module for alert definitions with custom ACLP filter constructor |
| plugins/modules/monitor_services_alert_definition_info.py | Info module for retrieving individual alert definition details |
| plugins/modules/monitor_services_alert_definition_by_service_type_list.py | Specialized list module for filtering alert definitions by service type |
| plugins/modules/monitor_alert_channel_list.py | List module for alert channels with custom filter logic |
| plugins/module_utils/linode_helper.py | Helper function implementing ACLP-specific filter construction logic |
| plugins/module_utils/linode_common_list.py | Enhanced base ListModule with disable_filters configuration option |
| plugins/module_utils/doc_fragments/*.py | Documentation fragments defining examples and sample responses |
| docs/modules/*.md | Generated documentation for all new modules |
| README.md | Updated module listing with new alert-related modules |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
tests/integration/targets/monitor_services_alert_definition/tasks/main.yaml
Outdated
Show resolved
Hide resolved
tests/integration/targets/monitor_services_alert_definition/tasks/main.yaml
Outdated
Show resolved
Hide resolved
plugins/modules/monitor_services_alert_definition_by_service_type_list.py
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 19 out of 20 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
tests/integration/targets/monitor_services_alert_definition/tasks/main.yaml
Outdated
Show resolved
Hide resolved
|
Everything looks good other than the Copilot comments. Let's get Python SDK released before merge this PR |
vshanthe
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
📝 Description
Enable ACLP alerts by supporting the following functionalities in linode ansible modules:
Note: All the listing endpoints only accept simple filters. Listing alert definition by service type can't support any filters currently. Modified base ListModule and add a new configurable field
disable_filtersto support it.✔️ How to Test
Integration test: