in internal/indexer/indexer.go [62:105]
func (i *Indexer) initClients(ctx context.Context) error {
config := &gitaly.StorageConfig{
Address: i.GitalyAddress,
Token: i.GitalyToken,
StorageName: i.GitalyStorageName,
RelativePath: i.GitalyRelativePath,
}
gitalyClient, gitalyErr := gitaly.NewGitalyClient(ctx, config, i.ProjectID, int64(i.LimitFileSize))
if gitalyErr != nil {
return gitalyErr
}
i.gitalyClient = gitalyClient
if i.TargetSHA == "" {
targetSHA, err := i.gitalyClient.GetCurrentSHA()
if err != nil {
return err
}
i.TargetSHA = targetSHA
}
zoektSHA, ok, zoektErr := i.CurrentSHA()
if zoektErr != nil {
return zoektErr
}
if !ok || i.ForceReindex {
i.ForceReindex = true
i.gitalyClient.FromHash = ""
} else if i.gitalyClient.IsValidSHA(zoektSHA) {
i.gitalyClient.FromHash = zoektSHA
} else {
i.ForceReindex = true
i.gitalyClient.FromHash = ""
}
i.initZoektClient(i.TargetSHA)
i.gitalyClient.ToHash = i.TargetSHA
return nil
}