diff --git a/cli/config.go b/cli/config.go index 32c7ab5e..b81642e7 100644 --- a/cli/config.go +++ b/cli/config.go @@ -110,7 +110,7 @@ type Config struct { type Asset struct { AdditionalTypes []string `mapstructure:"additional_types"` - DeleteAssetsTimeout time.Duration `mapstructure:"delete_assets_timeout"` + DeleteAssetsTimeout time.Duration `mapstructure:"delete_assets_timeout" default:"5m"` } func LoadConfig() (*Config, error) { diff --git a/cli/server.go b/cli/server.go index d779bd89..4ee43270 100644 --- a/cli/server.go +++ b/cli/server.go @@ -149,12 +149,12 @@ func runServer(ctx context.Context, cfg *Config) error { }() assetService, cancel := asset.NewService(asset.ServiceDeps{ - AssetRepo: assetRepository, - DiscoveryRepo: discoveryRepository, - LineageRepo: lineageRepository, - Worker: wrkr, - Logger: logger, - AssetConfig: cfg.Asset, + AssetRepo: assetRepository, + DiscoveryRepo: discoveryRepository, + LineageRepo: lineageRepository, + Worker: wrkr, + Logger: logger, + DeleteAssetsTimeout: cfg.Asset.DeleteAssetsTimeout, }) defer cancel() diff --git a/core/asset/service.go b/core/asset/service.go index d8d589f1..d5e668d3 100644 --- a/core/asset/service.go +++ b/core/asset/service.go @@ -6,7 +6,6 @@ import ( "time" "github.com/google/uuid" - "github.com/goto/compass/cli" "github.com/goto/compass/pkg/queryexpr" "github.com/goto/salt/log" "go.opentelemetry.io/otel" @@ -20,7 +19,7 @@ type Service struct { lineageRepository LineageRepository worker Worker logger log.Logger - assetConfig cli.Asset + deleteAssetsTimeout time.Duration cancelFnList []func() assetOpCounter metric.Int64Counter @@ -37,12 +36,12 @@ type Worker interface { } type ServiceDeps struct { - AssetRepo Repository - DiscoveryRepo DiscoveryRepository - LineageRepo LineageRepository - Worker Worker - Logger log.Logger - AssetConfig cli.Asset + AssetRepo Repository + DiscoveryRepo DiscoveryRepository + LineageRepo LineageRepository + Worker Worker + Logger log.Logger + DeleteAssetsTimeout time.Duration } func NewService(deps ServiceDeps) (service *Service, cancel func()) { @@ -58,7 +57,7 @@ func NewService(deps ServiceDeps) (service *Service, cancel func()) { lineageRepository: deps.LineageRepo, worker: deps.Worker, logger: deps.Logger, - assetConfig: deps.AssetConfig, + deleteAssetsTimeout: deps.DeleteAssetsTimeout, cancelFnList: make([]func(), 0), assetOpCounter: assetOpCounter, @@ -154,7 +153,7 @@ func (s *Service) DeleteAssets(ctx context.Context, request DeleteAssetsRequest) } if !request.DryRun && total > 0 { - newCtx, cancel := context.WithTimeout(context.Background(), s.assetConfig.DeleteAssetsTimeout) + newCtx, cancel := context.WithTimeout(context.Background(), s.deleteAssetsTimeout) s.cancelFnList = append(s.cancelFnList, cancel) go s.executeDeleteAssets(newCtx, deleteSQLExpr) }