mirror of
https://github.com/weaveworks/scope.git
synced 2026-07-27 17:21:34 +00:00
- Move docker probe code into it's own module - Put PIDTree behind and interface for mocking - Disaggregate dockerTagger into a registry, tagger and reporter - Similarly disaggregate tests - Add mocks for docker container and registry - Add test for docker events & stats
30 lines
546 B
Go
30 lines
546 B
Go
package tag
|
|
|
|
import (
|
|
"log"
|
|
|
|
"github.com/weaveworks/scope/report"
|
|
)
|
|
|
|
// Tagger tags nodes with value-add node metadata.
|
|
type Tagger interface {
|
|
Tag(r report.Report) (report.Report, error)
|
|
}
|
|
|
|
// Reporter generates Reports.
|
|
type Reporter interface {
|
|
Report() report.Report
|
|
}
|
|
|
|
// Apply tags the report with all the taggers.
|
|
func Apply(r report.Report, taggers []Tagger) report.Report {
|
|
var err error
|
|
for _, tagger := range taggers {
|
|
r, err = tagger.Tag(r)
|
|
if err != nil {
|
|
log.Printf("error applying tagger: %v", err)
|
|
}
|
|
}
|
|
return r
|
|
}
|