diff --git a/helm/ambient-local-exporter/.helmignore b/helm/ambient-local-exporter/.helmignore new file mode 100644 index 0000000..0e8a0eb --- /dev/null +++ b/helm/ambient-local-exporter/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/helm/ambient-local-exporter/Chart.lock b/helm/ambient-local-exporter/Chart.lock new file mode 100644 index 0000000..0d35145 --- /dev/null +++ b/helm/ambient-local-exporter/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: hull + repository: https://vidispine.github.io/hull + version: 1.32.2 +digest: sha256:9dd0edc068e166b8eb990c3cd4cda72b48be33223883b26f9a27fcec454ac62e +generated: "2025-03-07T19:55:23.975447-05:00" diff --git a/helm/ambient-local-exporter/Chart.yaml b/helm/ambient-local-exporter/Chart.yaml new file mode 100644 index 0000000..61934ce --- /dev/null +++ b/helm/ambient-local-exporter/Chart.yaml @@ -0,0 +1,31 @@ +apiVersion: v2 +name: ambient-local-exporter +description: Cloud-free metrics exporter for ambient weather stations + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +# Versions are expected to follow Semantic Versioning (https://semver.org/) +version: 0.1.0 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +# It is recommended to use it with quotes. +appVersion: "0.9.0" + +dependencies: + - name: hull + repository: https://vidispine.github.io/hull + alias: exporter + version: 1.32.2 + diff --git a/helm/ambient-local-exporter/charts/hull-1.32.2.tgz b/helm/ambient-local-exporter/charts/hull-1.32.2.tgz new file mode 100644 index 0000000..18eee47 Binary files /dev/null and b/helm/ambient-local-exporter/charts/hull-1.32.2.tgz differ diff --git a/helm/ambient-local-exporter/templates/exporter.yaml b/helm/ambient-local-exporter/templates/exporter.yaml new file mode 100644 index 0000000..0ba8d43 --- /dev/null +++ b/helm/ambient-local-exporter/templates/exporter.yaml @@ -0,0 +1 @@ +{{- include "hull.objects.prepare.all" (dict "HULL_ROOT_KEY" "exporter" "ROOT_CONTEXT" $) }} diff --git a/helm/ambient-local-exporter/values.yaml b/helm/ambient-local-exporter/values.yaml new file mode 100644 index 0000000..5cf7f37 --- /dev/null +++ b/helm/ambient-local-exporter/values.yaml @@ -0,0 +1,84 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/vidispine/hull/refs/heads/main/hull/values.schema.json +exporter: + config: + specific: + application_version: v0.9.0 + metadata: + labels: + app: ambient-local-exporter + + objects: + configmap: + environment: + data: + OTEL_EXPORTER_OTLP_ENDPOINT: + inline: http://otel.otel.svc.cluster.local:4317 # Set to your otel collector + OTEL_SERVICE_NAME: + inline: ambient-local-exporter + OTEL_RESOURCE_ATTRIBUTES: + inline: helm.chart=ambient-local-exporter,app=ambient-local-exporter + config: + data: + config.yaml: + serialization: toYaml + inline: + ## App Config + environment: production + name: ambient-local-exporter + logging: + level: info + format: json + output: stdout + timeFormat: rfc3339 + http: + listen: :8080 + logRequests: false + otel: + enabled: true + metricIntervalSecs: 30 + stdoutEnabled: false + ## Ambient Config + metricPrefix: weather + weatherStations: [] + + deployment: + ambient-local-exporter: + pod: + containers: + main: + image: + repository: gitea.libretechconsulting.com/rmcguire/ambient-local-exporter + tag: _HT*exporter.config.specific.application_version + imagePullPolicy: Always + ports: + http: + containerPort: 8080 + grpc: + containerPort: 8081 + # envFrom: + # main: + # configMapRef: + # name: environment + volumeMounts: + config: + name: config + mountPath: /app/config.yaml + subPath: config.yaml + volumes: + environment: + configMap: + name: environment + config: + configMap: + name: config + + service: + ambient-local-exporter: + type: ClusterIP + ports: + http: + port: 8080 + targetPort: http + grpc: + port: 8081 + targetPort: grpc