From eeaa25dce6cfd56964406a5916af6bb805e65cc6 Mon Sep 17 00:00:00 2001 From: iwilltry42 Date: Wed, 3 Jun 2020 14:16:09 +0200 Subject: [PATCH] WaitForNodeLogMessage: move default expected messages to constants --- pkg/cluster/cluster.go | 8 ++++---- pkg/types/types.go | 7 +++++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/pkg/cluster/cluster.go b/pkg/cluster/cluster.go index b2788b06..bba77a0b 100644 --- a/pkg/cluster/cluster.go +++ b/pkg/cluster/cluster.go @@ -255,7 +255,7 @@ func CreateCluster(ctx context.Context, runtime k3drt.Runtime, cluster *k3d.Clus // TODO: avoid `level=fatal msg="starting kubernetes: preparing server: post join: a configuration change is already in progress (5)"` // ... by scanning for this line in logs and restarting the container in case it appears log.Debugf("Starting to wait for master node '%s'", masterNode.Name) - return WaitForNodeLogMessage(ctx, runtime, masterNode, "Wrote kubeconfig", time.Time{}) + return WaitForNodeLogMessage(ctx, runtime, masterNode, k3d.ReadyLogMessageByRole[k3d.MasterRole], time.Time{}) }) } } @@ -310,7 +310,7 @@ func CreateCluster(ctx context.Context, runtime k3drt.Runtime, cluster *k3d.Clus // TODO: avoid `level=fatal msg="starting kubernetes: preparing server: post join: a configuration change is already in progress (5)"` // ... by scanning for this line in logs and restarting the container in case it appears log.Debugf("Starting to wait for loadbalancer node '%s'", lbNode.Name) - return WaitForNodeLogMessage(ctx, runtime, lbNode, "start worker processes", time.Time{}) + return WaitForNodeLogMessage(ctx, runtime, lbNode, k3d.ReadyLogMessageByRole[k3d.LoadBalancerRole], time.Time{}) }) } } else { @@ -535,7 +535,7 @@ func StartCluster(ctx context.Context, runtime k3drt.Runtime, cluster *k3d.Clust // TODO: avoid `level=fatal msg="starting kubernetes: preparing server: post join: a configuration change is already in progress (5)"` // ... by scanning for this line in logs and restarting the container in case it appears log.Debugf("Starting to wait for master node '%s'", masterNode.Name) - return WaitForNodeLogMessage(ctx, runtime, masterNode, "Wrote kubeconfig", start) + return WaitForNodeLogMessage(ctx, runtime, masterNode, k3d.ReadyLogMessageByRole[k3d.MasterRole], start) }) } } @@ -551,7 +551,7 @@ func StartCluster(ctx context.Context, runtime k3drt.Runtime, cluster *k3d.Clust // TODO: avoid `level=fatal msg="starting kubernetes: preparing server: post join: a configuration change is already in progress (5)"` // ... by scanning for this line in logs and restarting the container in case it appears log.Debugf("Starting to wait for loadbalancer node '%s'", masterlb.Name) - return WaitForNodeLogMessage(ctx, runtime, masterlb, "start worker processes", start) + return WaitForNodeLogMessage(ctx, runtime, masterlb, k3d.ReadyLogMessageByRole[k3d.LoadBalancerRole], start) }) } diff --git a/pkg/types/types.go b/pkg/types/types.go index d919bc42..13ae1e19 100644 --- a/pkg/types/types.go +++ b/pkg/types/types.go @@ -44,6 +44,13 @@ const DefaultLBImage = "docker.io/iwilltry42/k3d-proxy:v0.0.2" // DefaultObjectNamePrefix defines the name prefix for every object created by k3d const DefaultObjectNamePrefix = "k3d" +// ReadyLogMessageMaster defines the log messages we wait for until a master node is considered ready +var ReadyLogMessageByRole = map[Role]string{ + MasterRole: "Wrote kubeconfig", + WorkerRole: "", + LoadBalancerRole: "start worker processes", +} + // Role defines a k3d node role type Role string