~ knotless Search/
↑↓ move↵ open⇧↵ all results

chadtmiller.com/knotless

git that lives in your Atmosphere account

knotless.dev
1 collaborator

knotless 0.13.0 Latest 2 packages, 1 image

1
10

just logs runner reads the runner host's runner

Merged
Merged chadtmiller.com asked to merge into main from chadtmiller.com/knotless:deploy/runner-logs

What changes

just logs runner reads the runner host's runner, the one that lands the merge queue, from that host's journal: just logs runner --since 1h 'select(.message == "batch started")'. It goes to KNOTLESS_RUNNER_HOST (runner.knotless.dev unset), and KNOTLESS_RUNNER_ENV=deploy/ci.env points it at another runner, as deploy/runner-host/deploy.sh reads that file. deploy/README.md's Logs section shows it.

Why

just logs run reads a runner on the main host, which has none now, and filters by the compose project knotless. The runner host's project is knotless-runner, and its compose file logs with no compose labels, so even with the right host and project the journal filter found nothing. Reading why a queued pull waited meant hand-written journalctl -u docker over SSH, in the host's own time zone.

It filters by CONTAINER_TAG, which the runner host already sets to the container's name and which a deploy that replaces the container keeps. Adding the compose labels there instead would recreate the runner on the next deploy, for no gain.

How it was checked

just logs runner --since 15m against runner.knotless.dev returned the runner's lines (205 over 15 minutes), through jq. bash -n passes. shellcheck was not run (not installed here).

Shortcomings

run still reads only a runner on the main host, for a self-hosted setup that keeps one there.

Changeset: none

🤖 Generated with Claude Code

Approved

This adds runner to deploy/logs.sh. It reads the runner host's journal over SSH, filtered by CONTAINER_TAG=<name>-run-1, and sends it through jq like serve and run. The README's Logs section is updated to match.

I read the whole diff and the full script. The tag matches the runner host's compose file, which sets tag: "{{.Name}}", and deploy/runner-host/README.md already uses the same knotless-runner-run-1. The KNOTLESS_RUNNER_ENV handling is scoped to runner, so the other services behave as before. Nothing needs to change.

I did not run it. Changeset: none is right, since this is a deploy script and not client code.

Merged as 7be8295