All of mesh-build-go's buildstep Go module leaves mesh-catalog for modules/mesh-delivery-sdk: the step run, fetch and release and the regenerate-and-compare step as the package steprun, the CPU share as steprun/buildcpu, the conformance kit as steprun/conformance, the seat generator as seatgen with cmd/seatgen, and cmd/mesh-pack. The three build modules and the builder's and checker's tests import the SDK and keep no copy; the SDK requires nothing of mesh-catalog. Code the build modules share is the delivery domain's SDK, not one module's package. It carries the build-module round's two new files of that package (dropdetected.go 247c422f, storedbuilds.go 904b8aed). Builds: design 47 G §464, §680, §327, §420, §495 Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
15 lines
758 B
Go
15 lines
758 B
Go
package steprun
|
|
|
|
import sdkstep "git.novox.be/novox/mesh-delivery/modules/mesh-delivery-sdk/buildstep"
|
|
|
|
// Transport is err as a sdkstep.Passing when its words are those of a network that did not answer (a lookup, a timeout, a
|
|
// reset connection; sdkstep.PassingCause), so the build module's ask is given again after a delay instead of failing
|
|
// (novox/hq ADR 0664 §1, issue 1748); any other error, nil included, is returned as it is. Every build module wraps a step
|
|
// that fetches over the network with it: a failure of the source (an unknown revision, a wrong checksum) never is one.
|
|
func Transport(err error) error {
|
|
if err == nil || sdkstep.IsPassing(err) || !sdkstep.PassingCause(err.Error()) {
|
|
return err
|
|
}
|
|
return &sdkstep.Passing{Err: err}
|
|
}
|