Skip to content

Commit cc0620f

Browse files
committed
Configurable grafana ports
1 parent b6db6bd commit cc0620f

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

grafana/grafana.libsonnet

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ local k = import 'ksonnet/ksonnet.beta.3/k.libsonnet';
1414

1515
grafana+:: {
1616
dashboards: {},
17+
containerPort: { port: 3000, name: 'http' },
18+
servicePort: { port: 3000, name: 'http' },
1719
datasources: [{
1820
name: 'prometheus',
1921
type: 'prometheus',
@@ -66,7 +68,7 @@ local k = import 'ksonnet/ksonnet.beta.3/k.libsonnet';
6668
local service = k.core.v1.service;
6769
local servicePort = k.core.v1.service.mixin.spec.portsType;
6870

69-
local grafanaServiceNodePort = servicePort.newNamed('http', 3000, 'http');
71+
local grafanaServiceNodePort = servicePort.newNamed($._config.grafana.servicePort.name, $._config.grafana.servicePort.port, $._config.grafata.containerPort.name);
7072

7173
service.new('grafana', $.grafana.deployment.spec.selector.matchLabels, grafanaServiceNodePort) +
7274
service.mixin.metadata.withLabels({ app: 'grafana' }) +
@@ -84,8 +86,8 @@ local k = import 'ksonnet/ksonnet.beta.3/k.libsonnet';
8486
local podSelector = deployment.mixin.spec.template.spec.selectorType;
8587
local env = container.envType;
8688

87-
local targetPort = 3000;
88-
local portName = 'http';
89+
local targetPort = $._config.grafana.containerPort.port;
90+
local portName = $._config.grafana.containerPort.name;
8991
local podLabels = { app: 'grafana' };
9092

9193
local configVolumeName = 'grafana-config';
@@ -137,6 +139,7 @@ local k = import 'ksonnet/ksonnet.beta.3/k.libsonnet';
137139
local c =
138140
container.new('grafana', $._config.imageRepos.grafana + ':' + $._config.versions.grafana) +
139141
(if std.length($._config.grafana.plugins) == 0 then {} else container.withEnv([env.new('GF_INSTALL_PLUGINS', std.join(',', $._config.grafana.plugins))])) +
142+
container.withEnvMixin([env.new('GF_SERVER_HTTP_PORT', '' + $._config.grafana.port)]) +
140143
container.withVolumeMounts(volumeMounts) +
141144
container.withPorts(containerPort.newNamed(portName, targetPort)) +
142145
container.mixin.readinessProbe.httpGet.withPath('/api/health') +

0 commit comments

Comments
 (0)