func (p *Pipeline) ExtractRepository(repository provider.GitRepository, after string, eventChan chan<- PipelineEvent) error { // nolint
	defer p.publishEvent(eventChan, RepositoryPipelineEvent{true, repository.GetPrivate(), repository.GetName()})

	log.Infof("Cloning repo %v\n", repository.GetName())

	gitRepository, err := p.Provider.CloneRepository(p.Cloner, repository)
	if err != nil {
		return err
	}

	log.Infof("Cloned repo %v (size: %v KB)\n", repository.GetName(), repository.GetStorageSize())

	extractorGitFile := NewFastExtractor()
	extractorGitFile.Run(gitRepository, after)

	for gitFile := range extractorGitFile.ChanGitFiles {
		p.publishEvent(eventChan, ResultGitFilePipelineEvent{repository, gitFile})
	}

	log.Infof("Done extracting %v\n", repository.GetName())

	return nil
}
// ExtractRepository extracts for a single repository.
ExtractRepository extracts for a single repository.
// ExtractRepository extracts for a single repository .
func (p *Pipeline) ExtractRepository(repository provider.GitRepository, after string, eventChan chan<- PipelineEvent) error { 
	defer p.publishEvent(eventChan, RepositoryPipelineEvent{true, repository.GetPrivate(), repository.GetName()})
	log.Infof("Cloning repo %v\n", repository.GetName())
	gitRepository, err := p.Provider.CloneRepository(p.Cloner, repository)
	if err != nil {
		return err
	}
	log.Infof("Cloned repo %v (size: %v KB)\n", repository.GetName(), repository.GetStorageSize())
	extractorGitFile := NewFastExtractor()
	extractorGitFile.Run(gitRepository, after)
	for gitFile := range extractorGitFile.ChanGitFiles {
		p.publishEvent(eventChan, ResultGitFilePipelineEvent{repository, gitFile})
	}
	log.Infof("Done extracting %v\n", repository.GetName())
	return nil
}
func ( p * Pipeline ) ExtractRepository ( repository provider . GitRepository , after string , eventChan chan <- PipelineEvent ) error { defer p . publishEvent ( eventChan , RepositoryPipelineEvent { true , repository . GetPrivate ( ) , repository . GetName ( ) } ) log . Infof ( " \n " , repository . GetName ( ) ) gitRepository , err := p . Provider . CloneRepository ( p . Cloner , repository ) if err != nil { return err } log . Infof ( " \n " , repository . GetName ( ) , repository . GetStorageSize ( ) ) extractorGitFile := NewFastExtractor ( ) extractorGitFile . Run ( gitRepository , after ) for gitFile := range extractorGitFile . ChanGitFiles { p . publishEvent ( eventChan , ResultGitFilePipelineEvent { repository , gitFile } ) } log . Infof ( " \n " , repository . GetName ( ) ) return nil }
ExtractRepository extracts for a single repository.
ExtractRepository extracts for a single repository .
// nolint