mirror of
https://github.com/ossf/scorecard.git
synced 2024-07-14 11:30:25 +03:00
convert cron to use new entrypoint (#4207)
There are further simplifications that are possible, but leaving for later to keep this PR small. Signed-off-by: Spencer Schrock <sschrock@google.com>
This commit is contained in:
parent
7841828bb4
commit
d889dcbada
@ -40,7 +40,6 @@ import (
|
|||||||
"github.com/ossf/scorecard/v5/cron/worker"
|
"github.com/ossf/scorecard/v5/cron/worker"
|
||||||
docs "github.com/ossf/scorecard/v5/docs/checks"
|
docs "github.com/ossf/scorecard/v5/docs/checks"
|
||||||
sce "github.com/ossf/scorecard/v5/errors"
|
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/log"
|
||||||
"github.com/ossf/scorecard/v5/pkg"
|
"github.com/ossf/scorecard/v5/pkg"
|
||||||
"github.com/ossf/scorecard/v5/policy"
|
"github.com/ossf/scorecard/v5/policy"
|
||||||
@ -90,7 +89,6 @@ type ScorecardWorker struct {
|
|||||||
ciiClient clients.CIIBestPracticesClient
|
ciiClient clients.CIIBestPracticesClient
|
||||||
ossFuzzRepoClient clients.RepoClient
|
ossFuzzRepoClient clients.RepoClient
|
||||||
vulnsClient clients.VulnerabilitiesClient
|
vulnsClient clients.VulnerabilitiesClient
|
||||||
projectClient packageclient.ProjectPackageClient
|
|
||||||
apiBucketURL string
|
apiBucketURL string
|
||||||
rawBucketURL string
|
rawBucketURL string
|
||||||
blacklistedChecks []string
|
blacklistedChecks []string
|
||||||
@ -138,8 +136,6 @@ func newScorecardWorker() (*ScorecardWorker, error) {
|
|||||||
sw.vulnsClient = clients.DefaultVulnerabilitiesClient()
|
sw.vulnsClient = clients.DefaultVulnerabilitiesClient()
|
||||||
}
|
}
|
||||||
|
|
||||||
sw.projectClient = packageclient.CreateDepsDevClient()
|
|
||||||
|
|
||||||
if sw.exporter, err = startMetricsExporter(); err != nil {
|
if sw.exporter, err = startMetricsExporter(); err != nil {
|
||||||
return nil, fmt.Errorf("startMetricsExporter: %w", err)
|
return nil, fmt.Errorf("startMetricsExporter: %w", err)
|
||||||
}
|
}
|
||||||
@ -161,7 +157,7 @@ func (sw *ScorecardWorker) Close() {
|
|||||||
func (sw *ScorecardWorker) Process(ctx context.Context, req *data.ScorecardBatchRequest, bucketURL string) error {
|
func (sw *ScorecardWorker) Process(ctx context.Context, req *data.ScorecardBatchRequest, bucketURL string) error {
|
||||||
return processRequest(ctx, req, sw.blacklistedChecks, bucketURL, sw.rawBucketURL, sw.apiBucketURL,
|
return processRequest(ctx, req, sw.blacklistedChecks, bucketURL, sw.rawBucketURL, sw.apiBucketURL,
|
||||||
sw.checkDocs, sw.githubClient, sw.gitlabClient, sw.ossFuzzRepoClient, sw.ciiClient,
|
sw.checkDocs, sw.githubClient, sw.gitlabClient, sw.ossFuzzRepoClient, sw.ciiClient,
|
||||||
sw.vulnsClient, sw.projectClient, sw.logger)
|
sw.vulnsClient, sw.logger)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (sw *ScorecardWorker) PostProcess() {
|
func (sw *ScorecardWorker) PostProcess() {
|
||||||
@ -176,7 +172,6 @@ func processRequest(ctx context.Context,
|
|||||||
githubClient, gitlabClient clients.RepoClient, ossFuzzRepoClient clients.RepoClient,
|
githubClient, gitlabClient clients.RepoClient, ossFuzzRepoClient clients.RepoClient,
|
||||||
ciiClient clients.CIIBestPracticesClient,
|
ciiClient clients.CIIBestPracticesClient,
|
||||||
vulnsClient clients.VulnerabilitiesClient,
|
vulnsClient clients.VulnerabilitiesClient,
|
||||||
projectClient packageclient.ProjectPackageClient,
|
|
||||||
logger *log.Logger,
|
logger *log.Logger,
|
||||||
) error {
|
) error {
|
||||||
filename := worker.ResultFilename(batchRequest)
|
filename := worker.ResultFilename(batchRequest)
|
||||||
@ -200,6 +195,9 @@ func processRequest(ctx context.Context,
|
|||||||
}
|
}
|
||||||
repo.AppendMetadata(repoReq.GetMetadata()...)
|
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
|
commitSHA := clients.HeadSHA
|
||||||
requiredRequestType := []checker.RequestType{}
|
requiredRequestType := []checker.RequestType{}
|
||||||
if repoReq.GetCommit() != clients.HeadSHA {
|
if repoReq.GetCommit() != clients.HeadSHA {
|
||||||
@ -214,9 +212,19 @@ func processRequest(ctx context.Context,
|
|||||||
for _, check := range disabledChecks {
|
for _, check := range disabledChecks {
|
||||||
delete(checksToRun, check)
|
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,
|
result, err := pkg.Run(ctx, repo,
|
||||||
repoClient, ossFuzzRepoClient, ciiClient, vulnsClient, projectClient)
|
pkg.WithCommitSHA(commitSHA),
|
||||||
|
pkg.WithChecks(enabledChecks),
|
||||||
|
pkg.WithRepoClient(repoClient),
|
||||||
|
pkg.WithOSSFuzzClient(ossFuzzRepoClient),
|
||||||
|
pkg.WithOpenSSFBestPraticesClient(ciiClient),
|
||||||
|
pkg.WithVulnerabilitiesClient(vulnsClient),
|
||||||
|
)
|
||||||
if errors.Is(err, sce.ErrRepoUnreachable) {
|
if errors.Is(err, sce.ErrRepoUnreachable) {
|
||||||
// Not accessible repo - continue.
|
// Not accessible repo - continue.
|
||||||
continue
|
continue
|
||||||
|
Loading…
Reference in New Issue
Block a user