This is an automated email from the ASF dual-hosted git repository.

astefanutti pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git

commit 092d2ee712b824623a77d223ee9607f11571108e
Author: Antonin Stefanutti <anto...@stefanutti.fr>
AuthorDate: Mon Jan 25 11:25:25 2021 +0100

    chore(cli): Improve message when operator version from the platform is empty
---
 pkg/cmd/version.go | 32 +++++++++++++++++++-------------
 1 file changed, 19 insertions(+), 13 deletions(-)

diff --git a/pkg/cmd/version.go b/pkg/cmd/version.go
index 6ec8174..eeb3729 100644
--- a/pkg/cmd/version.go
+++ b/pkg/cmd/version.go
@@ -22,11 +22,13 @@ import (
        "fmt"
 
        "github.com/Masterminds/semver"
+       "github.com/spf13/cobra"
+
+       k8sclient "sigs.k8s.io/controller-runtime/pkg/client"
+
        v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
        "github.com/apache/camel-k/pkg/client"
        "github.com/apache/camel-k/pkg/util/defaults"
-       "github.com/spf13/cobra"
-       k8sclient "sigs.k8s.io/controller-runtime/pkg/client"
 )
 
 // VersionVariant may be overridden at build time
@@ -65,13 +67,13 @@ func (o *versionCmdOptions) preRunE(cmd *cobra.Command, 
args []string) error {
        return o.RootCmdOptions.preRun(cmd, args)
 }
 
-func (o *versionCmdOptions) run(cmd *cobra.Command, _ []string) error {
+func (o *versionCmdOptions) run(_ *cobra.Command, _ []string) error {
        if o.Operator {
-               client, err := o.GetCmdClient()
+               c, err := o.GetCmdClient()
                if err != nil {
                        return err
                }
-               displayOperatorVersion(o.Context, client, o.Namespace)
+               displayOperatorVersion(o.Context, c, o.Namespace)
        } else {
                displayClientVersion()
        }
@@ -88,10 +90,14 @@ func displayClientVersion() {
 
 func displayOperatorVersion(ctx context.Context, c client.Client, namespace 
string) {
        operatorVersion, err := operatorVersion(ctx, c, namespace)
-       if err == nil {
-               fmt.Printf("Camel K Operator %s\n", operatorVersion)
+       if err != nil {
+               fmt.Printf("Unable to retrieve operator version: %s\n", err)
        } else {
-               fmt.Printf("Error while looking for camel-k operator in 
namespace %s (%s)\n", namespace, err)
+               if operatorVersion == "" {
+                 fmt.Printf("Unable to retrieve operator version: The 
IntegrationPlatform resource hasn't been reconciled yet!")
+               } else {
+                 fmt.Printf("Camel K Operator %s\n", operatorVersion)
+               }
        }
 }
 
@@ -110,16 +116,16 @@ func operatorVersion(ctx context.Context, c 
client.Client, namespace string) (st
 }
 
 func compatibleVersions(aVersion, bVersion string) bool {
-       v1, err := semver.NewVersion(aVersion)
+       a, err := semver.NewVersion(aVersion)
        if err != nil {
-               fmt.Printf("Could not parse %s (error: %s)\n", v1, err)
+               fmt.Printf("Could not parse %s (error: %s)\n", a, err)
                return false
        }
-       v2, err := semver.NewVersion(bVersion)
+       b, err := semver.NewVersion(bVersion)
        if err != nil {
-               fmt.Printf("Could not parse %s (error: %s)\n", v2, err)
+               fmt.Printf("Could not parse %s (error: %s)\n", b, err)
                return false
        }
        // We consider compatible when major and minor are equals
-       return v1.Major() == v2.Major() && v1.Minor() == v2.Minor()
+       return a.Major() == b.Major() && a.Minor() == b.Minor()
 }

Reply via email to