Compare commits

...

No commits in common. "ba0edf6adada894ce29710a0b55a57afb9040c8e" and "496205e50ec6764744843f1156eeaa941e6c8569" have entirely different histories.

6 changed files with 9 additions and 7 deletions

View file

@ -12,4 +12,6 @@ FROM scratch
COPY --from=builder /checker-alias /checker-alias COPY --from=builder /checker-alias /checker-alias
USER 65534:65534 USER 65534:65534
EXPOSE 8080 EXPOSE 8080
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
CMD ["/checker-alias", "-healthcheck"]
ENTRYPOINT ["/checker-alias"] ENTRYPOINT ["/checker-alias"]

View file

@ -215,7 +215,7 @@ func (c *chainCtx) reanchor(ctx context.Context, name string) (string, []string,
return zone, ns, nil return zone, ns, nil
} }
// isReferral detects "NOERROR + no Answer for owner + NS in Authority" the // isReferral detects "NOERROR + no Answer for owner + NS in Authority": the
// shape of a delegation response from a parent auth. // shape of a delegation response from a parent auth.
func isReferral(r *dns.Msg, owner string) bool { func isReferral(r *dns.Msg, owner string) bool {
if r == nil || r.Rcode != dns.RcodeSuccess || len(r.Answer) > 0 { if r == nil || r.Rcode != dns.RcodeSuccess || len(r.Answer) > 0 {

View file

@ -16,7 +16,7 @@ const (
defaultRecognizeApexFlattening = true defaultRecognizeApexFlattening = true
// hintKey is the CheckState.Meta key the HTML report reads to render the // hintKey is the CheckState.Meta key the HTML report reads to render the
// "How to fix" block keep them in sync. // "How to fix" block: keep them in sync.
hintKey = "hint" hintKey = "hint"
) )
@ -31,7 +31,7 @@ func loadAlias(ctx context.Context, obs sdk.ObservationGetter) (*AliasData, []sd
return &data, nil return &data, nil
} }
// skipped is the "nothing to judge right now" return rules must produce at // skipped is the "nothing to judge right now" return: rules must produce at
// least one state, otherwise the SDK substitutes StatusUnknown. // least one state, otherwise the SDK substitutes StatusUnknown.
func skipped(reason string) []sdk.CheckState { func skipped(reason string) []sdk.CheckState {
return []sdk.CheckState{{ return []sdk.CheckState{{

View file

@ -61,7 +61,7 @@ type AliasData struct {
Chain []ChainHop `json:"chain,omitempty"` Chain []ChainHop `json:"chain,omitempty"`
ChainTerminated ChainTermination `json:"chain_terminated"` ChainTerminated ChainTermination `json:"chain_terminated"`
// FinalTarget is the last name in the chain equal to Owner when there is // FinalTarget is the last name in the chain, equal to Owner when there is
// no indirection. // no indirection.
FinalTarget string `json:"final_target,omitempty"` FinalTarget string `json:"final_target,omitempty"`
FinalA []string `json:"final_a,omitempty"` FinalA []string `json:"final_a,omitempty"`

2
go.mod
View file

@ -3,7 +3,7 @@ module git.happydns.org/checker-alias
go 1.25.0 go 1.25.0
require ( require (
git.happydns.org/checker-sdk-go v1.4.0 git.happydns.org/checker-sdk-go v1.5.0
github.com/miekg/dns v1.1.72 github.com/miekg/dns v1.1.72
) )

4
go.sum
View file

@ -1,5 +1,5 @@
git.happydns.org/checker-sdk-go v1.4.0 h1:sO8EnF3suhNgYLRsbmCZWJOymH/oNMrOUqj3FEzJArs= git.happydns.org/checker-sdk-go v1.5.0 h1:5uD5Cm6xJ+lwnhbJ09iCXGHbYS9zRh+Yh0NeBHkAPBY=
git.happydns.org/checker-sdk-go v1.4.0/go.mod h1:aNAcfYFfbhvH9kJhE0Njp5GX0dQbxdRB0rJ0KvSC5nI= git.happydns.org/checker-sdk-go v1.5.0/go.mod h1:aNAcfYFfbhvH9kJhE0Njp5GX0dQbxdRB0rJ0KvSC5nI=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/miekg/dns v1.1.72 h1:vhmr+TF2A3tuoGNkLDFK9zi36F2LS+hKTRW0Uf8kbzI= github.com/miekg/dns v1.1.72 h1:vhmr+TF2A3tuoGNkLDFK9zi36F2LS+hKTRW0Uf8kbzI=