Envtest based integration tests for Fission (#2858)

* skeleton for envtest fission
* Refactor code and add CLI test
* hack
* Update server test
* remove skip-ci for lint tests
* Pass client go storagesvc
* Add clientGen interface across code
* Fix storagesvc test
* Fix cmd client
* add retry in server test
* Fix concurrenct access to pool deployment
* Remove old executor test
* get rid of ginkgo/gomega
* disable flaky test
* flaky test
* revert ci change
* handle err from ParseBool

---------

Signed-off-by: Sanket Sudake <sanketsudake@gmail.com>
Co-authored-by: Pranoy Kundu <pranoy1998k@gmail.com>
This commit is contained in:
Sanket Sudake
2023-10-26 12:09:11 +05:30
committed by GitHub
co-authored by Pranoy Kundu
parent 15e16fcc82
commit 8a17d391c5
44 changed files with 534 additions and 524 deletions
+4 -3
View File
@@ -30,6 +30,7 @@ import (
"github.com/pkg/errors"
"go.uber.org/zap"
"github.com/fission/fission/pkg/crd"
"github.com/fission/fission/pkg/utils/httpserver"
"github.com/fission/fission/pkg/utils/metrics"
otelUtils "github.com/fission/fission/pkg/utils/otel"
@@ -281,7 +282,7 @@ func (ss *StorageService) Start(ctx context.Context, port int) {
}
// Start runs storage service
func Start(ctx context.Context, logger *zap.Logger, storage Storage, port int) error {
func Start(ctx context.Context, clientGen crd.ClientGeneratorInterface, logger *zap.Logger, storage Storage, port int) error {
enablePruner, err := strconv.ParseBool(os.Getenv("PRUNE_ENABLED"))
if err != nil {
logger.Warn("PRUNE_ENABLED value not set. Enabling archive pruner by default.", zap.Error(err))
@@ -295,7 +296,7 @@ func Start(ctx context.Context, logger *zap.Logger, storage Storage, port int) e
// create http handlers
storageService := MakeStorageService(logger, storageClient, port)
go metrics.ServeMetrics(ctx, logger)
go metrics.ServeMetrics(ctx, "storagesvc", logger)
go storageService.Start(ctx, port)
// enablePruner prevents storagesvc unit test from needing to talk to kubernetes
@@ -305,7 +306,7 @@ func Start(ctx context.Context, logger *zap.Logger, storage Storage, port int) e
if err != nil {
pruneInterval = defaultPruneInterval
}
pruner, err := MakeArchivePruner(logger, storageClient, time.Duration(pruneInterval))
pruner, err := MakeArchivePruner(logger, clientGen, storageClient, time.Duration(pruneInterval))
if err != nil {
return errors.Wrap(err, "Error creating archivePruner")
}