🚀 Feature: Tech insights submit result push API
🔖 Feature description
Users can push check results to the tech insights API so that check logic can be run outside of Backstage (e.g. in CI.)
🎤 Context
We'd like to use tooling outside of Backstage to run some of our tech insights checks against developers' code bases. We have a CLI tool that developers have on their local machines and is also available in CI environments. We lean on this to run "official" tech health assessments in CI and also allow users to run the same command to get results on their local codebase for quick feedback cycles.
We'd like an API like Datadog Scorecard's that lets us push these results to tech insights, rather than having to port all of this logic into fact checkers.
✌️ Possible Implementation
No response
👀 Have you spent some time to check if this feature request has been raised before?
- [X] I checked and didn't find similar issue
🏢 Have you read the Code of Conduct?
- [X] I have read the Code of Conduct
Are you willing to submit PR?
Yes I am willing to submit a PR!
@Xantier wanna chime in here? :pray:
This as a feature makes sense. Maybe worth thinking here if it is necessary to product individual check results and pump those into the system, or would it make sense to create individual facts and add those into the system instead. The latter allows a more varied data shape and can be then further enhanced to run checks against.
The original RFC outlined this specific approach, pushing data from a CI tool to the system, as part of the architectural proposal
Few notes on the implementation:
- Check results are currently not stored so storage option for those would needed to be implemented into this (if the approach is to push check results)
- It will be the easier approach to expose an endpoint and config options to push fact data in so it might be better to start from there and see if adding a similar functionality for checks is actually necessary in the end
- You might need to take a look at the schema registration and add some kind of validation and/or optionality into the system for cases where we push data in. At the moment it is purposefully rigid since the produced data is managed within the system. If exposing that possibility to external forces, that approach might need to change
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.