Skip to content

Latest commit

 

History

History
17 lines (12 loc) · 1.14 KB

architecture.md

File metadata and controls

17 lines (12 loc) · 1.14 KB

Salus Architecture

Salus is a docker container. Installed into the container are security scanners and a small ruby application that coordinates them.

Salus Architecture Diagram

The source code being scanned is volumed into the container and Salus expects to find this code at the internal path /home/repo. While the Salus application is written in Ruby, other languages are installed in the container as required for each scanners.

Ruby Objects

  • Salus: the primary class of the application.
  • Salus::CLI: command line wrapper to run Salus.
  • Salus::Config: object that maintains Salus' configuration.
  • Salus::Processor: runs each scanners against the repo.
  • Salus::Repo: representation of the repository being scanned.
  • Salus::Report: object that collects data about scans and compiles a report.
  • Salus::Scanners::<name>: scanner objects that can determine if a scanner should run, runs the scanner and collect the results.