| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| skipper-v0.27.97-windows-amd64.zip | < 4 hours ago | 156.4 MB | |
| skipper-v0.27.97-linux-armv7.tar.gz | < 4 hours ago | 143.1 MB | |
| skipper-v0.27.97-linux-arm64.tar.gz | < 4 hours ago | 142.2 MB | |
| skipper-v0.27.97-linux-amd64.tar.gz | < 4 hours ago | 155.0 MB | |
| skipper-v0.27.97-darwin-arm64.tar.gz | < 4 hours ago | 152.8 MB | |
| skipper-v0.27.97-darwin-amd64.tar.gz | < 4 hours ago | 162.1 MB | |
| sha256sum.txt | < 4 hours ago | 613 Bytes | |
| README.md | < 5 hours ago | 1.5 kB | |
| v0.27.97 source code.tar.gz | < 5 hours ago | 5.2 MB | |
| v0.27.97 source code.zip | < 5 hours ago | 6.2 MB | |
| Totals: 10 Items | 923.0 MB | 0 | |
Changes
test: wait for OPA instance readiness in TestServerResponseFilter (#4267)
Problem. TestServerResponseFilter is flaky: occasionally the
opaServeResponse filter returns 503 ("instance is not ready yet,
returning unavailable") instead of the expected 200/403/500.
Root cause. GetOrStartInstance is non-blocking, and the instance's
health flag is set asynchronously via the plugin status listener
(instance-health-check). Right after Start() returns, Healthy()
can still be false, so the filter takes the not-ready path
(opaserveresponse.go, if !f.opa.Healthy()). The test fired its
request before the instance became healthy.
Approach. Wait for readiness before sending the request using
require.Eventually on inst.Started() && inst.Healthy(), mirroring
the pattern already used in openpolicyagent_routeupdate_test.go. This
only changes the test; the production behavior (returning 503 while
not-ready is intentional) is unchanged.
Tests. go test -run TestServerResponseFilter -count=20
./filters/openpolicyagent/opaserveresponse/ is green; the full package,
go vet, and gofmt are clean.
Fixes [#4254]
AI disclosure: a real person reviews and approves this change and is responsible for its correctness. I used AI assistance to explore the code, draft the fix, and with English wording.
Multiarch Docker image
Multiarch Docker image is available in GitHub's docker registry:
docker run -it ghcr.io/zalando/skipper:v0.27.97 skipper --help