From ee73a1251d9966cac10bb9409f101f49e4376abc Mon Sep 17 00:00:00 2001 From: erdii Date: Tue, 10 Aug 2021 15:43:58 +0200 Subject: [PATCH] check typecasts of k0sConfig.spec.api.port for proper handling of nil values Signed-off-by: erdii --- phase/initialize_k0s.go | 6 +++--- phase/install_controllers.go | 7 ++++--- phase/upgrade_controllers.go | 6 +++--- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/phase/initialize_k0s.go b/phase/initialize_k0s.go index b0a31aa1..fe2f0b03 100644 --- a/phase/initialize_k0s.go +++ b/phase/initialize_k0s.go @@ -51,9 +51,9 @@ func (p *InitializeK0s) Run() error { return err } - port := p.Config.Spec.K0s.Config.Dig("spec", "api", "port").(int) - if port == 0 { - port = 6443 + port := 6443 + if p, ok := p.Config.Spec.K0s.Config.Dig("spec", "api", "port").(int); ok { + port = p } log.Infof("%s: waiting for kubernetes api to respond", h) if err := h.WaitKubeAPIReady(port); err != nil { diff --git a/phase/install_controllers.go b/phase/install_controllers.go index 84f41135..e21fe9d8 100644 --- a/phase/install_controllers.go +++ b/phase/install_controllers.go @@ -79,10 +79,11 @@ func (p *InstallControllers) Run() error { } func (p *InstallControllers) waitJoined(h *cluster.Host) error { - port := p.Config.Spec.K0s.Config.Dig("spec", "api", "port").(int) - if port == 0 { - port = 6443 + port := 6443 + if p, ok := p.Config.Spec.K0s.Config.Dig("spec", "api", "port").(int); ok { + port = p } + log.Infof("%s: waiting for kubernetes api to respond", h) return h.WaitKubeAPIReady(port) } diff --git a/phase/upgrade_controllers.go b/phase/upgrade_controllers.go index 9ac2cd99..fd86b6fa 100644 --- a/phase/upgrade_controllers.go +++ b/phase/upgrade_controllers.go @@ -63,9 +63,9 @@ func (p *UpgradeControllers) Run() error { if err := h.WaitK0sServiceRunning(); err != nil { return err } - port := p.Config.Spec.K0s.Config.Dig("spec", "api", "port").(int) - if port == 0 { - port = 6443 + port := 6443 + if p, ok := p.Config.Spec.K0s.Config.Dig("spec", "api", "port").(int); ok { + port = p } if err := h.WaitKubeAPIReady(port); err != nil { return err