Documentation ¶
Index ¶
- func NewCloner(logger lager.Logger, workdir string, workCh chan CloneMsg, ...) ifrit.Runner
- func NewHeadCredentialCounter(logger lager.Logger, branchRepository db.BranchRepository, ...) ifrit.Runner
- func NewRepoDiscoverer(logger lager.Logger, workdir string, cloneMsgCh chan CloneMsg, ...) ifrit.Runner
- func NewRepoSet(sizeHint int) *repoSet
- func NewRescanner(logger lager.Logger, scanRepo db.ScanRepository, ...) ifrit.Runner
- func ObliviousHealthCheck() http.Handler
- type ChangeFetcher
- type ChangeScheduler
- type CloneMsg
- type Cloner
- type GitHubClient
- type GitHubOrganization
- type GitHubRepository
- type NotificationComposer
- type RepoChangeScheduler
- type RepoDiscoverer
- type Rescanner
- type Scanner
- type ScheduleRunner
- type Scheduler
- type Server
- type Sink
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewCloner ¶
func NewCloner( logger lager.Logger, workdir string, workCh chan CloneMsg, gitClient gitclient.Client, repositoryRepository db.RepositoryRepository, notificationComposer NotificationComposer, emitter metrics.Emitter, scheduler RepoChangeScheduler, ) ifrit.Runner
func NewRepoDiscoverer ¶
func NewRepoSet ¶
func NewRepoSet(sizeHint int) *repoSet
func NewRescanner ¶
func NewRescanner( logger lager.Logger, scanRepo db.ScanRepository, credRepo db.CredentialRepository, scanner Scanner, router notifications.Router, emitter metrics.Emitter, ) ifrit.Runner
func ObliviousHealthCheck ¶
Types ¶
type ChangeFetcher ¶
type ChangeFetcher interface {
Fetch(ctx context.Context, logger lager.Logger, owner, name string, reenable bool) error
}
func NewChangeFetcher ¶
func NewChangeFetcher( logger lager.Logger, gitClient gitclient.Client, notificationComposer NotificationComposer, repositoryRepository db.RepositoryRepository, fetchRepository db.FetchRepository, emitter metrics.Emitter, ) ChangeFetcher
type ChangeScheduler ¶
type ChangeScheduler struct {
// contains filtered or unexported fields
}
func NewChangeScheduler ¶
func NewChangeScheduler(logger lager.Logger, repoRepo db.RepositoryRepository, scheduler Scheduler, fetcher ChangeFetcher) *ChangeScheduler
func (*ChangeScheduler) Run ¶
func (s *ChangeScheduler) Run(signals <-chan os.Signal, ready chan<- struct{}) error
func (*ChangeScheduler) ScheduleActiveRepos ¶
func (s *ChangeScheduler) ScheduleActiveRepos(logger lager.Logger) error
func (*ChangeScheduler) ScheduleRepo ¶
func (s *ChangeScheduler) ScheduleRepo(logger lager.Logger, repo db.Repository)
type GitHubClient ¶
type GitHubClient interface { ListRepositoriesByOrg(lager.Logger, string) ([]GitHubRepository, error) ListRepositoriesByUser(lager.Logger, string) ([]GitHubRepository, error) }
func NewGitHubClient ¶
func NewGitHubClient( ghClient *github.Client, ) GitHubClient
type GitHubOrganization ¶
type GitHubOrganization struct {
Name string `json:"login"`
}
type GitHubRepository ¶
type NotificationComposer ¶
type NotificationComposer interface {
ScanAndNotify(context.Context, lager.Logger, string, string, map[string]struct{}, string, string, string) error
}
func NewNotificationComposer ¶
func NewNotificationComposer( repositoryRepository db.RepositoryRepository, router notifications.Router, scanner Scanner, ) NotificationComposer
type RepoChangeScheduler ¶
type RepoChangeScheduler interface {
ScheduleRepo(lager.Logger, db.Repository)
}
type RepoDiscoverer ¶
type RepoDiscoverer struct {
// contains filtered or unexported fields
}
type Scanner ¶
type Scanner interface {
Scan(lager.Logger, string, string, map[string]struct{}, string, string, string) ([]db.Credential, error)
}
func NewScanner ¶
func NewScanner( gitClient gitclient.Client, repositoryRepository db.RepositoryRepository, scanRepository db.ScanRepository, credentialRepository db.CredentialRepository, sniffer sniff.Sniffer, ) Scanner
type ScheduleRunner ¶
type ScheduleRunner struct {
// contains filtered or unexported fields
}
func NewScheduleRunner ¶
func NewScheduleRunner(logger lager.Logger) *ScheduleRunner
func (*ScheduleRunner) Run ¶
func (s *ScheduleRunner) Run(signals <-chan os.Signal, ready chan<- struct{}) error
func (*ScheduleRunner) ScheduleWork ¶
func (s *ScheduleRunner) ScheduleWork(cron string, work func())
type Server ¶
type Server interface { revokpb.RevokServer }
func NewServer ¶
func NewServer( logger lager.Logger, searcher search.Searcher, blobSearcher search.BlobSearcher, repositoryRepository db.RepositoryRepository, branchRepository db.BranchRepository, ) Server
type Sink ¶
type Sink struct { }
Sink is the type that represents the sink that will emit errors to Sentry.
func NewSentrySink ¶
NewSentrySink creates a new Sink for use with Lager.
Source Files ¶
Click to show internal directories.
Click to hide internal directories.