jsonnet: remove wrapping prometheus-operator lib

This commit is contained in:
paulfantom 2021-01-14 13:19:39 +01:00
parent 255cd9a1c5
commit b67686409e
No known key found for this signature in database
GPG Key ID: 12AE0185401674E7

View File

@ -25,85 +25,71 @@ local defaults = {
}, },
}; };
function(params) { function(params)
local po = self, local config = defaults + params;
config:: defaults + params,
// Safety check // Safety check
assert std.isObject(po.config.resources), assert std.isObject(config.resources);
//TODO(paulfantom): it would be better to include it on the same level as self. prometheusOperator(config) {
local polib = prometheusOperator(po.config), service+: {
spec+: {
ports: [
{
name: 'https',
port: 8443,
targetPort: 'https',
},
],
},
},
'0alertmanagerConfigCustomResourceDefinition': polib['0alertmanagerConfigCustomResourceDefinition'], serviceMonitor+: {
'0alertmanagerCustomResourceDefinition': polib['0alertmanagerCustomResourceDefinition'], spec+: {
'0podmonitorCustomResourceDefinition': polib['0podmonitorCustomResourceDefinition'], endpoints: [
'0probeCustomResourceDefinition': polib['0probeCustomResourceDefinition'], {
'0prometheusCustomResourceDefinition': polib['0prometheusCustomResourceDefinition'], port: 'https',
'0prometheusruleCustomResourceDefinition': polib['0prometheusruleCustomResourceDefinition'], scheme: 'https',
'0servicemonitorCustomResourceDefinition': polib['0servicemonitorCustomResourceDefinition'], honorLabels: true,
'0thanosrulerCustomResourceDefinition': polib['0thanosrulerCustomResourceDefinition'], bearerTokenFile: '/var/run/secrets/kubernetes.io/serviceaccount/token',
tlsConfig: {
insecureSkipVerify: true,
},
},
],
},
},
serviceAccount: polib.serviceAccount, clusterRole+: {
service: polib.service { rules+: [
spec+: {
ports: [
{ {
name: 'https', apiGroups: ['authentication.k8s.io'],
port: 8443, resources: ['tokenreviews'],
targetPort: 'https', verbs: ['create'],
},
{
apiGroups: ['authorization.k8s.io'],
resources: ['subjectaccessreviews'],
verbs: ['create'],
}, },
], ],
}, },
},
serviceMonitor: polib.serviceMonitor { local kubeRbacProxy = krp({
spec+: { name: 'kube-rbac-proxy',
endpoints: [ upstream: 'http://127.0.0.1:8080/',
{ secureListenAddress: ':8443',
port: 'https', ports: [
scheme: 'https', { name: 'https', containerPort: 8443 },
honorLabels: true, ],
bearerTokenFile: '/var/run/secrets/kubernetes.io/serviceaccount/token', }),
tlsConfig: {
insecureSkipVerify: true, deployment+: {
spec+: {
template+: {
spec+: {
containers+: [kubeRbacProxy],
}, },
}, },
],
},
},
clusterRoleBinding: polib.clusterRoleBinding,
clusterRole: polib.clusterRole {
rules+: [
{
apiGroups: ['authentication.k8s.io'],
resources: ['tokenreviews'],
verbs: ['create'],
},
{
apiGroups: ['authorization.k8s.io'],
resources: ['subjectaccessreviews'],
verbs: ['create'],
},
],
},
local kubeRbacProxy = krp({
name: 'kube-rbac-proxy',
upstream: 'http://127.0.0.1:8080/',
secureListenAddress: ':8443',
ports: [
{ name: 'https', containerPort: 8443 },
],
}),
deployment: polib.deployment {
spec+: {
template+: {
spec+: {
containers+: [kubeRbacProxy],
},
}, },
}, },
}, }
}