[pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:35.997461502-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:35.997494612-05:00 == scripts on PATH + executable == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:35.999719830-05:00 ok: scripts/edge-selftest.sh: has shebang [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.002032908-05:00 warn: scripts/edge-selftest.sh: not tracked by git but +x on disk [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.006363924-05:00 ok: scripts/edge-selftest.sh: bash -n clean [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.852001351-05:00 ok: scripts/edge-selftest.sh: shellcheck clean [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.858182857-05:00 ok: scripts/edge-selftest.sh: runs (--help exit 0) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.859662939-05:00 ok: scripts/edge-selftest: has shebang [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.861445380-05:00 warn: scripts/edge-selftest: not tracked by git but +x on disk [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.863745757-05:00 ok: scripts/edge-selftest: bash -n clean [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.975537009-05:00 ok: scripts/edge-selftest: shellcheck clean [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.980226923-05:00 ok: scripts/edge-selftest: runs (--help exit 0) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.982400111-05:00 ok: roles/selftest installs to a PATH dir: /usr/local/sbin/edge-selftest [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.983795524-05:00 ok: roles/selftest copies the script to {{ selftest_bin }} [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.983815783-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.983825853-05:00 == console login hooks (profile.d) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:36.986125531-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: bash -n clean [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.013390683-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: shellcheck clean [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.015042654-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: no bare exit (comments excluded) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.016414796-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: guards non-interactive shells ($-) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.018906073-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: bash -n clean [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.065083361-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: shellcheck clean [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.066701792-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: no bare exit (comments excluded) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.067932796-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: guards non-interactive shells ($-) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.069059530-05:00 ok: banner: EDGE_SELFTEST_NOLOGIN opt-out present [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.070110624-05:00 ok: banner: disable-file opt-out present [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.071210008-05:00 ok: recorder: EDGE_CONSOLE_NORECORD opt-out present [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.072127063-05:00 ok: recorder: disable-file opt-out present [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.074220802-05:00 ok: EDGE_CONSOLE_RECORDING marker shared by recorder + banner [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.074250101-05:00 ok: serial console autologin overlay present (image/overlay/etc/systemd/system/serial-getty@ttyS0.service.d/autologin.conf) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.077860482-05:00 ok: banner report dir matches role selftest_report_dir (/var/log/edge-selftest) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:57:37.091427538-05:00 ok: tests/selftest-login.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:06.644517305-05:00 ok: tests/selftest-report-contract.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:06.894467581-05:00 ok: tests/selftest-login-pty.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:07.076968280-05:00 ok: tests/selftest-wrapper.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:07.187111258-05:00 ok: tests/console-record.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:07.736514325-05:00 ok: tests/selftest-firmware-fixtures.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:09.708791531-05:00 ok: tests/selftest-firmware-e2big.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:32.147273867-05:00 ok: tests/selftest-converge-defer.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:34.912889116-05:00 ok: tests/selftest-verify-keys-exist.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:34.999940134-05:00 ok: tests/vault-agent-template-render.sh passes [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.001374396-05:00 ok: image/overlay/usr/local/sbin/edge-selftest matches scripts/edge-selftest (v2 wrapper) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.003485535-05:00 warn: image/overlay/usr/local/sbin/edge-selftest: no git metadata (CI workspace) but +x on disk [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.003550204-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.003556684-05:00 == ansible packaged + works locally == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.004956977-05:00 ok: image/packages.list declares ansible-core (baked into the golden) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.006142470-05:00 ok: image/packages.list declares python3 (baked into the golden) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.009492903-05:00 ok: image/packages.list declares git (baked into the golden) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.339574988-05:00 ok: ansible present: ansible [core 2.21.2] [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.857186357-05:00 ok: ansible executes a module over the local connection [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.857227497-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.857250517-05:00 == playbooks: valid YAML + valid playbook syntax == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.904504956-05:00 ok: YAML parses: selftest.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.939512480-05:00 ok: YAML parses: selftest-release-gate.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:35.973775877-05:00 ok: YAML parses: roles/selftest/tasks/main.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.041915445-05:00 ok: YAML parses: roles/selftest/tasks/detect.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.086488268-05:00 ok: YAML parses: roles/selftest/tasks/native.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.128036468-05:00 ok: YAML parses: roles/selftest/defaults/main.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.176954798-05:00 ok: YAML parses: roles/selftest/tasks/tiers/boot.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.216458288-05:00 ok: YAML parses: roles/selftest/tasks/tiers/net.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.260182906-05:00 ok: YAML parses: roles/selftest/tasks/tiers/firmware.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.298964250-05:00 ok: YAML parses: roles/selftest/tasks/tiers/dns.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.345485562-05:00 ok: YAML parses: roles/selftest/tasks/tiers/mesh.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.407509523-05:00 ok: YAML parses: roles/selftest/tasks/tiers/converge.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.477687290-05:00 ok: YAML parses: roles/selftest/tasks/tiers/metrics.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.568646677-05:00 ok: YAML parses: roles/selftest/tasks/tiers/logs.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.960718604-05:00 warn: yamllint findings (non-fatal): [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.962410305-05:00 roles/selftest/tasks/tiers/boot.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.962428535-05:00 364:31 error trailing spaces (trailing-spaces) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:36.962433555-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:37.467024745-05:00 ok: ansible-playbook --syntax-check OK: selftest.yml [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:37.467154044-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:37.467162304-05:00 == site/role targeting groups (#247) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.401352465-05:00 ok: tests/site-role-groups.sh passes (subset-targeting contract, #247) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.402671738-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.402679318-05:00 == pki first-boot cert dirs (#334) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.471475113-05:00 ok: tests/pki-firstboot-cert-dirs.sh passes (bare-box cert-render contract, #334) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.471505313-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.471512653-05:00 == pki AppRole steady-state auth switch (#387) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.576615135-05:00 ok: tests/pki-approle-switch.sh passes (approle steady-state, cert retired, #387) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.576644205-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:39.576649695-05:00 == selftest boot tier: masked-unit gating (#399) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:41.178167918-05:00 ok: tests/selftest-boot-masked-units.sh passes (masked units excluded from failed_units, #399) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:41.178193338-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:41.178201738-05:00 == A/B slot completeness markers (edge#520/#484) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:42.163172875-05:00 ok: tests/slot-marker-completeness.sh passes (rollback completeness-marker contract, edge#520/#484) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:42.163297985-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:42.163303615-05:00 == synchronous first-boot converge (#356) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.322223521-05:00 ok: tests/firstboot-converge.sh passes (sync converge before readiness, #356) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.322253451-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.322272311-05:00 == active-firmware prompt (#361) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.354125643-05:00 ok: tests/firmware-prompt.sh passes (prompt reflects active firmware, #361) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.354161802-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.354169832-05:00 == per-container metrics collector (#395) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.442856993-05:00 ok: tests/container-metrics.sh passes (per-container metrics contract, #395) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.442885723-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:48.442892863-05:00 == config dispatcher: KNOWLEDGE k/v -> service configs (edge#458, retire-converge #449) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:51.554839334-05:00 ok: storeminder-config provisioned from Nexus PyPI (storeminder-config==0.1.6) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:53.604253362-05:00 ok: tests/config-dispatcher.sh passes (#884 shape, cron->OnCalendar, sts creds, forward-skew, validation gate, Mender exit-code contract) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:55.661257968-05:00 ok: tests/selftest-gate.sh passes (post-apply health gate: ordering, rollback teeth, timeout bound, skip semantics; edge#457) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:55.661286377-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:55.661292347-05:00 == manifest-driven S3 uploader units (edge#451, retire-converge #449) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:55.928583128-05:00 ok: tests/s3-uploader.sh passes (unit wiring, seam agreement, skip ladder, rclone flow, converge yield) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:55.928606317-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:55.928612017-05:00 == collector config seam (edge#478, retire-converge #449) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:57.073719289-05:00 ok: tests/collector-config.sh passes (config round-trip, skip-when-absent, oneshot no-reload, no-secret-in-world-readable-sink) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:57.073824839-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:58:57.073831799-05:00 == selftest logs round-trip tier (edge#394) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:59:13.764949568-05:00 ok: tests/selftest-logs-roundtrip.sh passes (emit->ship->index->confirm contract, edge#394) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:59:13.764978957-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T09:59:13.764986217-05:00 == selftest release gate (edge#504) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:00:00.918075458-05:00 ok: tests/selftest-release-gate.sh passes (round-trip escalation is a release blocker, edge#504) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:00:00.918105608-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:00:00.918114358-05:00 == hermetic obs round-trip fixture (edge#506) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:01:09.898809110-05:00 ok: tests/selftest-obs-fixture.sh passes (obs fixture + shape helpers + round-trip wiring, edge#506) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:01:09.898963719-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:01:09.898972949-05:00 == setup narrative + failure signatures (edge#421) == [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:01:09.961166816-05:00 ok: tests/setup-log.sh passes (narrative primitive contract, edge#421) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:01:10.174269711-05:00 ok: tests/setup-diagnose.sh passes (failure-signature catalogue, edge#421) [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:01:10.174297811-05:00 [pod/edge-main-validate-nrqh6-selftest-validate-pod/step-selftest-validate] 2026-08-14T10:01:10.174303971-05:00 edge-selftest-lint: all checks passed [pod/edge-main-validate-nrqh6-selftest-validate-pod/prepare] 2026-08-14T09:57:31.330084949-05:00 2026/08/14 14:57:31 Entrypoint initialization [pod/edge-main-validate-nrqh6-selftest-validate-pod/place-scripts] 2026-08-14T09:57:32.396796821-05:00 2026/08/14 14:57:32 Decoded script /tekton/scripts/script-0-gb6fz