format and regenerate
This commit is contained in:
@@ -240,7 +240,7 @@ local kp =
|
|||||||
{ ['kubernetes-' + name]: kp.kubernetesMixin[name] for name in std.objectFields(kp.kubernetesMixin) }
|
{ ['kubernetes-' + name]: kp.kubernetesMixin[name] for name in std.objectFields(kp.kubernetesMixin) }
|
||||||
{ ['node-exporter-' + name]: kp.nodeExporter[name] for name in std.objectFields(kp.nodeExporter) } +
|
{ ['node-exporter-' + name]: kp.nodeExporter[name] for name in std.objectFields(kp.nodeExporter) } +
|
||||||
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
|
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
|
||||||
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } +
|
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) }
|
||||||
```
|
```
|
||||||
|
|
||||||
And here's the [build.sh](build.sh) script (which uses `vendor/` to render all manifests in a json structure of `{filename: manifest-content}`):
|
And here's the [build.sh](build.sh) script (which uses `vendor/` to render all manifests in a json structure of `{filename: manifest-content}`):
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ local kp =
|
|||||||
{ ['kubernetes-' + name]: kp.kubernetesMixin[name] for name in std.objectFields(kp.kubernetesMixin) }
|
{ ['kubernetes-' + name]: kp.kubernetesMixin[name] for name in std.objectFields(kp.kubernetesMixin) }
|
||||||
{ ['node-exporter-' + name]: kp.nodeExporter[name] for name in std.objectFields(kp.nodeExporter) } +
|
{ ['node-exporter-' + name]: kp.nodeExporter[name] for name in std.objectFields(kp.nodeExporter) } +
|
||||||
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
|
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
|
||||||
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } +
|
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) }
|
||||||
```
|
```
|
||||||
|
|
||||||
## Prometheus rules
|
## Prometheus rules
|
||||||
|
|||||||
@@ -18,14 +18,14 @@ Using kube-prometheus and kubectl you will be able install the following for mon
|
|||||||
[embedmd]:# (../examples/weave-net-example.jsonnet)
|
[embedmd]:# (../examples/weave-net-example.jsonnet)
|
||||||
```jsonnet
|
```jsonnet
|
||||||
local kp = (import 'kube-prometheus/main.libsonnet') +
|
local kp = (import 'kube-prometheus/main.libsonnet') +
|
||||||
(import 'kube-prometheus/addons/weave-net.libsonnet') + {
|
(import 'kube-prometheus/addons/weave-net/weave-net.libsonnet') + {
|
||||||
values+:: {
|
values+:: {
|
||||||
common+: {
|
common+: {
|
||||||
namespace: 'monitoring',
|
namespace: 'monitoring',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
prometheus+: {
|
prometheus+: {
|
||||||
prometheusRule+: {
|
prometheusRuleWeaveNet+: {
|
||||||
spec+: {
|
spec+: {
|
||||||
groups: std.map(
|
groups: std.map(
|
||||||
function(group)
|
function(group)
|
||||||
|
|||||||
@@ -1,4 +1,18 @@
|
|||||||
local l = import 'lib/lib.libsonnet';
|
local imageName(image) =
|
||||||
|
local parts = std.split(image, '/');
|
||||||
|
local len = std.length(parts);
|
||||||
|
if len == 3 then
|
||||||
|
// registry.com/org/image
|
||||||
|
parts[2]
|
||||||
|
else if len == 2 then
|
||||||
|
// org/image
|
||||||
|
parts[1]
|
||||||
|
else if len == 1 then
|
||||||
|
// image, ie. busybox
|
||||||
|
parts[0]
|
||||||
|
else
|
||||||
|
error 'unknown image format: ' + image;
|
||||||
|
|
||||||
|
|
||||||
// withImageRepository is a mixin that replaces all images prefixes by repository. eg.
|
// withImageRepository is a mixin that replaces all images prefixes by repository. eg.
|
||||||
// quay.io/coreos/addon-resizer -> $repository/addon-resizer
|
// quay.io/coreos/addon-resizer -> $repository/addon-resizer
|
||||||
@@ -6,8 +20,8 @@ local l = import 'lib/lib.libsonnet';
|
|||||||
local withImageRepository(repository) = {
|
local withImageRepository(repository) = {
|
||||||
local oldRepos = super._config.imageRepos,
|
local oldRepos = super._config.imageRepos,
|
||||||
local substituteRepository(image, repository) =
|
local substituteRepository(image, repository) =
|
||||||
if repository == null then image else repository + '/' + l.imageName(image),
|
if repository == null then image else repository + '/' + imageName(image),
|
||||||
_config+:: {
|
values+:: {
|
||||||
imageRepos:: {
|
imageRepos:: {
|
||||||
[field]: substituteRepository(oldRepos[field], repository)
|
[field]: substituteRepository(oldRepos[field], repository)
|
||||||
for field in std.objectFields(oldRepos)
|
for field in std.objectFields(oldRepos)
|
||||||
|
|||||||
@@ -78,7 +78,7 @@
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
prometheusAdapter+:: {
|
prometheusAdapter+: {
|
||||||
customMetricsApiService: {
|
customMetricsApiService: {
|
||||||
apiVersion: 'apiregistration.k8s.io/v1',
|
apiVersion: 'apiregistration.k8s.io/v1',
|
||||||
kind: 'APIService',
|
kind: 'APIService',
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
insecureSkipVerify: null,
|
insecureSkipVerify: null,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
prometheus+:: {
|
prometheus+: {
|
||||||
serviceEtcd: {
|
serviceEtcd: {
|
||||||
apiVersion: 'v1',
|
apiVersion: 'v1',
|
||||||
kind: 'Service',
|
kind: 'Service',
|
||||||
|
|||||||
Reference in New Issue
Block a user