Skip to content

IBM Storage Scale #40587

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

Open
wants to merge 9 commits into
base: master
Choose a base branch
from
Open

IBM Storage Scale #40587

wants to merge 9 commits into from

Conversation

amshamah419
Copy link
Contributor

@amshamah419 amshamah419 commented Jul 13, 2025

Status
[x] In Progress
[ ] Ready
[ ] In Hold - (Reason for hold)

Related Issues
fixes: CIAC-13741

Description
This pull request introduces a new, high-performance integration for IBM Storage Scale. The integration collects Command Line Interface (CLI) audit log records using a concurrent, asynchronous fetching model to ensure efficient data ingestion from large-scale environments. It includes robust error handling, comprehensive unit tests, and detailed documentation for setup and use.

Must have
[x] Tests
[x] Documentation

@amshamah419 amshamah419 requested a review from Copilot July 13, 2025 11:50
@amshamah419 amshamah419 self-assigned this Jul 13, 2025
Copy link

@Copilot Copilot AI left a 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 adds a new high-performance integration for IBM Storage Scale that ingests CLI audit logs using an asynchronous, concurrent fetching model. Key changes include:

  • Pack metadata, README, and detailed integration documentation
  • Implementation of an async client with producer-consumer logic
  • Comprehensive unit tests covering connectivity, multi-page fetch, error handling, and command routing

Reviewed Changes

Copilot reviewed 8 out of 12 changed files in this pull request and generated no comments.

Show a summary per file
File Description
Packs/IBMStorageScale/pack_metadata.json Initial pack metadata definition
Packs/IBMStorageScale/README.md Root pack README with integration summary
Packs/IBMStorageScale/Integrations/IBMStorageScaleEventCollector/command_examples.txt Example command invocation
Packs/IBMStorageScale/Integrations/IBMStorageScaleEventCollector/README.md Detailed setup and usage instructions
Packs/IBMStorageScale/Integrations/IBMStorageScaleEventCollector/IBMStorageScaleEventCollector_test.py Unit tests for commands and client logic
Packs/IBMStorageScale/Integrations/IBMStorageScaleEventCollector/IBMStorageScaleEventCollector_description.md Marketplace description
Packs/IBMStorageScale/Integrations/IBMStorageScaleEventCollector/IBMStorageScaleEventCollector.yml Integration spec and parameters
Packs/IBMStorageScale/Integrations/IBMStorageScaleEventCollector/IBMStorageScaleEventCollector.py Async client and fetcher implementation
Comments suppressed due to low confidence (4)

Packs/IBMStorageScale/Integrations/IBMStorageScaleEventCollector/IBMStorageScaleEventCollector.yml:29

  • The defaultvalue for max_fetch is specified as a string ('10000'), but the parameter represents a numeric limit. Consider using a numeric value without quotes to avoid unintended type conversions.
  defaultvalue: '10000'

Packs/IBMStorageScale/pack_metadata.json:8

  • The email field is empty. Providing a maintainer or support contact email will improve metadata completeness and assist users with questions or issues.
    "email": "",

Packs/IBMStorageScale/Integrations/IBMStorageScaleEventCollector/IBMStorageScaleEventCollector.py:104

  • The code uses urlparse but does not import it, which will cause a NameError at runtime. Add from urllib.parse import urlparse at the top of the file.
                next_url_suffix = f"{urlparse(next_full_url).path}?{urlparse(next_full_url).query}" if next_full_url else None

Packs/IBMStorageScale/README.md:6

  • [nitpick] The line contains both a hyphen and an em dash (-—), which appears to be a typographical error. Consider using a single hyphen or em dash for consistency, e.g., - IBM Storage Scale — This integration....
- IBM Storage Scale -— This integration collects Command Line Interface (CLI) audit log records from the IBM Storage Scale API. It is designed for high performance in large-scale deployments, using a concurrent fetching mechanism to ensure efficient and timely data ingestion into Cortex XSIAM.

Copy link

github-actions bot commented Jul 13, 2025

Coverage

Coverage Report
FileStmtsMissCoverMissing
Packs/IBMStorageScale/Integrations/IBMStorageScale
   IBMStorageScale.py2635080%30, 41, 44, 61–62, 64–67, 70, 72–73, 76–78, 80, 91, 177–178, 226, 234–236, 276, 287, 321–323, 333–334, 347–348, 361–362, 403, 407–408, 427–429, 434, 499–504, 519–520, 531
TOTAL2635080% 

Tests Skipped Failures Errors Time
19 0 💤 0 ❌ 0 🔥 2.620s ⏱️

@amshamah419 amshamah419 added the ready-for-pipeline-running Whether the pr is ready for running the whole pipeline, including testing on SAAS machines label Jul 23, 2025
@content-bot
Copy link
Collaborator

Validate summary
The following errors were thrown as a part of this pr: RM110, DO106.
The following errors can be ignored: RM110.
The following errors cannot be ignored: DO106.
If the AG100 validation in the pre-commit GitHub Action fails, the pull request cannot be force-merged.
The following errors don't run as part of the nightly flow and therefore can be force merged: DO106.

Verdict: PR can be force merged from validate perspective? ❌

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-for-pipeline-running Whether the pr is ready for running the whole pipeline, including testing on SAAS machines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants