This repository has been archived by the owner on Oct 14, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 22
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
5233191
commit f118ff0
Showing
4 changed files
with
45 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
## Pluggable scanners | ||
|
||
|
||
### Goals | ||
- standalone | ||
- quick to start | ||
- language-agnostic via client stubs for other languages | ||
- modular | ||
- scalable, albeit as a single service for now (no time to implement/rely on queues) | ||
- can be run as a container (kuberentes job or REST service), CLI command, or binary | ||
- can perform long running operations | ||
- replace current golang only approach for scanning | ||
- ...more things to capture here | ||
|
||
### Non-goals | ||
- durability, scans live only for the container lifetime | ||
- SQLite DB can be exported as a file and reused, but did not try to make it work and probably will not to. | ||
It will complicate more than benefit if done. | ||
- Replace centralized VMClarity DB for scanning results | ||
- ...more things to capture here | ||
|
||
|
||
## Brief overview | ||
Golang REST server implementation will be running across all scanner types (Go, Python, Rust, etc). | ||
Language-specific approaches will utilize the Go REST server as temporary DB and source of truth for scans (long running operations) | ||
and their results (scan findings). | ||
Other languages will only implement the scanner interface and interact with the REST server via client stubs (autogenerated with minimal changes) | ||
that will be embedded into containers (MIGHT CHANGE). | ||
Use Golang scanner example to see how the new scanners will look like. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters