Skip to content

Commit

Permalink
analyzer:chore - split analyzer implementation into runner (ZupIT#909)
Browse files Browse the repository at this point in the history
Previously the Analyzer struct holds the entire pipeline of an analysis,
which add a lot of complexity, since this pipeline has a lot of steps:
Detect languages, orchestrate tools by languages, send analysis to Horusec
manager and them print the results on stdout.

This commit split the Analyzer struct into a new struct `runner`.
This new struct will be responsible only to orchestrate all tools to
their respective languages. The coded implemented on runner is basically
a copy and paste from Analyzer implementation, so the behavior remains
the same.

Some documentation was also added to try do make more clear what are the
steps that Analyzer do, and what a runner means.

Signed-off-by: Matheus Alcantara <[email protected]>
  • Loading branch information
matheusalcantarazup authored Jan 3, 2022
1 parent f2c500d commit 0df35e4
Show file tree
Hide file tree
Showing 4 changed files with 443 additions and 396 deletions.
2 changes: 1 addition & 1 deletion cmd/app/start/start.go
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,7 @@ func (s *Start) isRunPromptQuestion(cmd *cobra.Command) bool {

func (s *Start) executeAnalysisDirectory() (totalVulns int, err error) {
if s.analyzer == nil {
s.analyzer = analyzer.NewAnalyzer(s.configs)
s.analyzer = analyzer.New(s.configs)
}

return s.analyzer.Analyze()
Expand Down
Loading

0 comments on commit 0df35e4

Please sign in to comment.