Compare commits

...

2 Commits

Author SHA1 Message Date
6d5075817e bump chart
All checks were successful
Build and Publish / check-chart (push) Successful in 40s
Build and Publish / helm-release (push) Has been skipped
Build and Publish / release (push) Successful in 2m37s
2025-03-23 12:34:21 -04:00
a02e8c5061 update concurrently 2025-03-23 12:33:58 -04:00
2 changed files with 30 additions and 11 deletions

View File

@ -15,13 +15,13 @@ 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.5
version: 0.1.6
# 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: "v0.12.0"
appVersion: "v0.12.1"
dependencies:
- name: hull

View File

@ -163,24 +163,43 @@ func (aw *AmbientWeather) handleProviderRequest(
updateSpan.SetAttributes(attribute.String("stationName", update.StationConfig.Name))
}
// Concurrently record the now enriched update
// to the configured recorder and to otel, and proxy
// to enabled downstream providers
var updateWg sync.WaitGroup
// Record state
aw.weatherRecorder.Set(ctx, update)
updateWg.Add(1)
go func() {
defer updateWg.Done()
aw.weatherRecorder.Set(ctx, update)
}()
// Update metrics
aw.metricsUpdate(ctx, p, update)
updateWg.Add(1)
go func() {
defer updateWg.Done()
aw.metricsUpdate(ctx, p, update)
}()
// Proxy update to one or both services if configured to do so
// Uses a weather update to allow awn to publish to wunderground and
// visa versa.
if update.StationConfig != nil {
updateWg.Add(1)
go func() {
defer updateWg.Done()
aw.proxyUpdate(ctx, p, update)
}()
}
updateWg.Wait()
l.Debug().
Str("provider", p.Name()).
Any("update", update).
Msg("successfully handled update")
w.Write([]byte("ok"))
// Proxy update to one or both services if configured to do so
// Uses a weather update to allow awn to publish to wunderground and
// visa versa.
if update.StationConfig != nil {
aw.proxyUpdate(ctx, p, update)
}
}
func (aw *AmbientWeather) enrichUpdate(