Build modules: steps end by compare-and-set; pin the sdk head with the review's fixes (issue 1890)

This commit is contained in:
2026-10-26 13:44:00 +01:00
parent 5fe5f26e7e
commit ac2c56f2a9
15 changed files with 18 additions and 18 deletions
@@ -121,5 +121,5 @@ const StepEndTool = "build_go_step_end"
// stepScan is the module's steps state as buildstep reads it.
func (m *Module) stepScan() buildstep.Scan {
return buildstep.Scan{Keys: m.ReadSteps.Keys, Get: m.ReadSteps.Get}
return buildstep.ScanOf(stdio.State(delivery.StepsState))
}
@@ -77,7 +77,7 @@ func main() {
m.Held = puller
if m.Node != "" {
// A step a previous process left running is ended (issue 1890); this process's own steps start after booted.
go buildstep.EndStaleAtStart(ctx, m.stepScan(), m.Steps, m.Node, booted, logf)
go buildstep.EndStaleAtStart(ctx, m.stepScan(), m.Node, booted, logf)
}
if m.Node != "" {
// The seat's asks, pulled once Serve has the runtime's channel; a pull before it is said and tried again.
@@ -41,7 +41,7 @@ func (m *Module) Tools(steps []StepTool) []stdio.Tool {
tools = append(tools, t)
}
tools = append(tools, m.ReadTools()...)
tools = append(tools, buildstep.StepEndTool(StepEndTool, m.Node, m.stepScan(), m.Steps, m.Held))
tools = append(tools, buildstep.StepEndTool(StepEndTool, m.Node, m.stepScan(), m.Held))
tools = append(tools, m.releaseTool())
return append(tools,
stdio.Tool{Name: StatusTool,
+1 -1
View File
@@ -3,7 +3,7 @@ module meshbuildgo
go 1.26.0
require (
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204
github.com/distribution/distribution/v3 v3.1.2
github.com/nats-io/nats-server/v2 v2.11.17
github.com/nats-io/nats.go v1.54.0
+2 -2
View File
@@ -1,5 +1,5 @@
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488 h1:KaDsLSzBbkimJwi7oPLfxihvNMOQpW8VjZFMg+/qs2E=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488/go.mod h1:ouERNpZizzwZ0HLEtAypsY9FR20FyUgUYRni6J7kVCY=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204 h1:4d1l+pPE+FQF8jNEjTrRdzw+4GDgNm6Yhf++SMDVtBs=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204/go.mod h1:ouERNpZizzwZ0HLEtAypsY9FR20FyUgUYRni6J7kVCY=
github.com/alicebob/miniredis/v2 v2.35.0 h1:QwLphYqCEAo1eu1TqPRN2jgVMPBweeQcR21jeqDCONI=
github.com/alicebob/miniredis/v2 v2.35.0/go.mod h1:TcL7YfarKPGDAthEtl5NBeHZfeUQj6OXMm/+iu5cLMM=
github.com/antithesishq/antithesis-sdk-go v0.7.0-default-no-op h1:Z/MZK75wC/NSrkgqeNIa7jexam9uWzhLmFTSCPI/kn0=
@@ -72,5 +72,5 @@ const StepEndTool = "build_image_step_end"
// stepScan is the module's steps state as buildstep reads it.
func (m *Module) stepScan() buildstep.Scan {
return buildstep.Scan{Keys: m.ReadSteps.Keys, Get: m.ReadSteps.Get}
return buildstep.ScanOf(stdio.State(delivery.StepsState))
}
@@ -64,7 +64,7 @@ func main() {
m.Held = puller
if m.Node != "" {
// A step a previous process left running is ended (issue 1890); this process's own steps start after booted.
go buildstep.EndStaleAtStart(ctx, m.stepScan(), m.Steps, m.Node, booted, logf)
go buildstep.EndStaleAtStart(ctx, m.stepScan(), m.Node, booted, logf)
}
if m.Node != "" {
// The seat's asks, pulled once Serve has the runtime's channel; a pull before it is said and tried again.
@@ -45,7 +45,7 @@ func (m *Module) Tools(steps []StepTool) []stdio.Tool {
tools = append(tools, t)
}
tools = append(tools, m.ReadTools()...)
tools = append(tools, buildstep.StepEndTool(StepEndTool, m.Node, m.stepScan(), m.Steps, m.Held))
tools = append(tools, buildstep.StepEndTool(StepEndTool, m.Node, m.stepScan(), m.Held))
tools = append(tools, m.releaseTool())
return append(tools,
stdio.Tool{Name: StatusTool,
+1 -1
View File
@@ -3,7 +3,7 @@ module meshbuildimage
go 1.26.0
require (
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204
github.com/nats-io/nats-server/v2 v2.11.17
github.com/nats-io/nats.go v1.54.0
)
+2 -2
View File
@@ -1,5 +1,5 @@
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488 h1:KaDsLSzBbkimJwi7oPLfxihvNMOQpW8VjZFMg+/qs2E=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488/go.mod h1:ouERNpZizzwZ0HLEtAypsY9FR20FyUgUYRni6J7kVCY=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204 h1:4d1l+pPE+FQF8jNEjTrRdzw+4GDgNm6Yhf++SMDVtBs=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204/go.mod h1:ouERNpZizzwZ0HLEtAypsY9FR20FyUgUYRni6J7kVCY=
github.com/antithesishq/antithesis-sdk-go v0.7.0-default-no-op h1:Z/MZK75wC/NSrkgqeNIa7jexam9uWzhLmFTSCPI/kn0=
github.com/antithesishq/antithesis-sdk-go v0.7.0-default-no-op/go.mod h1:FQyySiasQQM8735Ddel3MRojmy4dA1IqCeyJ5jmPMbI=
github.com/google/go-tpm v0.9.8 h1:slArAR9Ft+1ybZu0lBwpSmpwhRXaa85hWtMinMyRAWo=
@@ -80,5 +80,5 @@ const StepEndTool = "build_node_step_end"
// stepScan is the module's steps state as buildstep reads it.
func (m *Module) stepScan() buildstep.Scan {
return buildstep.Scan{Keys: m.ReadSteps.Keys, Get: m.ReadSteps.Get}
return buildstep.ScanOf(stdio.State(delivery.StepsState))
}
@@ -76,7 +76,7 @@ func main() {
m.Held = puller
if m.Node != "" {
// A step a previous process left running is ended (issue 1890); this process's own steps start after booted.
go buildstep.EndStaleAtStart(ctx, m.stepScan(), m.Steps, m.Node, booted, logf)
go buildstep.EndStaleAtStart(ctx, m.stepScan(), m.Node, booted, logf)
}
if m.Node != "" {
// The seat's asks, pulled once Serve has the runtime's channel; a pull before it is said and tried again.
@@ -41,7 +41,7 @@ func (m *Module) Tools(steps []StepTool) []stdio.Tool {
tools = append(tools, t)
}
tools = append(tools, m.ReadTools()...)
tools = append(tools, buildstep.StepEndTool(StepEndTool, m.Node, m.stepScan(), m.Steps, m.Held))
tools = append(tools, buildstep.StepEndTool(StepEndTool, m.Node, m.stepScan(), m.Held))
tools = append(tools, m.releaseTool())
return append(tools,
stdio.Tool{Name: StatusTool,
+1 -1
View File
@@ -3,7 +3,7 @@ module meshbuildnode
go 1.26.0
require (
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204
github.com/distribution/distribution/v3 v3.1.2
github.com/nats-io/nats.go v1.54.0
)
+2 -2
View File
@@ -1,5 +1,5 @@
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488 h1:KaDsLSzBbkimJwi7oPLfxihvNMOQpW8VjZFMg+/qs2E=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026122558-18e0a01c5488/go.mod h1:ouERNpZizzwZ0HLEtAypsY9FR20FyUgUYRni6J7kVCY=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204 h1:4d1l+pPE+FQF8jNEjTrRdzw+4GDgNm6Yhf++SMDVtBs=
git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261026124305-e66c6fea6204/go.mod h1:ouERNpZizzwZ0HLEtAypsY9FR20FyUgUYRni6J7kVCY=
github.com/alicebob/miniredis/v2 v2.35.0 h1:QwLphYqCEAo1eu1TqPRN2jgVMPBweeQcR21jeqDCONI=
github.com/alicebob/miniredis/v2 v2.35.0/go.mod h1:TcL7YfarKPGDAthEtl5NBeHZfeUQj6OXMm/+iu5cLMM=
github.com/antithesishq/antithesis-sdk-go v0.7.0-default-no-op h1:Z/MZK75wC/NSrkgqeNIa7jexam9uWzhLmFTSCPI/kn0=