From 8674bb4e011e3f8048b93124645cb981396452d5 Mon Sep 17 00:00:00 2001 From: Ryan McGuire Date: Fri, 7 Mar 2025 17:24:05 -0500 Subject: [PATCH] implement grpc weather --- .dockerignore | 4 ++++ .gitignore | 4 +++- docker-compose-sample.yml | 26 ++++++++++++++++++++++++++ go.mod | 2 +- go.sum | 2 ++ pkg/weather/grpc/weather.go | 13 +++++++++++++ 6 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 .dockerignore create mode 100644 docker-compose-sample.yml create mode 100644 pkg/weather/grpc/weather.go diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..b42f428 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,4 @@ +.git +config.y*ml +go.work* +docker-compose-sample* diff --git a/.gitignore b/.gitignore index 1f678b6..963e0b7 100644 --- a/.gitignore +++ b/.gitignore @@ -26,5 +26,7 @@ go.work.sum bin/* -config.yaml +config.y*ml docker-compose.yml + +.vscode diff --git a/docker-compose-sample.yml b/docker-compose-sample.yml new file mode 100644 index 0000000..39b6d77 --- /dev/null +++ b/docker-compose-sample.yml @@ -0,0 +1,26 @@ +name: Ambient Local Exporter +services: + ambient-local-exporter: + build: . + ports: + - 8080:8080 + volumes: + - ./config.yaml:/app/config.yaml + command: + - -config + - /app/config.yaml + environment: + APP_NAME: ambient-local-exporter + APP_LOG_LEVEL: debug ## For testing only + APP_LOG_FORMAT: json ## console, json + APP_LOG_TIME_FORMAT: rfc3339 ## long, short, unix, rfc3339, off + APP_HTTP_LISTEN: 0.0.0.0:8080 + APP_HTTP_READ_TIMEOUT: 10s + APP_HTTP_WRITE_TIMEOUT: 10s + APP_HTTP_IDLE_TIMEOUT: 30s + APP_HTTP_LOG_REQUESTS: true + APP_OTEL_STDOUT_ENABLED: false + APP_OTEL_METRIC_INTERVAL_SECS: 30 + OTEL_EXPORTER_OTLP_ENDPOINT: https://otel.libretechconsulting.com:4317 # Set to your otel collector + OTEL_SERVICE_NAME: ambient-local-exporter + OTEL_RESOURCE_ATTRIBUTES: "env=development,service.version=(devel)" diff --git a/go.mod b/go.mod index 77db781..7526413 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module gitea.libretechconsulting.com/rmcguire/ambient-local-exporter go 1.23.4 require ( - gitea.libretechconsulting.com/rmcguire/go-app v0.6.2 + gitea.libretechconsulting.com/rmcguire/go-app v0.6.3 github.com/go-resty/resty/v2 v2.16.5 github.com/gorilla/schema v1.4.1 github.com/rs/zerolog v1.33.0 diff --git a/go.sum b/go.sum index 314d6aa..be9160a 100644 --- a/go.sum +++ b/go.sum @@ -2,6 +2,8 @@ gitea.libretechconsulting.com/rmcguire/go-app v0.6.0 h1:XIqk2xpKZ+GzCyh3ZpST93nu gitea.libretechconsulting.com/rmcguire/go-app v0.6.0/go.mod h1:S3/vdMEiRWWIdD0Fr+tjJc627VzxNzO4Ia2HgTBXe+g= gitea.libretechconsulting.com/rmcguire/go-app v0.6.2 h1:vpEdZu7WI8qIil5NLf6OUF/Tk8+3txZ7fTv1NRRnOoc= gitea.libretechconsulting.com/rmcguire/go-app v0.6.2/go.mod h1:S3/vdMEiRWWIdD0Fr+tjJc627VzxNzO4Ia2HgTBXe+g= +gitea.libretechconsulting.com/rmcguire/go-app v0.6.3 h1:dXYHJxK/1vmWBj1wqbqEUncFt3O92agy9gNWoa9NpA0= +gitea.libretechconsulting.com/rmcguire/go-app v0.6.3/go.mod h1:S3/vdMEiRWWIdD0Fr+tjJc627VzxNzO4Ia2HgTBXe+g= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/caarlos0/env/v11 v11.3.1 h1:cArPWC15hWmEt+gWk7YBi7lEXTXCvpaSdCiZE2X5mCA= diff --git a/pkg/weather/grpc/weather.go b/pkg/weather/grpc/weather.go new file mode 100644 index 0000000..1e47a23 --- /dev/null +++ b/pkg/weather/grpc/weather.go @@ -0,0 +1,13 @@ +package grpc + +import ( + "context" + + pb "gitea.libretechconsulting.com/rmcguire/ambient-local-exporter/api/v1alpha1/weather" +) + +// TODO: Implement +type GRPCWeather struct { + ctx context.Context + *pb.UnimplementedAmbientLocalWeatherServiceServer +}