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 d557e19ba8a643624926353935166aad26575d71
Author: Antonin Stefanutti <[email protected]>
AuthorDate: Fri May 29 18:32:37 2020 +0200

    fix(prometheus): Do not use same name for Prometheus service than Knative 
service
---
 pkg/trait/prometheus.go      | 6 ++++--
 pkg/trait/prometheus_test.go | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/pkg/trait/prometheus.go b/pkg/trait/prometheus.go
index 8a6dd8f..e1e1f9e 100644
--- a/pkg/trait/prometheus.go
+++ b/pkg/trait/prometheus.go
@@ -135,8 +135,11 @@ func (t *prometheusTrait) Apply(e *Environment) (err 
error) {
                        serviceEnabled = serviceTrait.isEnabled()
                }
                if serviceEnabled {
-                       // add a new service if not already created
+                       // Add a new service if not already created
                        service = getServiceFor(e)
+                       // Override the service name if none exists.
+                       // This is required for Knative Serving, that checks no 
standard eponymous service exist
+                       service.Name = service.Name + "-prometheus"
                        e.Resources.Add(service)
                }
        } else {
@@ -144,7 +147,6 @@ func (t *prometheusTrait) Apply(e *Environment) (err error) 
{
        }
 
        // Add the service port and service monitor resource
-       // A better strategy may be needed when the Knative profile is active
        if serviceEnabled {
                servicePort := t.getServicePort()
                service.Spec.Ports = append(service.Spec.Ports, *servicePort)
diff --git a/pkg/trait/prometheus_test.go b/pkg/trait/prometheus_test.go
index 30a676f..9d5e921 100644
--- a/pkg/trait/prometheus_test.go
+++ b/pkg/trait/prometheus_test.go
@@ -72,7 +72,7 @@ func TestApplyNominalPrometheusTraitDoesSucceed(t *testing.T) 
{
        assert.Equal(t, corev1.ProtocolTCP, ports[0].Protocol)
 
        service := environment.Resources.GetService(func(service 
*corev1.Service) bool {
-               return service.Name == "integration-name"
+               return service.Name == "integration-name-prometheus"
        })
        assert.NotNil(t, service)
        assert.Len(t, service.Spec.Ports, 1)

Reply via email to