Add `list release-groups` / `get release-group` commands
- Dominant language
- Rust
- Stars
- 0
- Forks
- 0
- Avg merge
- 2h 7m
- Merged PRs (30d)
- 2
Description
## Why
When reconciling issue counts on a release group against the sum of its
member projects, the very first thing a support engineer or internal tool
needs to do is resolve a release-group title/ID to its member projects and
their pinned revisions. fossapi has no commands for this today, so every
investigation starts with raw `curl` against `/api/project_group/...`.
## Current workaround
```bash
curl -H "Authorization: Bearer $FOSSA_API_KEY" \
https://app.fossa.com/api/project_group # list
curl -H "Authorization: Bearer $FOSSA_API_KEY" \
https://app.fossa.com/api/project_group/ # detail + member projects
```
Sample response (detail, abbreviated):
```json
{
"id": 1234,
"title": "My Release Group",
"policyId": 1001,
"securityPolicyId": 1002,
"qualityPolicyId": 1003,
"releases": [{
"id": 5678,
"title": "1.0",
"unresolved_security_issue_count": 2,
"unresolved_licensing_issue_count": 4,
"unresolved_quality_issue_count": 0,
"projects": [{
"projectId": "custom+/",
"branch": "main",
"revisionId": "custom+/$"
}]
}]
}
```
## Proposed CLI surface
```
fossapi list release-groups [--title ] [--json] [--page N] [--count N]
fossapi get release-group [--json]
# Exits non-zero if the RG has no releases; otherwise prints release metadata
# and member projects with their pinned revisions.
```
## Repro that currently can't be done via fossapi
```bash
# "Show me the member projects (with pinned revisions) for RG 1234"
# Today:
curl -sH "Authorization: Bearer $FOSSA_API_KEY" \
https://app.fossa.com/api/project_group/1234 | jq '.releases[0].projects'
# Desired:
fossapi get release-group 1234 --json | jq '.releases[0].projects'
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.