From 56c9d681372df444e8d649ac76845a3404982ebb Mon Sep 17 00:00:00 2001 From: Steve Kriss Date: Tue, 12 Dec 2017 15:22:46 -0800 Subject: [PATCH] switch to logrus.FieldLogger and arktest.NewLogger() everywhere Signed-off-by: Steve Kriss --- Gopkg.lock | 4 +- pkg/backup/item_hook_handler.go | 4 +- pkg/backup/item_hook_handler_test.go | 2 +- pkg/backup/pod_command_executor.go | 4 +- pkg/backup/pod_command_executor_test.go | 2 +- pkg/cloudprovider/backup_cache.go | 4 +- pkg/cloudprovider/backup_cache_test.go | 13 ++- pkg/cloudprovider/backup_service.go | 6 +- pkg/cloudprovider/backup_service_test.go | 30 +++--- pkg/cmd/server/server.go | 6 +- pkg/cmd/server/server_test.go | 6 +- pkg/controller/backup_sync_controller.go | 4 +- pkg/controller/backup_sync_controller_test.go | 15 ++- pkg/controller/download_request_controller.go | 4 +- .../download_request_controller_test.go | 7 +- pkg/controller/gc_controller.go | 4 +- pkg/controller/gc_controller_test.go | 49 +++++----- pkg/controller/schedule_controller_test.go | 3 +- pkg/discovery/helper.go | 4 +- pkg/restore/restore.go | 4 +- pkg/restore/restore_test.go | 8 +- pkg/util/test/test_logger.go | 2 +- .../pkg/kubectl/cmd/util/shortcut_expander.go | 4 +- .../sirupsen/logrus/hooks/test/test.go | 95 ------------------- 24 files changed, 91 insertions(+), 193 deletions(-) delete mode 100644 vendor/github.com/sirupsen/logrus/hooks/test/test.go diff --git a/Gopkg.lock b/Gopkg.lock index b995750ef..f796ec937 100644 --- a/Gopkg.lock +++ b/Gopkg.lock @@ -283,7 +283,7 @@ [[projects]] name = "github.com/sirupsen/logrus" - packages = [".","hooks/test"] + packages = ["."] revision = "f006c2ac4710855cf0f916dd6b77acf6b048dc6e" version = "v1.0.3" @@ -426,6 +426,6 @@ [solve-meta] analyzer-name = "dep" analyzer-version = 1 - inputs-digest = "6287197115277ba882d5bb5dc20d74a8cb8e13d90c4e783c518a4e4aed55245f" + inputs-digest = "c3cd1b703421685e5b2343ced6eaa6ec958b9c44d62277322f4c93de164c2d04" solver-name = "gps-cdcl" solver-version = 1 diff --git a/pkg/backup/item_hook_handler.go b/pkg/backup/item_hook_handler.go index b9a047681..e9655314d 100644 --- a/pkg/backup/item_hook_handler.go +++ b/pkg/backup/item_hook_handler.go @@ -37,7 +37,7 @@ type itemHookHandler interface { // to specify a hook, that is executed. Otherwise, this looks at the backup context's Backup to // determine if there are any hooks relevant to the item, taking into account the hook spec's // namespaces, resources, and label selector. - handleHooks(log *logrus.Entry, groupResource schema.GroupResource, obj runtime.Unstructured, resourceHooks []resourceHook) error + handleHooks(log logrus.FieldLogger, groupResource schema.GroupResource, obj runtime.Unstructured, resourceHooks []resourceHook) error } // defaultItemHookHandler is the default itemHookHandler. @@ -46,7 +46,7 @@ type defaultItemHookHandler struct { } func (h *defaultItemHookHandler) handleHooks( - log *logrus.Entry, + log logrus.FieldLogger, groupResource schema.GroupResource, obj runtime.Unstructured, resourceHooks []resourceHook, diff --git a/pkg/backup/item_hook_handler_test.go b/pkg/backup/item_hook_handler_test.go index 98f1d70c3..54e28ac64 100644 --- a/pkg/backup/item_hook_handler_test.go +++ b/pkg/backup/item_hook_handler_test.go @@ -38,7 +38,7 @@ type mockItemHookHandler struct { mock.Mock } -func (h *mockItemHookHandler) handleHooks(log *logrus.Entry, groupResource schema.GroupResource, obj runtime.Unstructured, resourceHooks []resourceHook) error { +func (h *mockItemHookHandler) handleHooks(log logrus.FieldLogger, groupResource schema.GroupResource, obj runtime.Unstructured, resourceHooks []resourceHook) error { args := h.Called(log, groupResource, obj, resourceHooks) return args.Error(0) } diff --git a/pkg/backup/pod_command_executor.go b/pkg/backup/pod_command_executor.go index 0a8a28e78..d122da70b 100644 --- a/pkg/backup/pod_command_executor.go +++ b/pkg/backup/pod_command_executor.go @@ -35,7 +35,7 @@ import ( type podCommandExecutor interface { // executePodCommand executes a command in a container in a pod. If the command takes longer than // the specified timeout, an error is returned. - executePodCommand(log *logrus.Entry, item map[string]interface{}, namespace, name, hookName string, hook *api.ExecHook) error + executePodCommand(log logrus.FieldLogger, item map[string]interface{}, namespace, name, hookName string, hook *api.ExecHook) error } type poster interface { @@ -63,7 +63,7 @@ func NewPodCommandExecutor(restClientConfig *rest.Config, restClient poster) pod // command takes longer than the specified timeout, an error is returned (NOTE: it is not currently // possible to ensure the command is terminated when the timeout occurs, so it may continue to run // in the background). -func (e *defaultPodCommandExecutor) executePodCommand(log *logrus.Entry, item map[string]interface{}, namespace, name, hookName string, hook *api.ExecHook) error { +func (e *defaultPodCommandExecutor) executePodCommand(log logrus.FieldLogger, item map[string]interface{}, namespace, name, hookName string, hook *api.ExecHook) error { if item == nil { return errors.New("item is required") } diff --git a/pkg/backup/pod_command_executor_test.go b/pkg/backup/pod_command_executor_test.go index 79b2c9adb..0ef33cb5e 100644 --- a/pkg/backup/pod_command_executor_test.go +++ b/pkg/backup/pod_command_executor_test.go @@ -270,7 +270,7 @@ type mockPodCommandExecutor struct { mock.Mock } -func (e *mockPodCommandExecutor) executePodCommand(log *logrus.Entry, item map[string]interface{}, namespace, name, hookName string, hook *v1.ExecHook) error { +func (e *mockPodCommandExecutor) executePodCommand(log logrus.FieldLogger, item map[string]interface{}, namespace, name, hookName string, hook *v1.ExecHook) error { args := e.Called(log, item, namespace, name, hookName, hook) return args.Error(0) } diff --git a/pkg/cloudprovider/backup_cache.go b/pkg/cloudprovider/backup_cache.go index bfd671e7b..1b634c6f4 100644 --- a/pkg/cloudprovider/backup_cache.go +++ b/pkg/cloudprovider/backup_cache.go @@ -41,13 +41,13 @@ type backupCache struct { // This doesn't really need to be a map right now, but if we ever move to supporting multiple // buckets, this will be ready for it. buckets map[string]*backupCacheBucket - logger *logrus.Logger + logger logrus.FieldLogger } var _ BackupGetter = &backupCache{} // NewBackupCache returns a new backup cache that refreshes from delegate every resyncPeriod. -func NewBackupCache(ctx context.Context, delegate BackupGetter, resyncPeriod time.Duration, logger *logrus.Logger) BackupGetter { +func NewBackupCache(ctx context.Context, delegate BackupGetter, resyncPeriod time.Duration, logger logrus.FieldLogger) BackupGetter { c := &backupCache{ delegate: delegate, buckets: make(map[string]*backupCacheBucket), diff --git a/pkg/cloudprovider/backup_cache_test.go b/pkg/cloudprovider/backup_cache_test.go index 373750d60..23dbeb9a4 100644 --- a/pkg/cloudprovider/backup_cache_test.go +++ b/pkg/cloudprovider/backup_cache_test.go @@ -22,7 +22,6 @@ import ( "testing" "time" - testlogger "github.com/sirupsen/logrus/hooks/test" "github.com/stretchr/testify/assert" "github.com/heptio/ark/pkg/apis/ark/v1" @@ -34,7 +33,7 @@ func TestNewBackupCache(t *testing.T) { var ( delegate = &test.FakeBackupService{} ctx, cancel = context.WithTimeout(context.Background(), 5*time.Second) - logger, _ = testlogger.NewNullLogger() + logger = test.NewLogger() ) defer cancel() @@ -104,8 +103,8 @@ func TestNewBackupCache(t *testing.T) { func TestBackupCacheRefresh(t *testing.T) { var ( - delegate = &test.FakeBackupService{} - logger, _ = testlogger.NewNullLogger() + delegate = &test.FakeBackupService{} + logger = test.NewLogger() ) c := &backupCache{ @@ -136,9 +135,9 @@ func TestBackupCacheRefresh(t *testing.T) { func TestBackupCacheGetAllBackupsUsesCacheIfPresent(t *testing.T) { var ( - delegate = &test.FakeBackupService{} - logger, _ = testlogger.NewNullLogger() - bucket1 = []*v1.Backup{ + delegate = &test.FakeBackupService{} + logger = test.NewLogger() + bucket1 = []*v1.Backup{ test.NewTestBackup().WithName("backup1").Backup, test.NewTestBackup().WithName("backup2").Backup, } diff --git a/pkg/cloudprovider/backup_service.go b/pkg/cloudprovider/backup_service.go index b2dd8ae79..1a417a4b3 100644 --- a/pkg/cloudprovider/backup_service.go +++ b/pkg/cloudprovider/backup_service.go @@ -101,14 +101,14 @@ func getRestoreResultsKey(backup, restore string) string { type backupService struct { objectStore ObjectStore decoder runtime.Decoder - logger *logrus.Logger + logger logrus.FieldLogger } var _ BackupService = &backupService{} var _ BackupGetter = &backupService{} // NewBackupService creates a backup service using the provided object store -func NewBackupService(objectStore ObjectStore, logger *logrus.Logger) BackupService { +func NewBackupService(objectStore ObjectStore, logger logrus.FieldLogger) BackupService { return &backupService{ objectStore: objectStore, decoder: scheme.Codecs.UniversalDecoder(api.SchemeGroupVersion), @@ -268,7 +268,7 @@ func NewBackupServiceWithCachedBackupGetter( ctx context.Context, delegate BackupService, resyncPeriod time.Duration, - logger *logrus.Logger, + logger logrus.FieldLogger, ) BackupService { return &cachedBackupService{ BackupService: delegate, diff --git a/pkg/cloudprovider/backup_service_test.go b/pkg/cloudprovider/backup_service_test.go index f037d195f..4aec228fd 100644 --- a/pkg/cloudprovider/backup_service_test.go +++ b/pkg/cloudprovider/backup_service_test.go @@ -27,7 +27,6 @@ import ( "time" testutil "github.com/heptio/ark/pkg/util/test" - testlogger "github.com/sirupsen/logrus/hooks/test" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -36,6 +35,7 @@ import ( api "github.com/heptio/ark/pkg/apis/ark/v1" "github.com/heptio/ark/pkg/util/encode" + arktest "github.com/heptio/ark/pkg/util/test" ) func TestUploadBackup(t *testing.T) { @@ -85,7 +85,7 @@ func TestUploadBackup(t *testing.T) { objStore = &testutil.ObjectStore{} bucket = "test-bucket" backupName = "test-backup" - logger, _ = testlogger.NewNullLogger() + logger = arktest.NewLogger() ) if test.metadata != nil { @@ -118,10 +118,10 @@ func TestUploadBackup(t *testing.T) { func TestDownloadBackup(t *testing.T) { var ( - o = &testutil.ObjectStore{} - bucket = "b" - backup = "bak" - logger, _ = testlogger.NewNullLogger() + o = &testutil.ObjectStore{} + bucket = "b" + backup = "bak" + logger = arktest.NewLogger() ) o.On("GetObject", bucket, backup+"/"+backup+".tar.gz").Return(ioutil.NopCloser(strings.NewReader("foo")), nil) @@ -155,11 +155,11 @@ func TestDeleteBackup(t *testing.T) { for _, test := range tests { t.Run(test.name, func(t *testing.T) { var ( - bucket = "bucket" - backup = "bak" - objects = []string{"bak/ark-backup.json", "bak/bak.tar.gz", "bak/bak.log.gz"} - objStore = &testutil.ObjectStore{} - logger, _ = testlogger.NewNullLogger() + bucket = "bucket" + backup = "bak" + objects = []string{"bak/ark-backup.json", "bak/bak.tar.gz", "bak/bak.log.gz"} + objStore = &testutil.ObjectStore{} + logger = arktest.NewLogger() ) objStore.On("ListObjects", bucket, backup+"/").Return(objects, test.listObjectsError) @@ -229,9 +229,9 @@ func TestGetAllBackups(t *testing.T) { for _, test := range tests { t.Run(test.name, func(t *testing.T) { var ( - bucket = "bucket" - objStore = &testutil.ObjectStore{} - logger, _ = testlogger.NewNullLogger() + bucket = "bucket" + objStore = &testutil.ObjectStore{} + logger = arktest.NewLogger() ) objStore.On("ListCommonPrefixes", bucket, "/").Return([]string{"backup-1", "backup-2"}, nil) @@ -328,7 +328,7 @@ func TestCreateSignedURL(t *testing.T) { t.Run(test.name, func(t *testing.T) { var ( objectStorage = &testutil.ObjectStore{} - logger, _ = testlogger.NewNullLogger() + logger = arktest.NewLogger() backupService = NewBackupService(objectStorage, logger) ) diff --git a/pkg/cmd/server/server.go b/pkg/cmd/server/server.go index b9b096478..c217d02a6 100644 --- a/pkg/cmd/server/server.go +++ b/pkg/cmd/server/server.go @@ -141,7 +141,7 @@ type server struct { sharedInformerFactory informers.SharedInformerFactory ctx context.Context cancelFunc context.CancelFunc - logger *logrus.Logger + logger logrus.FieldLogger pluginManager plugin.Manager } @@ -272,7 +272,7 @@ var defaultResourcePriorities = []string{ "configmaps", } -func applyConfigDefaults(c *api.Config, logger *logrus.Logger) { +func applyConfigDefaults(c *api.Config, logger logrus.FieldLogger) { if c.GCSyncPeriod.Duration == 0 { c.GCSyncPeriod.Duration = defaultGCSyncPeriod } @@ -567,7 +567,7 @@ func newRestorer( resourcePriorities []string, backupClient arkv1client.BackupsGetter, kubeClient kubernetes.Interface, - logger *logrus.Logger, + logger logrus.FieldLogger, ) (restore.Restorer, error) { return restore.NewKubernetesRestorer( discoveryHelper, diff --git a/pkg/cmd/server/server_test.go b/pkg/cmd/server/server_test.go index c63dcf41f..a91715999 100644 --- a/pkg/cmd/server/server_test.go +++ b/pkg/cmd/server/server_test.go @@ -20,16 +20,16 @@ import ( "testing" "time" - "github.com/sirupsen/logrus/hooks/test" "github.com/stretchr/testify/assert" "github.com/heptio/ark/pkg/apis/ark/v1" + arktest "github.com/heptio/ark/pkg/util/test" ) func TestApplyConfigDefaults(t *testing.T) { var ( - logger, _ = test.NewNullLogger() - c = &v1.Config{} + logger = arktest.NewLogger() + c = &v1.Config{} ) // test defaulting diff --git a/pkg/controller/backup_sync_controller.go b/pkg/controller/backup_sync_controller.go index 978c2e311..039471b55 100644 --- a/pkg/controller/backup_sync_controller.go +++ b/pkg/controller/backup_sync_controller.go @@ -36,7 +36,7 @@ type backupSyncController struct { backupService cloudprovider.BackupService bucket string syncPeriod time.Duration - logger *logrus.Logger + logger logrus.FieldLogger } func NewBackupSyncController( @@ -44,7 +44,7 @@ func NewBackupSyncController( backupService cloudprovider.BackupService, bucket string, syncPeriod time.Duration, - logger *logrus.Logger, + logger logrus.FieldLogger, ) Interface { if syncPeriod < time.Minute { logger.Infof("Provided backup sync period %v is too short. Setting to 1 minute", syncPeriod) diff --git a/pkg/controller/backup_sync_controller_test.go b/pkg/controller/backup_sync_controller_test.go index 47aa18b76..6ded5cef1 100644 --- a/pkg/controller/backup_sync_controller_test.go +++ b/pkg/controller/backup_sync_controller_test.go @@ -21,14 +21,13 @@ import ( "testing" "time" - testlogger "github.com/sirupsen/logrus/hooks/test" "github.com/stretchr/testify/assert" core "k8s.io/client-go/testing" "github.com/heptio/ark/pkg/apis/ark/v1" "github.com/heptio/ark/pkg/generated/clientset/versioned/fake" - . "github.com/heptio/ark/pkg/util/test" + arktest "github.com/heptio/ark/pkg/util/test" ) func TestBackupSyncControllerRun(t *testing.T) { @@ -47,9 +46,9 @@ func TestBackupSyncControllerRun(t *testing.T) { { name: "normal case", cloudBackups: []*v1.Backup{ - NewTestBackup().WithNamespace("ns-1").WithName("backup-1").Backup, - NewTestBackup().WithNamespace("ns-1").WithName("backup-2").Backup, - NewTestBackup().WithNamespace("ns-2").WithName("backup-3").Backup, + arktest.NewTestBackup().WithNamespace("ns-1").WithName("backup-1").Backup, + arktest.NewTestBackup().WithNamespace("ns-1").WithName("backup-2").Backup, + arktest.NewTestBackup().WithNamespace("ns-2").WithName("backup-3").Backup, }, }, } @@ -57,9 +56,9 @@ func TestBackupSyncControllerRun(t *testing.T) { for _, test := range tests { t.Run(test.name, func(t *testing.T) { var ( - bs = &BackupService{} - client = fake.NewSimpleClientset() - logger, _ = testlogger.NewNullLogger() + bs = &arktest.BackupService{} + client = fake.NewSimpleClientset() + logger = arktest.NewLogger() ) c := NewBackupSyncController( diff --git a/pkg/controller/download_request_controller.go b/pkg/controller/download_request_controller.go index e5358ded8..baaf8b7b7 100644 --- a/pkg/controller/download_request_controller.go +++ b/pkg/controller/download_request_controller.go @@ -52,7 +52,7 @@ type downloadRequestController struct { syncHandler func(key string) error queue workqueue.RateLimitingInterface clock clock.Clock - logger *logrus.Logger + logger logrus.FieldLogger } // NewDownloadRequestController creates a new DownloadRequestController. @@ -61,7 +61,7 @@ func NewDownloadRequestController( downloadRequestInformer informers.DownloadRequestInformer, backupService cloudprovider.BackupService, bucket string, - logger *logrus.Logger, + logger logrus.FieldLogger, ) Interface { c := &downloadRequestController{ downloadRequestClient: downloadRequestClient, diff --git a/pkg/controller/download_request_controller_test.go b/pkg/controller/download_request_controller_test.go index 12a975067..eea7c77e4 100644 --- a/pkg/controller/download_request_controller_test.go +++ b/pkg/controller/download_request_controller_test.go @@ -21,7 +21,6 @@ import ( "testing" "time" - testlogger "github.com/sirupsen/logrus/hooks/test" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -32,7 +31,7 @@ import ( "github.com/heptio/ark/pkg/generated/clientset/versioned/fake" informers "github.com/heptio/ark/pkg/generated/informers/externalversions" "github.com/heptio/ark/pkg/util/collections" - "github.com/heptio/ark/pkg/util/test" + arktest "github.com/heptio/ark/pkg/util/test" ) func TestProcessDownloadRequest(t *testing.T) { @@ -99,8 +98,8 @@ func TestProcessDownloadRequest(t *testing.T) { client = fake.NewSimpleClientset() sharedInformers = informers.NewSharedInformerFactory(client, 0) downloadRequestsInformer = sharedInformers.Ark().V1().DownloadRequests() - backupService = &test.BackupService{} - logger, _ = testlogger.NewNullLogger() + backupService = &arktest.BackupService{} + logger = arktest.NewLogger() ) defer backupService.AssertExpectations(t) diff --git a/pkg/controller/gc_controller.go b/pkg/controller/gc_controller.go index cd35398ea..8e20d820f 100644 --- a/pkg/controller/gc_controller.go +++ b/pkg/controller/gc_controller.go @@ -50,7 +50,7 @@ type gcController struct { restoreLister listers.RestoreLister restoreListerSynced cache.InformerSynced restoreClient arkv1client.RestoresGetter - logger *logrus.Logger + logger logrus.FieldLogger } // NewGCController constructs a new gcController. @@ -63,7 +63,7 @@ func NewGCController( backupClient arkv1client.BackupsGetter, restoreInformer informers.RestoreInformer, restoreClient arkv1client.RestoresGetter, - logger *logrus.Logger, + logger logrus.FieldLogger, ) Interface { if syncPeriod < time.Minute { logger.WithField("syncPeriod", syncPeriod).Info("Provided GC sync period is too short. Setting to 1 minute") diff --git a/pkg/controller/gc_controller_test.go b/pkg/controller/gc_controller_test.go index 1d51955e4..273057df8 100644 --- a/pkg/controller/gc_controller_test.go +++ b/pkg/controller/gc_controller_test.go @@ -20,7 +20,6 @@ import ( "testing" "time" - testlogger "github.com/sirupsen/logrus/hooks/test" "github.com/stretchr/testify/assert" "k8s.io/apimachinery/pkg/util/clock" @@ -31,7 +30,7 @@ import ( "github.com/heptio/ark/pkg/cloudprovider" "github.com/heptio/ark/pkg/generated/clientset/versioned/fake" informers "github.com/heptio/ark/pkg/generated/informers/externalversions" - . "github.com/heptio/ark/pkg/util/test" + arktest "github.com/heptio/ark/pkg/util/test" ) type gcTest struct { @@ -51,7 +50,7 @@ func TestGarbageCollect(t *testing.T) { { name: "basic-expired", backups: []*api.Backup{ - NewTestBackup().WithName("backup-1"). + arktest.NewTestBackup().WithName("backup-1"). WithExpiration(fakeClock.Now().Add(-1*time.Second)). WithSnapshot("pv-1", "snapshot-1"). WithSnapshot("pv-2", "snapshot-2"). @@ -64,7 +63,7 @@ func TestGarbageCollect(t *testing.T) { { name: "basic-unexpired", backups: []*api.Backup{ - NewTestBackup().WithName("backup-1"). + arktest.NewTestBackup().WithName("backup-1"). WithExpiration(fakeClock.Now().Add(1*time.Minute)). WithSnapshot("pv-1", "snapshot-1"). WithSnapshot("pv-2", "snapshot-2"). @@ -77,12 +76,12 @@ func TestGarbageCollect(t *testing.T) { { name: "one expired, one unexpired", backups: []*api.Backup{ - NewTestBackup().WithName("backup-1"). + arktest.NewTestBackup().WithName("backup-1"). WithExpiration(fakeClock.Now().Add(-1*time.Minute)). WithSnapshot("pv-1", "snapshot-1"). WithSnapshot("pv-2", "snapshot-2"). Backup, - NewTestBackup().WithName("backup-2"). + arktest.NewTestBackup().WithName("backup-2"). WithExpiration(fakeClock.Now().Add(1*time.Minute)). WithSnapshot("pv-3", "snapshot-3"). WithSnapshot("pv-4", "snapshot-4"). @@ -95,7 +94,7 @@ func TestGarbageCollect(t *testing.T) { { name: "none expired in target bucket", backups: []*api.Backup{ - NewTestBackup().WithName("backup-2"). + arktest.NewTestBackup().WithName("backup-2"). WithExpiration(fakeClock.Now().Add(1*time.Minute)). WithSnapshot("pv-3", "snapshot-3"). WithSnapshot("pv-4", "snapshot-4"). @@ -108,7 +107,7 @@ func TestGarbageCollect(t *testing.T) { { name: "orphan snapshots", backups: []*api.Backup{ - NewTestBackup().WithName("backup-1"). + arktest.NewTestBackup().WithName("backup-1"). WithExpiration(fakeClock.Now().Add(-1*time.Minute)). WithSnapshot("pv-1", "snapshot-1"). WithSnapshot("pv-2", "snapshot-2"). @@ -121,12 +120,12 @@ func TestGarbageCollect(t *testing.T) { { name: "no snapshot service only GC's backups without snapshots", backups: []*api.Backup{ - NewTestBackup().WithName("backup-1"). + arktest.NewTestBackup().WithName("backup-1"). WithExpiration(fakeClock.Now().Add(-1*time.Second)). WithSnapshot("pv-1", "snapshot-1"). WithSnapshot("pv-2", "snapshot-2"). Backup, - NewTestBackup().WithName("backup-2"). + arktest.NewTestBackup().WithName("backup-2"). WithExpiration(fakeClock.Now().Add(-1 * time.Second)). Backup, }, @@ -138,12 +137,12 @@ func TestGarbageCollect(t *testing.T) { for _, test := range tests { var ( - backupService = &BackupService{} - snapshotService *FakeSnapshotService + backupService = &arktest.BackupService{} + snapshotService *arktest.FakeSnapshotService ) if !test.nilSnapshotService { - snapshotService = &FakeSnapshotService{SnapshotsTaken: test.snapshots} + snapshotService = &arktest.FakeSnapshotService{SnapshotsTaken: test.snapshots} } t.Run(test.name, func(t *testing.T) { @@ -152,7 +151,7 @@ func TestGarbageCollect(t *testing.T) { sharedInformers = informers.NewSharedInformerFactory(client, 0) snapSvc cloudprovider.SnapshotService bucket = "bucket" - logger, _ = testlogger.NewNullLogger() + logger = arktest.NewLogger() ) if snapshotService != nil { @@ -204,7 +203,7 @@ func TestGarbageCollectBackup(t *testing.T) { }{ { name: "deleteBackupFile=false, snapshot deletion fails, don't delete kube backup", - backup: NewTestBackup().WithName("backup-1"). + backup: arktest.NewTestBackup().WithName("backup-1"). WithSnapshot("pv-1", "snapshot-1"). WithSnapshot("pv-2", "snapshot-2"). Backup, @@ -215,12 +214,12 @@ func TestGarbageCollectBackup(t *testing.T) { }, { name: "related restores should be deleted", - backup: NewTestBackup().WithName("backup-1").Backup, + backup: arktest.NewTestBackup().WithName("backup-1").Backup, deleteBackupFile: true, snapshots: sets.NewString(), restores: []*api.Restore{ - NewTestRestore(api.DefaultNamespace, "restore-1", api.RestorePhaseCompleted).WithBackup("backup-1").Restore, - NewTestRestore(api.DefaultNamespace, "restore-2", api.RestorePhaseCompleted).WithBackup("backup-2").Restore, + arktest.NewTestRestore(api.DefaultNamespace, "restore-1", api.RestorePhaseCompleted).WithBackup("backup-1").Restore, + arktest.NewTestRestore(api.DefaultNamespace, "restore-2", api.RestorePhaseCompleted).WithBackup("backup-2").Restore, }, expectedRestoreDeletes: []string{"restore-1"}, expectedBackupDelete: "backup-1", @@ -232,12 +231,12 @@ func TestGarbageCollectBackup(t *testing.T) { for _, test := range tests { t.Run(test.name, func(t *testing.T) { var ( - backupService = &BackupService{} - snapshotService = &FakeSnapshotService{SnapshotsTaken: test.snapshots} + backupService = &arktest.BackupService{} + snapshotService = &arktest.FakeSnapshotService{SnapshotsTaken: test.snapshots} client = fake.NewSimpleClientset() sharedInformers = informers.NewSharedInformerFactory(client, 0) bucket = "bucket-1" - logger, _ = testlogger.NewNullLogger() + logger = arktest.NewLogger() controller = NewGCController( backupService, snapshotService, @@ -298,8 +297,8 @@ func TestGarbageCollectBackup(t *testing.T) { func TestGarbageCollectPicksUpBackupUponExpiration(t *testing.T) { var ( - backupService = &BackupService{} - snapshotService = &FakeSnapshotService{} + backupService = &arktest.BackupService{} + snapshotService = &arktest.FakeSnapshotService{} fakeClock = clock.NewFakeClock(time.Now()) assert = assert.New(t) ) @@ -307,7 +306,7 @@ func TestGarbageCollectPicksUpBackupUponExpiration(t *testing.T) { scenario := gcTest{ name: "basic-expired", backups: []*api.Backup{ - NewTestBackup().WithName("backup-1"). + arktest.NewTestBackup().WithName("backup-1"). WithExpiration(fakeClock.Now().Add(1*time.Second)). WithSnapshot("pv-1", "snapshot-1"). WithSnapshot("pv-2", "snapshot-2"). @@ -321,7 +320,7 @@ func TestGarbageCollectPicksUpBackupUponExpiration(t *testing.T) { var ( client = fake.NewSimpleClientset() sharedInformers = informers.NewSharedInformerFactory(client, 0) - logger, _ = testlogger.NewNullLogger() + logger = arktest.NewLogger() ) controller := NewGCController( diff --git a/pkg/controller/schedule_controller_test.go b/pkg/controller/schedule_controller_test.go index 9c1133484..e004ef749 100644 --- a/pkg/controller/schedule_controller_test.go +++ b/pkg/controller/schedule_controller_test.go @@ -23,7 +23,6 @@ import ( "time" "github.com/robfig/cron" - testlogger "github.com/sirupsen/logrus/hooks/test" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -362,7 +361,7 @@ func TestParseCronSchedule(t *testing.T) { }, } - logger, _ := testlogger.NewNullLogger() + logger := arktest.NewLogger() c, errs := parseCronSchedule(s, logger) require.Empty(t, errs) diff --git a/pkg/discovery/helper.go b/pkg/discovery/helper.go index 497b9baa2..93e0a223a 100644 --- a/pkg/discovery/helper.go +++ b/pkg/discovery/helper.go @@ -49,7 +49,7 @@ type Helper interface { type helper struct { discoveryClient discovery.DiscoveryInterface - logger *logrus.Logger + logger logrus.FieldLogger // lock guards mapper, resources and resourcesMap lock sync.RWMutex @@ -60,7 +60,7 @@ type helper struct { var _ Helper = &helper{} -func NewHelper(discoveryClient discovery.DiscoveryInterface, logger *logrus.Logger) (Helper, error) { +func NewHelper(discoveryClient discovery.DiscoveryInterface, logger logrus.FieldLogger) (Helper, error) { h := &helper{ discoveryClient: discoveryClient, } diff --git a/pkg/restore/restore.go b/pkg/restore/restore.go index 9ea01617f..11e7a15f2 100644 --- a/pkg/restore/restore.go +++ b/pkg/restore/restore.go @@ -70,7 +70,7 @@ type kubernetesRestorer struct { namespaceClient corev1.NamespaceInterface resourcePriorities []string fileSystem FileSystem - logger *logrus.Logger + logger logrus.FieldLogger } // prioritizeResources returns an ordered, fully-resolved list of resources to restore based on @@ -140,7 +140,7 @@ func NewKubernetesRestorer( resourcePriorities []string, backupClient arkv1client.BackupsGetter, namespaceClient corev1.NamespaceInterface, - logger *logrus.Logger, + logger logrus.FieldLogger, ) (Restorer, error) { return &kubernetesRestorer{ discoveryHelper: discoveryHelper, diff --git a/pkg/restore/restore_test.go b/pkg/restore/restore_test.go index b929b96e2..33b7fffa9 100644 --- a/pkg/restore/restore_test.go +++ b/pkg/restore/restore_test.go @@ -23,8 +23,6 @@ import ( "testing" "github.com/pkg/errors" - "github.com/sirupsen/logrus/hooks/test" - testlogger "github.com/sirupsen/logrus/hooks/test" "github.com/spf13/afero" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -83,7 +81,7 @@ func TestPrioritizeResources(t *testing.T) { }, } - logger, _ := test.NewNullLogger() + logger := arktest.NewLogger() for _, test := range tests { t.Run(test.name, func(t *testing.T) { @@ -180,7 +178,7 @@ func TestRestoreNamespaceFiltering(t *testing.T) { for _, test := range tests { t.Run(test.name, func(t *testing.T) { - log, _ := testlogger.NewNullLogger() + log := arktest.NewLogger() ctx := &context{ restore: test.restore, @@ -272,7 +270,7 @@ func TestRestorePriority(t *testing.T) { for _, test := range tests { t.Run(test.name, func(t *testing.T) { - log, _ := testlogger.NewNullLogger() + log := arktest.NewLogger() ctx := &context{ restore: test.restore, diff --git a/pkg/util/test/test_logger.go b/pkg/util/test/test_logger.go index fc963698d..9ac8c0903 100644 --- a/pkg/util/test/test_logger.go +++ b/pkg/util/test/test_logger.go @@ -22,7 +22,7 @@ import ( "github.com/sirupsen/logrus" ) -func NewLogger() *logrus.Entry { +func NewLogger() logrus.FieldLogger { logger := logrus.New() logger.Out = ioutil.Discard return logrus.NewEntry(logger) diff --git a/third_party/kubernetes/pkg/kubectl/cmd/util/shortcut_expander.go b/third_party/kubernetes/pkg/kubectl/cmd/util/shortcut_expander.go index b101059da..780b00dde 100644 --- a/third_party/kubernetes/pkg/kubectl/cmd/util/shortcut_expander.go +++ b/third_party/kubernetes/pkg/kubectl/cmd/util/shortcut_expander.go @@ -39,12 +39,12 @@ type shortcutExpander struct { RESTMapper meta.RESTMapper discoveryClient discovery.DiscoveryInterface - logger *logrus.Logger + logger logrus.FieldLogger } var _ meta.RESTMapper = &shortcutExpander{} -func NewShortcutExpander(delegate meta.RESTMapper, client discovery.DiscoveryInterface, logger *logrus.Logger) (shortcutExpander, error) { +func NewShortcutExpander(delegate meta.RESTMapper, client discovery.DiscoveryInterface, logger logrus.FieldLogger) (shortcutExpander, error) { if client == nil { return shortcutExpander{}, errors.New("Please provide discovery client to shortcut expander") } diff --git a/vendor/github.com/sirupsen/logrus/hooks/test/test.go b/vendor/github.com/sirupsen/logrus/hooks/test/test.go deleted file mode 100644 index 62c4845df..000000000 --- a/vendor/github.com/sirupsen/logrus/hooks/test/test.go +++ /dev/null @@ -1,95 +0,0 @@ -// The Test package is used for testing logrus. It is here for backwards -// compatibility from when logrus' organization was upper-case. Please use -// lower-case logrus and the `null` package instead of this one. -package test - -import ( - "io/ioutil" - "sync" - - "github.com/sirupsen/logrus" -) - -// Hook is a hook designed for dealing with logs in test scenarios. -type Hook struct { - // Entries is an array of all entries that have been received by this hook. - // For safe access, use the AllEntries() method, rather than reading this - // value directly. - Entries []*logrus.Entry - mu sync.RWMutex -} - -// NewGlobal installs a test hook for the global logger. -func NewGlobal() *Hook { - - hook := new(Hook) - logrus.AddHook(hook) - - return hook - -} - -// NewLocal installs a test hook for a given local logger. -func NewLocal(logger *logrus.Logger) *Hook { - - hook := new(Hook) - logger.Hooks.Add(hook) - - return hook - -} - -// NewNullLogger creates a discarding logger and installs the test hook. -func NewNullLogger() (*logrus.Logger, *Hook) { - - logger := logrus.New() - logger.Out = ioutil.Discard - - return logger, NewLocal(logger) - -} - -func (t *Hook) Fire(e *logrus.Entry) error { - t.mu.Lock() - defer t.mu.Unlock() - t.Entries = append(t.Entries, e) - return nil -} - -func (t *Hook) Levels() []logrus.Level { - return logrus.AllLevels -} - -// LastEntry returns the last entry that was logged or nil. -func (t *Hook) LastEntry() *logrus.Entry { - t.mu.RLock() - defer t.mu.RUnlock() - i := len(t.Entries) - 1 - if i < 0 { - return nil - } - // Make a copy, for safety - e := *t.Entries[i] - return &e -} - -// AllEntries returns all entries that were logged. -func (t *Hook) AllEntries() []*logrus.Entry { - t.mu.RLock() - defer t.mu.RUnlock() - // Make a copy so the returned value won't race with future log requests - entries := make([]*logrus.Entry, len(t.Entries)) - for i, entry := range t.Entries { - // Make a copy, for safety - e := *entry - entries[i] = &e - } - return entries -} - -// Reset removes all Entries from this test hook. -func (t *Hook) Reset() { - t.mu.Lock() - defer t.mu.Unlock() - t.Entries = make([]*logrus.Entry, 0) -}