3.9 KiB
description, argument-hint
| description | argument-hint |
|---|---|
| List all components tracked in Sippy for a release | <release> |
Name
component-health:list-components
Synopsis
/component-health:list-components <release>
Description
The component-health:list-components command fetches and displays all component names tracked in the Sippy component readiness system for a specified OpenShift release.
This command is useful for:
- Discovering available components for a release
- Validating component names before analysis
- Understanding which teams/components are tracked
- Generating component lists for reports
- Finding exact component names for use in other commands
Implementation
-
Verify Prerequisites: Check that Python 3 is installed
- Run:
python3 --version - Verify version 3.6 or later is available
- Run:
-
Parse Arguments: Extract release version from arguments
- Release format: "X.Y" (e.g., "4.17", "4.21")
-
Execute Python Script: Run the list_components.py script
- Script location:
plugins/component-health/skills/list-components/list_components.py - Pass release as
--releaseargument - The script automatically appends "-main" suffix to construct the view
- Capture JSON output from stdout
- Script location:
-
Parse Output: Process the JSON response
- Extract component count and component list
- Components are returned alphabetically sorted and unique
-
Present Results: Display components in a readable format
- Show total count
- Display components in a numbered or bulleted list
- Optionally group by category (e.g., Networking, Storage, etc.)
-
Error Handling: Handle common error scenarios
- Network connectivity issues
- Invalid release format
- API errors (400, 404, 500, etc.)
- Empty results
Return Value
The command outputs a Component List with the following information:
Component Summary
- Release: The release version queried
- View: The constructed view parameter (release + "-main")
- Total Components: Count of unique components found
Component List
An alphabetically sorted list of all components, for example:
1. Bare Metal Hardware Provisioning
2. Build
3. Cloud Compute / Cloud Controller Manager
4. Cluster Version Operator
5. Etcd
6. HyperShift
7. Image Registry
8. Installer / openshift-installer
9. kube-apiserver
10. Machine Config Operator
11. Management Console
12. Monitoring
13. Networking / ovn-kubernetes
14. OLM
15. Storage
...
Examples
-
List all components for release 4.21:
/component-health:list-components 4.21Displays all components tracked in Sippy for release 4.21.
-
List components for release 4.20:
/component-health:list-components 4.20Displays all components for the 4.20 release.
Arguments
$1(required): Release version- Format: "X.Y" (e.g., "4.17", "4.21")
- Must be a valid OpenShift release number
Prerequisites
-
Python 3: Required to run the data fetching script
- Check:
which python3 - Version: 3.6 or later
- Check:
-
Network Access: Must be able to reach the Sippy API
- Ensure HTTPS requests can be made to
sippy.dptools.openshift.org
- Ensure HTTPS requests can be made to
Notes
- The script automatically appends "-main" to the release version
- Component names are case-sensitive
- Component names are returned in alphabetical order
- Some components use hierarchical names with "/" separator (e.g., "Networking / ovn-kubernetes")
- The script has a 30-second timeout for HTTP requests
- Component names returned can be used directly in other component-health commands
See Also
- Skill Documentation:
plugins/component-health/skills/list-components/SKILL.md - Script:
plugins/component-health/skills/list-components/list_components.py - Related Command:
/component-health:list-regressions(for regression data) - Related Command:
/component-health:summarize-jiras(for bug data) - Related Command:
/component-health:analyze(for health analysis)