diff --git a/example/tk/inline/clusters.libsonnet b/example/tk/inline/clusters.libsonnet new file mode 100644 index 000000000000..1f215e01ab76 --- /dev/null +++ b/example/tk/inline/clusters.libsonnet @@ -0,0 +1,26 @@ +[ + { + // import the microservices example + local tempo = import '../tempo-microservices/main.jsonnet', + + name: 'cluster name', + apiServer: 'https://0.0.0.0:6443', + namespace: 'namespace', + + data: tempo, + + dataOverride: { + _images+:: { + // images can be overridden here if desired + }, + + _config+:: { + + // config can be overridden here if desired + + }, + + }, + + }, +] diff --git a/example/tk/inline/main.jsonnet b/example/tk/inline/main.jsonnet new file mode 100644 index 000000000000..6a4cedc8a359 --- /dev/null +++ b/example/tk/inline/main.jsonnet @@ -0,0 +1,29 @@ +local clusters = import 'clusters.libsonnet'; +local tanka = import 'github.com/grafana/jsonnet-libs/tanka-util/main.libsonnet'; + +{ + environment(cluster):: + tanka.environment.new( + name='grafana/' + cluster.name, + namespace=cluster.namespace, + apiserver=cluster.apiServer, + ) + + tanka.environment.withLabels({ cluster: cluster.name }) + + tanka.environment.withData( cluster.data { + + _config+:: { + namespace: cluster.namespace, + }, + + } + cluster.dataOverride) + + { + spec+: { + injectLabels: true, + }, + }, + + envs: { + [cluster.name]: $.environment(cluster) + for cluster in clusters + }, +}