mirror of
https://github.com/openglow-org/forgefirm.git
synced 2026-09-27 16:51:12 -07:00
forgefirm-app: bump to 37854f0 (0.1.8+git) - the park clears the ring first; cloud.lid-abort checks the kernel counters
cloud.lid-abort now proves the park with the machine's own counters (cloud clears them at every job start, so a completed park reads back at (0,0)); stale ring bytes replayed ahead of the park would not.
This commit is contained in:
@@ -7,6 +7,7 @@ import time
|
|||||||
|
|
||||||
from ..catalog import test
|
from ..catalog import test
|
||||||
from .. import hw
|
from .. import hw
|
||||||
|
from ..baseline import read_position
|
||||||
|
|
||||||
_CLOUD_COVERS = [("forgefirm-app", "**"), ("python3-gfhardware", "**"), ("python3-gfutilities", "**"),
|
_CLOUD_COVERS = [("forgefirm-app", "**"), ("python3-gfhardware", "**"), ("python3-gfutilities", "**"),
|
||||||
("forgectrl", "src/super.c"), ("forgectrl", "src/main.c")]
|
("forgectrl", "src/super.c"), ("forgectrl", "src/main.c")]
|
||||||
@@ -387,6 +388,15 @@ def lid_abort(ctx):
|
|||||||
ev["edge_to_stop_ms"])
|
ev["edge_to_stop_ms"])
|
||||||
ctx.check(got["start return home"] and got["return home complete"],
|
ctx.check(got["start return home"] and got["return home complete"],
|
||||||
"the park did not run to completion with the lid open")
|
"the park did not run to completion with the lid open")
|
||||||
|
# the machine, not the client: the job started at counters (0,0,0)
|
||||||
|
# (cloud clears them at every job start), so a completed park reads
|
||||||
|
# back there - stale ring bytes replayed ahead of the park would not
|
||||||
|
ctx.check(ctx.forgectrl.wait_idle(15, abort=ctx.aborted), "machine not idle after the park")
|
||||||
|
kpos = read_position()
|
||||||
|
ev["kernel_counters_after_park"] = kpos
|
||||||
|
ctx.log("kernel counters after the park: %s", kpos)
|
||||||
|
ctx.check(kpos is not None and abs(kpos[0]) <= 3 and abs(kpos[1]) <= 3,
|
||||||
|
"the head did not come back to the job start (kernel counters %s)", kpos)
|
||||||
ctx.check(got[CANCELLED], "the print did not end ':cancelled'")
|
ctx.check(got[CANCELLED], "the print did not end ':cancelled'")
|
||||||
st, cs = ctx.forgectrl.get("/cool/status")
|
st, cs = ctx.forgectrl.get("/cool/status")
|
||||||
ev["armed_after"] = cs.get("armed") if isinstance(cs, dict) else None
|
ev["armed_after"] = cs.get("armed") if isinstance(cs, dict) else None
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
# because the component entry already identifies the pinned source
|
# because the component entry already identifies the pinned source
|
||||||
# (forgefirm-image-manifest.bbclass). The python3-gfhardware recipe in
|
# (forgefirm-image-manifest.bbclass). The python3-gfhardware recipe in
|
||||||
# meta-glowforge-bsp pins the same repository; move both together.
|
# meta-glowforge-bsp pins the same repository; move both together.
|
||||||
SRCREV = "f7e591baa6097adaa839103a255c39e92adf8254"
|
SRCREV = "37854f020dfe7d2ff5541de63cc546a2eb5751d1"
|
||||||
|
|
||||||
# Bump PV with every SRCREV move: the hash-derived package version is not
|
# Bump PV with every SRCREV move: the hash-derived package version is not
|
||||||
# monotonic on its own and buildhistory QA fails the build when it sorts
|
# monotonic on its own and buildhistory QA fails the build when it sorts
|
||||||
# backwards.
|
# backwards.
|
||||||
PV = "0.1.7+git"
|
PV = "0.1.8+git"
|
||||||
|
|||||||
Reference in New Issue
Block a user