Aclp logs support#799
Open
pskupien-akamai wants to merge 33 commits into
Open
Conversation
…tion-api-signed' into DPS-42284-ACLP-Logs-Streams-API-internal-review
…gned' into DPS-42284-ACLP-Logs-Streams-API-internal-review
…pdatable fields fix, formatting
…I-internal-review ACLP Logs - Implement streams api + tests
…-aclp-logs-destination-api-revert-requirements revert requirements.txt
…-aclp-logs-destination-api-signed Dps 42283 aclp sdk ansible aclp logs destination api signed
Comment on lines
+54
to
+56
| "This can be ``audit_logs`` for logs consisting of all of the control plane " | ||
| "operations for the services in your Linodes, or ``lke_audit_logs`` for log data " | ||
| "for your Linode Kubernetes Engine (LKE) enterprise clusters.", |
Comment on lines
+181
to
+183
| def _get_stream( | ||
| self, stream_id: Optional[int], label: Optional[str] | ||
| ) -> Any: |
Author
There was a problem hiding this comment.
Fixed by adding return self.fail(...)
| self._handle_present() | ||
| return self.results | ||
|
|
||
| def _wait_for_status(self, stream: Any, force: bool = False) -> Any: |
Author
There was a problem hiding this comment.
Fixed by adding return self.fail(...)
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adds Ansible collection support for Akamai Cloud Linode “Monitor Logs” (ACLP logs) by introducing new modules for Logs Destinations and Logs Streams, along with generated docs and integration coverage.
Changes:
- Adds CRUD/info/list/history modules for Monitor Logs Destinations and Streams.
- Adds integration test suites for destinations and (optionally gated) streams, plus CI/Makefile wiring for the stream-test flag.
- Updates collection documentation (README module index + per-module docs/specdoc fragments).
Reviewed changes
Copilot reviewed 31 out of 31 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
tests/integration/targets/monitor_logs_stream/tasks/main.yaml |
New end-to-end integration coverage for stream lifecycle (guarded by RUN_ACLP_LOGS_STREAM_TESTS). |
tests/integration/targets/monitor_logs_destination/tasks/main.yaml |
New integration coverage for destination lifecycle and list/info/history behaviors. |
README.md |
Adds new Monitor Logs modules to the documented module list. |
plugins/modules/monitor_logs_stream.py |
Implements create/update/delete for Logs Streams, including optional wait/polling. |
plugins/modules/monitor_logs_stream_list.py |
Adds list module for streams via the shared ListModule helper. |
plugins/modules/monitor_logs_stream_info.py |
Adds info module for streams by ID/label via InfoModule. |
plugins/modules/monitor_logs_stream_history.py |
Adds list/history module for stream history. |
plugins/modules/monitor_logs_destination.py |
Implements create/update/delete for Logs Destinations, including type-specific details handling and wait. |
plugins/modules/monitor_logs_destination_list.py |
Adds list module for destinations via the shared ListModule helper. |
plugins/modules/monitor_logs_destination_info.py |
Adds info module for destinations by ID/label via InfoModule. |
plugins/modules/monitor_logs_destination_history.py |
Adds list/history module for destination history. |
plugins/module_utils/linode_helper.py |
Adds api_filter_for_aclp_logs_services to support logs endpoints filtering + ordering. |
plugins/module_utils/doc_fragments/monitor_logs_stream.py |
Specdoc examples + result samples for stream module. |
plugins/module_utils/doc_fragments/monitor_logs_stream_list.py |
Specdoc examples + result samples for stream list module. |
plugins/module_utils/doc_fragments/monitor_logs_stream_info.py |
Specdoc examples for stream info module. |
plugins/module_utils/doc_fragments/monitor_logs_stream_history.py |
Specdoc examples + result samples for stream history module. |
plugins/module_utils/doc_fragments/monitor_logs_destination.py |
Specdoc examples + result samples for destination module. |
plugins/module_utils/doc_fragments/monitor_logs_destination_list.py |
Specdoc examples + result samples for destination list module. |
plugins/module_utils/doc_fragments/monitor_logs_destination_info.py |
Specdoc examples + result samples for destination info module. |
plugins/module_utils/doc_fragments/monitor_logs_destination_history.py |
Specdoc examples + result samples for destination history module. |
Makefile |
Writes run_aclp_logs_stream_tests into integration config for gating stream tests. |
docs/modules/monitor_logs_stream.md |
Generated module docs for stream. |
docs/modules/monitor_logs_stream_list.md |
Generated module docs for stream list. |
docs/modules/monitor_logs_stream_info.md |
Generated module docs for stream info. |
docs/modules/monitor_logs_stream_history.md |
Generated module docs for stream history. |
docs/modules/monitor_logs_destination.md |
Generated module docs for destination. |
docs/modules/monitor_logs_destination_list.md |
Generated module docs for destination list. |
docs/modules/monitor_logs_destination_info.md |
Generated module docs for destination info. |
docs/modules/monitor_logs_destination_history.md |
Generated module docs for destination history. |
.github/workflows/integration-tests.yml |
Adds workflow input/env wiring for RUN_ACLP_LOGS_STREAM_TESTS. |
.github/workflows/integration-tests-pr.yml |
Adds workflow_dispatch input/env wiring for RUN_ACLP_LOGS_STREAM_TESTS on PR runs. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📝 Description
Adds support for monitor logs functionality
What does this PR do and why is this change necessary?
✔️ How to Test
This feature is based on ready-to-merge pull request in linode_api4-python. To test this feature before the merge it's required to install this package via running terminal command which enables LogsDestination components:
pip install --upgrade --force-reinstall "git+https://github.com/linode/linode_api4-python.git@refs/pull/686/head#egg=linode_api4"How do I run the relevant unit/integration tests?
make test-int TEST_SUITE="monitor_logs_destination"to test logs destinationsexport RUN_ACLP_LOGS_STREAM_TESTS=truemake test-int TEST_SUITE="monitor_logs_stream"to test streamsNotes:
export RUN_ACLP_LOGS_STREAM_TESTS=trueis provided