From d5db990c8237e7b9725e712085215fc0d0d43ef8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20Ga=C4=87e=C5=A1a?= Date: Fri, 28 Feb 2025 14:18:30 +0000 Subject: [PATCH] techdebt: [CODE-3276]: remove direct usage of SpacePathStore (#3495) * remove direct usage of SpacePathStore --- app/services/secret/service.go | 19 ++++++++++--------- app/services/secret/wire.go | 5 +++-- cmd/gitness/wire_gen.go | 4 ++-- .../app/api/controller/metadata/controller.go | 4 ---- .../controller/metadata/create_registry.go | 5 +++-- registry/app/api/router/harness/route.go | 3 --- registry/app/api/router/wire.go | 3 --- 7 files changed, 18 insertions(+), 25 deletions(-) diff --git a/app/services/secret/service.go b/app/services/secret/service.go index 301b66452..e3d7c113c 100644 --- a/app/services/secret/service.go +++ b/app/services/secret/service.go @@ -18,6 +18,7 @@ import ( "context" secretCtrl "github.com/harness/gitness/app/api/controller/secret" + "github.com/harness/gitness/app/services/refcache" "github.com/harness/gitness/app/store" "github.com/harness/gitness/encrypt" "github.com/harness/gitness/secret" @@ -27,28 +28,28 @@ import ( ) type service struct { - secretStore store.SecretStore - encrypter encrypt.Encrypter - spacePathStore store.SpacePathStore + secretStore store.SecretStore + encrypter encrypt.Encrypter + spaceFinder refcache.SpaceFinder } func NewService( - secretStore store.SecretStore, encrypter encrypt.Encrypter, spacePathStore store.SpacePathStore, + secretStore store.SecretStore, encrypter encrypt.Encrypter, spaceFinder refcache.SpaceFinder, ) secret.Service { return &service{ - secretStore: secretStore, - encrypter: encrypter, - spacePathStore: spacePathStore, + secretStore: secretStore, + encrypter: encrypter, + spaceFinder: spaceFinder, } } func (s *service) DecryptSecret(ctx context.Context, spacePath string, secretIdentifier string) (string, error) { - path, err := s.spacePathStore.FindByPath(ctx, spacePath) + space, err := s.spaceFinder.FindByRef(ctx, spacePath) if err != nil { log.Error().Msgf("failed to find space path: %v", err) return "", errors.Wrap(err, "failed to find space path") } - sec, err := s.secretStore.FindByIdentifier(ctx, path.SpaceID, secretIdentifier) + sec, err := s.secretStore.FindByIdentifier(ctx, space.ID, secretIdentifier) if err != nil { log.Error().Msgf("failed to find secret: %v", err) return "", errors.Wrap(err, "failed to find secret") diff --git a/app/services/secret/wire.go b/app/services/secret/wire.go index 95669f347..94969c096 100644 --- a/app/services/secret/wire.go +++ b/app/services/secret/wire.go @@ -15,6 +15,7 @@ package secret import ( + "github.com/harness/gitness/app/services/refcache" "github.com/harness/gitness/app/store" "github.com/harness/gitness/encrypt" "github.com/harness/gitness/secret" @@ -27,7 +28,7 @@ var WireSet = wire.NewSet( ) func ProvideSecretService( - secretStore store.SecretStore, encrypter encrypt.Encrypter, spacePathStore store.SpacePathStore, + secretStore store.SecretStore, encrypter encrypt.Encrypter, spaceFinder refcache.SpaceFinder, ) secret.Service { - return NewService(secretStore, encrypter, spacePathStore) + return NewService(secretStore, encrypter, spaceFinder) } diff --git a/cmd/gitness/wire_gen.go b/cmd/gitness/wire_gen.go index f25517934..475b6233e 100644 --- a/cmd/gitness/wire_gen.go +++ b/cmd/gitness/wire_gen.go @@ -456,7 +456,7 @@ func initSystem(ctx context.Context, config *types.Config) (*server.System, erro downloadStatRepository := database2.ProvideDownloadStatDao(db) localRegistry := docker.LocalRegistryProvider(app, manifestService, blobRepository, registryRepository, manifestRepository, registryBlobRepository, mediaTypesRepository, tagRepository, imageRepository, artifactRepository, bandwidthStatRepository, downloadStatRepository, gcService, transactor) upstreamProxyConfigRepository := database2.ProvideUpstreamDao(db, registryRepository, spaceFinder) - secretService := secret3.ProvideSecretService(secretStore, encrypter, spacePathStore) + secretService := secret3.ProvideSecretService(secretStore, encrypter, spaceFinder) proxyController := docker.ProvideProxyController(localRegistry, manifestService, secretService, spaceFinder) remoteRegistry := docker.RemoteRegistryProvider(localRegistry, app, upstreamProxyConfigRepository, spaceFinder, secretService, proxyController) coreController := pkg.CoreControllerProvider(registryRepository) @@ -470,7 +470,7 @@ func initSystem(ctx context.Context, config *types.Config) (*server.System, erro fileManager := filemanager.Provider(filemanagerApp, registryRepository, genericBlobRepository, nodesRepository, transactor) cleanupPolicyRepository := database2.ProvideCleanupPolicyDao(db, transactor) webhooksRepository := database2.ProvideWebhookDao(db) - apiHandler := router.APIHandlerProvider(registryRepository, upstreamProxyConfigRepository, fileManager, tagRepository, manifestRepository, cleanupPolicyRepository, imageRepository, storageDriver, spaceFinder, transactor, authenticator, provider, authorizer, auditService, spacePathStore, artifactRepository, webhooksRepository) + apiHandler := router.APIHandlerProvider(registryRepository, upstreamProxyConfigRepository, fileManager, tagRepository, manifestRepository, cleanupPolicyRepository, imageRepository, storageDriver, spaceFinder, transactor, authenticator, provider, authorizer, auditService, artifactRepository, webhooksRepository) mavenDBStore := maven.DBStoreProvider(registryRepository, imageRepository, artifactRepository, spaceStore, bandwidthStatRepository, downloadStatRepository, nodesRepository, upstreamProxyConfigRepository) mavenLocalRegistry := maven.LocalRegistryProvider(mavenDBStore, transactor, fileManager) mavenController := maven.ProvideProxyController(mavenLocalRegistry, secretService, spaceFinder) diff --git a/registry/app/api/controller/metadata/controller.go b/registry/app/api/controller/metadata/controller.go index ba32c3452..daea5c0e4 100644 --- a/registry/app/api/controller/metadata/controller.go +++ b/registry/app/api/controller/metadata/controller.go @@ -17,7 +17,6 @@ package metadata import ( "github.com/harness/gitness/app/auth/authz" "github.com/harness/gitness/app/services/refcache" - corestore "github.com/harness/gitness/app/store" urlprovider "github.com/harness/gitness/app/url" "github.com/harness/gitness/audit" storagedriver "github.com/harness/gitness/registry/app/driver" @@ -43,7 +42,6 @@ type APIController struct { URLProvider urlprovider.Provider Authorizer authz.Authorizer AuditService audit.Service - spacePathStore corestore.SpacePathStore ArtifactStore store.ArtifactRepository WebhooksRepository store.WebhooksRepository } @@ -64,7 +62,6 @@ func NewAPIController( urlProvider urlprovider.Provider, authorizer authz.Authorizer, auditService audit.Service, - spacePathStore corestore.SpacePathStore, artifactStore store.ArtifactRepository, webhooksRepository store.WebhooksRepository, ) *APIController { @@ -84,7 +81,6 @@ func NewAPIController( URLProvider: urlProvider, Authorizer: authorizer, AuditService: auditService, - spacePathStore: spacePathStore, ArtifactStore: artifactStore, WebhooksRepository: webhooksRepository, } diff --git a/registry/app/api/controller/metadata/create_registry.go b/registry/app/api/controller/metadata/create_registry.go index 4bec7a519..571a0bbca 100644 --- a/registry/app/api/controller/metadata/create_registry.go +++ b/registry/app/api/controller/metadata/create_registry.go @@ -381,11 +381,12 @@ func (c *APIController) getSecretSpaceID(ctx context.Context, secretSpacePath *s return -1, fmt.Errorf("secret space path is missing") } - path, err := c.spacePathStore.FindByPath(ctx, *secretSpacePath) + space, err := c.SpaceFinder.FindByRef(ctx, *secretSpacePath) if err != nil { return -1, fmt.Errorf("failed to get Space Path: %w", err) } - return int(path.SpaceID), nil + + return int(space.ID), nil } func isDuplicateKeyError(err error) bool { diff --git a/registry/app/api/router/harness/route.go b/registry/app/api/router/harness/route.go index 62efa461e..3c2579ed6 100644 --- a/registry/app/api/router/harness/route.go +++ b/registry/app/api/router/harness/route.go @@ -22,7 +22,6 @@ import ( "github.com/harness/gitness/app/auth/authn" "github.com/harness/gitness/app/auth/authz" "github.com/harness/gitness/app/services/refcache" - corestore "github.com/harness/gitness/app/store" urlprovider "github.com/harness/gitness/app/url" "github.com/harness/gitness/audit" "github.com/harness/gitness/registry/app/api/controller/metadata" @@ -68,7 +67,6 @@ func NewAPIHandler( urlProvider urlprovider.Provider, authorizer authz.Authorizer, auditService audit.Service, - spacePathStore corestore.SpacePathStore, artifactStore store.ArtifactRepository, webhooksRepository store.WebhooksRepository, ) APIHandler { @@ -92,7 +90,6 @@ func NewAPIHandler( urlProvider, authorizer, auditService, - spacePathStore, artifactStore, webhooksRepository, ) diff --git a/registry/app/api/router/wire.go b/registry/app/api/router/wire.go index 3f0ed6f88..f3f0ed078 100644 --- a/registry/app/api/router/wire.go +++ b/registry/app/api/router/wire.go @@ -19,7 +19,6 @@ import ( "github.com/harness/gitness/app/auth/authz" "github.com/harness/gitness/app/config" "github.com/harness/gitness/app/services/refcache" - corestore "github.com/harness/gitness/app/store" urlprovider "github.com/harness/gitness/app/url" "github.com/harness/gitness/audit" "github.com/harness/gitness/registry/app/api/handler/generic" @@ -61,7 +60,6 @@ func APIHandlerProvider( urlProvider urlprovider.Provider, authorizer authz.Authorizer, auditService audit.Service, - spacePathStore corestore.SpacePathStore, artifactStore store.ArtifactRepository, webhooksRepository store.WebhooksRepository, ) harness.APIHandler { @@ -81,7 +79,6 @@ func APIHandlerProvider( urlProvider, authorizer, auditService, - spacePathStore, artifactStore, webhooksRepository, )