distribution/registry/handlers
Cory Snider f2cbfe2402 health: improve periodic polling of checks
The API for periodic health checks is repetitive, with a distinct
function for polling a checker to each kind of updater. It also gives
the user no control over the lifetime of the polling goroutines nor
which context is passed into the checker.

Replace the existing PeriodicXYZChecker functions with a single Poll
function which composes an Updater with a Checker. Its context parameter
is passed into the checker and also controls when the polling loop
terminates. To guard against health checks failing closed (ostensibly
healthy) when the polling loop is terminated, the updater is forcefully
updated to an error status, overriding any configured threshold.

Signed-off-by: Cory Snider <csnider@mirantis.com>
2023-11-27 15:38:35 -05:00
..
api_test.go feat(linter): enable errcheck linter in golangci-lint 2023-11-18 07:19:24 +00:00
app.go health: improve periodic polling of checks 2023-11-27 15:38:35 -05:00
app_test.go Move context package internal 2023-10-27 10:58:37 -04:00
basicauth.go remove go build directive for older go version 2023-09-26 15:14:57 +08:00
blob.go Move context package internal 2023-10-27 10:58:37 -04:00
blobupload.go Move context package internal 2023-10-27 10:58:37 -04:00
catalog.go registry/api: move all errors to "errcode" package 2023-09-04 18:02:54 +02:00
context.go registry: unexport auth-related context utilities 2023-10-27 10:58:37 -04:00
health_test.go health: plumb contexts into health checks 2023-11-27 15:38:34 -05:00
helpers.go Move context package internal 2023-10-27 10:58:37 -04:00
hmac.go handlers: provide better log message on mismatched secret 2016-09-02 15:24:35 -07:00
hmac_test.go registry/handlers: use consistent names for test-tables 2023-05-09 14:00:17 +02:00
hooks.go replace strings.Split(N) for strings.Cut() or alternatives 2022-11-10 22:38:12 +01:00
mail.go Fix gometalint errors 2019-02-04 16:01:04 -08:00
manifests.go feat(linter): enable errcheck linter in golangci-lint 2023-11-18 07:19:24 +00:00
tags.go Do not close HTTP request body in HTTP handler 2023-09-22 16:21:54 +01:00