Skip to content

Commit

Permalink
convert cron to use new entrypoint (#4207)
Browse files Browse the repository at this point in the history
There are further simplifications that are possible,
but leaving for later to keep this PR small.

Signed-off-by: Spencer Schrock <[email protected]>
  • Loading branch information
spencerschrock committed Jul 3, 2024
1 parent 7841828 commit d889dcb
Showing 1 changed file with 16 additions and 8 deletions.
24 changes: 16 additions & 8 deletions cron/internal/worker/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@ import (
"github.com/ossf/scorecard/v5/cron/worker"
docs "github.com/ossf/scorecard/v5/docs/checks"
sce "github.com/ossf/scorecard/v5/errors"
"github.com/ossf/scorecard/v5/internal/packageclient"
"github.com/ossf/scorecard/v5/log"
"github.com/ossf/scorecard/v5/pkg"
"github.com/ossf/scorecard/v5/policy"
Expand Down Expand Up @@ -90,7 +89,6 @@ type ScorecardWorker struct {
ciiClient clients.CIIBestPracticesClient
ossFuzzRepoClient clients.RepoClient
vulnsClient clients.VulnerabilitiesClient
projectClient packageclient.ProjectPackageClient
apiBucketURL string
rawBucketURL string
blacklistedChecks []string
Expand Down Expand Up @@ -138,8 +136,6 @@ func newScorecardWorker() (*ScorecardWorker, error) {
sw.vulnsClient = clients.DefaultVulnerabilitiesClient()
}

sw.projectClient = packageclient.CreateDepsDevClient()

if sw.exporter, err = startMetricsExporter(); err != nil {
return nil, fmt.Errorf("startMetricsExporter: %w", err)
}
Expand All @@ -161,7 +157,7 @@ func (sw *ScorecardWorker) Close() {
func (sw *ScorecardWorker) Process(ctx context.Context, req *data.ScorecardBatchRequest, bucketURL string) error {
return processRequest(ctx, req, sw.blacklistedChecks, bucketURL, sw.rawBucketURL, sw.apiBucketURL,
sw.checkDocs, sw.githubClient, sw.gitlabClient, sw.ossFuzzRepoClient, sw.ciiClient,
sw.vulnsClient, sw.projectClient, sw.logger)
sw.vulnsClient, sw.logger)
}

func (sw *ScorecardWorker) PostProcess() {
Expand All @@ -176,7 +172,6 @@ func processRequest(ctx context.Context,
githubClient, gitlabClient clients.RepoClient, ossFuzzRepoClient clients.RepoClient,
ciiClient clients.CIIBestPracticesClient,
vulnsClient clients.VulnerabilitiesClient,
projectClient packageclient.ProjectPackageClient,
logger *log.Logger,
) error {
filename := worker.ResultFilename(batchRequest)
Expand All @@ -200,6 +195,9 @@ func processRequest(ctx context.Context,
}
repo.AppendMetadata(repoReq.GetMetadata()...)

// TODO: realistically the enabled/disabled checks can just be
// calculated once in newScorecardWorker as all of the repos use
// clients.HeadSHA. but not doing yet to keep refactor small
commitSHA := clients.HeadSHA
requiredRequestType := []checker.RequestType{}
if repoReq.GetCommit() != clients.HeadSHA {
Expand All @@ -214,9 +212,19 @@ func processRequest(ctx context.Context,
for _, check := range disabledChecks {
delete(checksToRun, check)
}
enabledChecks := make([]string, 0, len(checksToRun))
for check := range checksToRun {
enabledChecks = append(enabledChecks, check)
}

result, err := pkg.RunScorecard(ctx, repo, commitSHA, 0, checksToRun,
repoClient, ossFuzzRepoClient, ciiClient, vulnsClient, projectClient)
result, err := pkg.Run(ctx, repo,
pkg.WithCommitSHA(commitSHA),
pkg.WithChecks(enabledChecks),
pkg.WithRepoClient(repoClient),
pkg.WithOSSFuzzClient(ossFuzzRepoClient),
pkg.WithOpenSSFBestPraticesClient(ciiClient),
pkg.WithVulnerabilitiesClient(vulnsClient),
)
if errors.Is(err, sce.ErrRepoUnreachable) {
// Not accessible repo - continue.
continue
Expand Down

0 comments on commit d889dcb

Please sign in to comment.