From 41b8536a508f7e2706022aa3bb35a89d42939f88 Mon Sep 17 00:00:00 2001 From: Dave Chen Date: Tue, 20 Sep 2022 18:07:18 +0800 Subject: [PATCH] kubeadm: try to reuse `RunData` if possible The generation of `RunData` for init and join is relative time consuming, the data should be shared / reused whenever possible. Signed-off-by: Dave Chen --- cmd/kubeadm/app/cmd/phases/workflow/runner.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/cmd/kubeadm/app/cmd/phases/workflow/runner.go b/cmd/kubeadm/app/cmd/phases/workflow/runner.go index dc0f59b4244..c2502632300 100644 --- a/cmd/kubeadm/app/cmd/phases/workflow/runner.go +++ b/cmd/kubeadm/app/cmd/phases/workflow/runner.go @@ -221,10 +221,12 @@ func (e *Runner) Run(args []string) error { return errors.New(msg.String()) } - // builds the runner data - var data RunData - if data, err = e.InitData(args); err != nil { - return err + // builds the runner data if the runtime data is not initialized + data := e.runData + if data == nil { + if data, err = e.InitData(args); err != nil { + return err + } } err = e.visitAll(func(p *phaseRunner) error {