DependencyTrack / DependencyTrack/frontend
Display Metrics for OSS Index / Guide
- Dominant language
- Vue
- Stars
- 171
- Forks
- 250
- Avg merge
- 10h 56m
- Merged PRs (30d)
- 84
Description
### Current Behavior
Sonatype is deprecating OSS Index and moving to [Guide](https://guide.sonatype.com/)
Guide allow 500 credits per month (equivalent to 5000 queries) for free and has a Pro plan offering 5000 credits for $100 per month. Beyond this level one has to request a custom quote... but it does promise "volume discounts".
For a daily check of each PURL, Guide can handle just 4 projects of 40 components each.
### Proposed Behavior
Display some metrics data on OSS Index/Guide configuration screen.
1) Display total number of unique PURLs in projects that are not active.
```
select count(distinct c."PURLCOORDINATES")
from "COMPONENT" as c
inner join "PROJECT" as p on p."ID" = c."PROJECT_ID"
where p."ACTIVE" is distinct from false;
```
This query would need to be tweaked if functionality is implemented to allow inclusion/exclusion of analysis for projects based on (say) tags
2) Display usage metrics. This can be done using the Guide Usage API.
### Checklist
- [x] I have read and understand the [contributing guidelines](https://github.com/DependencyTrack/dependency-track/blob/master/CONTRIBUTING.md#filing-issues)
- [x] I have checked the [existing issues](https://github.com/DependencyTrack/frontend/issues) for whether this enhancement was already requested
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at the OSS Index/Guide configuration screen and trace how its current settings and metrics are loaded. Review the proposed distinct-PURL query and the Guide Usage API requirements; done means the screen displays the inactive-project PURL count and usage metrics, with the query adjusted if project inclusion rules are added.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- sql
- Domain
- api, databases, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100