Initial commit
This commit is contained in:
135
skills/get-release-dates/README.md
Normal file
135
skills/get-release-dates/README.md
Normal file
@@ -0,0 +1,135 @@
|
||||
# Get Release Dates
|
||||
|
||||
Fetch OpenShift release dates and metadata from the Sippy API.
|
||||
|
||||
## Overview
|
||||
|
||||
This skill retrieves release information for OpenShift releases, including:
|
||||
|
||||
- GA (General Availability) dates
|
||||
- Development start dates
|
||||
- Previous release in the sequence
|
||||
- Release status (in development vs GA'd)
|
||||
|
||||
## Usage
|
||||
|
||||
```bash
|
||||
python3 plugins/component-health/skills/get-release-dates/get_release_dates.py \
|
||||
--release <release>
|
||||
```
|
||||
|
||||
## Arguments
|
||||
|
||||
- `--release` (required): Release identifier (e.g., "4.21", "4.20", "4.17")
|
||||
|
||||
## Examples
|
||||
|
||||
### Get information for release 4.21
|
||||
|
||||
```bash
|
||||
python3 plugins/component-health/skills/get-release-dates/get_release_dates.py \
|
||||
--release 4.21
|
||||
```
|
||||
|
||||
### Get information for release 4.17
|
||||
|
||||
```bash
|
||||
python3 plugins/component-health/skills/get-release-dates/get_release_dates.py \
|
||||
--release 4.17
|
||||
```
|
||||
|
||||
## Output Format
|
||||
|
||||
### Successful Query (Release Found)
|
||||
|
||||
```json
|
||||
{
|
||||
"release": "4.21",
|
||||
"found": true,
|
||||
"ga": "2026-02-17T00:00:00Z",
|
||||
"development_start": "2025-09-02T00:00:00Z",
|
||||
"previous_release": "4.20"
|
||||
}
|
||||
```
|
||||
|
||||
### Release Not Found
|
||||
|
||||
```json
|
||||
{
|
||||
"release": "99.99",
|
||||
"found": false
|
||||
}
|
||||
```
|
||||
|
||||
Exit code: 1
|
||||
|
||||
## Output Fields
|
||||
|
||||
- `release`: The release identifier queried
|
||||
- `found`: Boolean indicating if release exists in Sippy
|
||||
- `ga`: GA date. **Null means release is still in development.**
|
||||
- `development_start`: When development started
|
||||
- `previous_release`: Previous release in sequence
|
||||
|
||||
**Note**: If the `ga` field is `null`, the release is still under active development and has not reached General Availability yet.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Python 3.6 or later
|
||||
- Network access to `sippy.dptools.openshift.org`
|
||||
|
||||
## API Endpoint
|
||||
|
||||
The script queries: https://sippy.dptools.openshift.org/api/releases
|
||||
|
||||
## Use Cases
|
||||
|
||||
### Verify Release Exists
|
||||
|
||||
Before analyzing a release, verify it exists in Sippy:
|
||||
|
||||
```bash
|
||||
python3 get_release_dates.py --release 4.21
|
||||
# Check "found": true in output
|
||||
```
|
||||
|
||||
### Get Release Timeline
|
||||
|
||||
Understand the development timeline:
|
||||
|
||||
```bash
|
||||
python3 get_release_dates.py --release 4.17
|
||||
# Check "development_start" and "ga" dates
|
||||
```
|
||||
|
||||
### Determine Release Status
|
||||
|
||||
Check if a release is in development or has GA'd:
|
||||
|
||||
```bash
|
||||
python3 get_release_dates.py --release 4.21
|
||||
# If "ga" is null -> still in development
|
||||
# If "ga" has timestamp -> has reached GA
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
|
||||
The script handles:
|
||||
|
||||
- Network errors (connection failures)
|
||||
- HTTP errors (404, 500, etc.)
|
||||
- Release not found (exit code 1)
|
||||
- Invalid JSON responses
|
||||
|
||||
## Notes
|
||||
|
||||
- Uses Python standard library only (no external dependencies)
|
||||
- Release identifiers are case-sensitive
|
||||
- OKD releases use "-okd" suffix (e.g., "4.21-okd")
|
||||
- Special releases: "Presubmits", "aro-production", "aro-stage", "aro-integration"
|
||||
|
||||
## See Also
|
||||
|
||||
- SKILL.md: Detailed implementation guide
|
||||
- Component Health Plugin: `plugins/component-health/README.md`
|
||||
- List Regressions Skill: `plugins/component-health/skills/list-regressions/`
|
||||
Reference in New Issue
Block a user