techdebt: [CODE-3276]: remove direct usage of SpacePathStore (#3495)

* remove direct usage of SpacePathStore
try-new-ui
Marko Gaćeša 2025-02-28 14:18:30 +00:00 committed by Harness
parent 16bcc1ad02
commit d5db990c82
7 changed files with 18 additions and 25 deletions

View File

@ -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")

View File

@ -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)
}

View File

@ -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)

View File

@ -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,
}

View File

@ -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 {

View File

@ -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,
)

View File

@ -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,
)