Skip to content

chore: make syncstore generic#8000

Merged
gsquared94 merged 1 commit intoGoogleContainerTools:mainfrom
gsquared94:make-syncstore-generic
Oct 28, 2022
Merged

chore: make syncstore generic#8000
gsquared94 merged 1 commit intoGoogleContainerTools:mainfrom
gsquared94:make-syncstore-generic

Conversation

@gsquared94
Copy link
Copy Markdown
Contributor

This PR makes the util.SyncStore generic. This helps simplify the client code by providing type safety for method parameters and return types, and removes typecasting.

Before:

func (h *artifactHasherImpl) safeHash(ctx context.Context, a *latest.Artifact, platforms platform.Matcher) (string, error) {
	val := h.syncStore.Exec(a.ImageName,
		func() interface{} {
			hash, err := singleArtifactHash(ctx, h.lister, a, h.mode, platforms)
			if err != nil {
				return err
			}
			return hash
		})
	switch t := val.(type) {
	case error:
		return "", t
	case string:
		return t, nil
	default:
		return "", fmt.Errorf("internal error when retrieving cache result of type %T", t)
	}
}

After:


func (h *artifactHasherImpl) safeHash(ctx context.Context, a *latest.Artifact, platforms platform.Matcher) (string, error) {
	return h.syncStore.Exec(a.ImageName,
		func() (string, error) {
			return singleArtifactHash(ctx, h.lister, a, h.mode, platforms)
		})
}

@codecov
Copy link
Copy Markdown

codecov bot commented Oct 27, 2022

Codecov Report

Merging #8000 (0c34e1f) into main (290280e) will decrease coverage by 3.76%.
The diff coverage is 54.09%.

@@            Coverage Diff             @@
##             main    #8000      +/-   ##
==========================================
- Coverage   70.48%   66.71%   -3.77%     
==========================================
  Files         515      596      +81     
  Lines       23150    28894    +5744     
==========================================
+ Hits        16317    19278    +2961     
- Misses       5776     8194    +2418     
- Partials     1057     1422     +365     
Impacted Files Coverage Δ
cmd/skaffold/app/cmd/credits/export.go 0.00% <0.00%> (ø)
cmd/skaffold/app/cmd/deploy.go 40.90% <0.00%> (-12.94%) ⬇️
cmd/skaffold/app/cmd/test.go 44.44% <0.00%> (ø)
cmd/skaffold/app/exitcode.go 100.00% <ø> (+6.66%) ⬆️
cmd/skaffold/skaffold.go 0.00% <0.00%> (ø)
cmd/skaffold/app/cmd/inspect_tests.go 62.50% <14.28%> (-1.14%) ⬇️
cmd/skaffold/app/cmd/render.go 35.48% <18.18%> (-5.90%) ⬇️
cmd/skaffold/app/cmd/lsp.go 28.12% <28.12%> (ø)
cmd/skaffold/app/cmd/run.go 64.28% <33.33%> (-9.63%) ⬇️
cmd/skaffold/app/cmd/fix.go 56.41% <37.50%> (-20.07%) ⬇️
... and 390 more

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@gsquared94 gsquared94 merged commit aa0bf34 into GoogleContainerTools:main Oct 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants