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 9b54ffb363553168b4eabcdcebe0efa7474dbefa
Author: Antonin Stefanutti <[email protected]>
AuthorDate: Tue Jan 14 18:12:34 2020 +0100

    chore(jolokia): Factorize map keys sorting util method
---
 pkg/trait/jolokia.go      | 10 +---------
 pkg/util/digest/digest.go | 25 ++++++-------------------
 pkg/util/util.go          | 12 ++++++++++++
 3 files changed, 19 insertions(+), 28 deletions(-)

diff --git a/pkg/trait/jolokia.go b/pkg/trait/jolokia.go
index e7dfa1f..5022d90 100644
--- a/pkg/trait/jolokia.go
+++ b/pkg/trait/jolokia.go
@@ -19,7 +19,6 @@ package trait
 
 import (
        "fmt"
-       "sort"
        "strconv"
        "strings"
 
@@ -178,15 +177,8 @@ func (t *jolokiaTrait) Apply(e *Environment) (err error) {
        // Lastly set the AB_JOLOKIA_OPTS environment variable from the 
fabric8/s2i-java base image
        // Options must be sorted so that the environment variable value is 
consistent over iterations,
        // otherwise the value changes which results in triggering a new 
deployment.
-       optionKeys := make([]string, len(options))
-       i := 0
-       for k := range options {
-               optionKeys[i] = k
-               i++
-       }
-       sort.Strings(optionKeys)
        optionValues := make([]string, len(options))
-       for i, k := range optionKeys {
+       for i, k := range util.SortedStringMapKeys(options) {
                optionValues[i] = k + "=" + options[k]
        }
        envvar.SetVal(&container.Env, "AB_JOLOKIA_OPTS", 
strings.Join(optionValues, ","))
diff --git a/pkg/util/digest/digest.go b/pkg/util/digest/digest.go
index ea5afa7..62ec3fa 100644
--- a/pkg/util/digest/digest.go
+++ b/pkg/util/digest/digest.go
@@ -20,11 +20,10 @@ package digest
 import (
        "crypto/sha256"
        "encoding/base64"
-       "math/rand"
        "sort"
-       "strconv"
 
        v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
+       "github.com/apache/camel-k/pkg/util"
        "github.com/apache/camel-k/pkg/util/defaults"
 )
 
@@ -81,7 +80,7 @@ func ComputeForIntegration(integration *v1.Integration) 
(string, error) {
                        return "", err
                }
                spec := integration.Spec.Traits[name]
-               for _, prop := range sortedStringMapKeys(spec.Configuration) {
+               for _, prop := range 
util.SortedStringMapKeys(spec.Configuration) {
                        val := spec.Configuration[prop]
                        if _, err := hash.Write([]byte(prop + "=" + val + 
",")); err != nil {
                                return "", err
@@ -122,24 +121,12 @@ func ComputeForIntegrationKit(kit *v1.IntegrationKit) 
(string, error) {
        return digest, nil
 }
 
-// Random --
-func Random() string {
-       return "v" + strconv.FormatInt(rand.Int63(), 10)
-}
-
-func sortedStringMapKeys(m map[string]string) []string {
-       res := make([]string, 0, len(m))
-       for k := range m {
-               res = append(res, k)
-       }
-       sort.Strings(res)
-       return res
-}
-
 func sortedTraitSpecMapKeys(m map[string]v1.TraitSpec) []string {
-       res := make([]string, 0, len(m))
+       res := make([]string, len(m))
+       i := 0
        for k := range m {
-               res = append(res, k)
+               res[i] = k
+               i++
        }
        sort.Strings(res)
        return res
diff --git a/pkg/util/util.go b/pkg/util/util.go
index 542e7cf..c6004fd 100644
--- a/pkg/util/util.go
+++ b/pkg/util/util.go
@@ -24,6 +24,7 @@ import (
        "os/signal"
        "path"
        "regexp"
+       "sort"
        "syscall"
 
        "github.com/scylladb/go-set/strset"
@@ -196,3 +197,14 @@ func FileExists(name string) (bool, error) {
 type BytesMarshaller interface {
        MarshalBytes() ([]byte, error)
 }
+
+func SortedStringMapKeys(m map[string]string) []string {
+       res := make([]string, len(m))
+       i := 0
+       for k := range m {
+               res[i] = k
+               i++
+       }
+       sort.Strings(res)
+       return res
+}

Reply via email to