From a475ecb2c9c5edb154da40d20362aff4dc8c16e2 Mon Sep 17 00:00:00 2001 From: John Andersen Date: Sun, 13 Jul 2025 14:54:31 +0000 Subject: [PATCH] spindle: engine: more specific image pull error message time=2025-07-13T14:35:21.719Z level=ERROR msg="pipeline failed!" component=spindle image=nixery.tangled.sh/python/bash/git/coreutils/nix workflowId=knot1.tangled.sh-3ltu3twqimw22-fix-todos.yaml error="Error response from daemon: received unexpected HTTP status: 500 Internal Server Error Related: https://discord.com/channels/1361963801993285692/1393783888530243647/1393964321431617586 Signed-off-by: John Andersen --- spindle/engine/engine.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spindle/engine/engine.go b/spindle/engine/engine.go index 8bd587e..0af4398 100644 --- a/spindle/engine/engine.go +++ b/spindle/engine/engine.go @@ -90,7 +90,7 @@ func (e *Engine) StartWorkflows(ctx context.Context, pipeline *models.Pipeline, reader, err := e.docker.ImagePull(ctx, w.Image, image.PullOptions{}) if err != nil { - e.l.Error("pipeline failed!", "workflowId", wid, "error", err.Error()) + e.l.Error("pipeline image pull failed!", "image", w.Image, "workflowId", wid, "error", err.Error()) err := e.db.StatusFailed(wid, err.Error(), -1, e.n) if err != nil { -- 2.43.0 From 9ec742efc53191d8cbb23e7d22e39fef81095ce7 Mon Sep 17 00:00:00 2001 From: John Andersen Date: Sun, 13 Jul 2025 15:03:17 +0000 Subject: [PATCH] docs: spindle: hosting: create log directory Fixes error: ``` time=2025-07-13T15:01:04.268Z level=WARN msg="failed to setup step logger; logs will not be persisted" component=spindle error="creating log file: open /var/log/spindle/knot1.tangled.sh-3ltu5bpvgwt22-fix-todos.yaml.log: no such file or directory" ``` Signed-off-by: John Andersen --- docs/spindle/hosting.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/spindle/hosting.md b/docs/spindle/hosting.md index dea88de..5d96974 100644 --- a/docs/spindle/hosting.md +++ b/docs/spindle/hosting.md @@ -36,7 +36,14 @@ Spindle is configured using environment variables. The following environment var go build -o cmd/spindle/spindle cmd/spindle/main.go ``` -3. **Run the Spindle binary.** +3. **Create the log directory.** + + ```shell + sudo mkdir -p /var/log/spindle + sudo chown $USER:$USER -R /var/log/spindle + ``` + +4. **Run the Spindle binary.** ```shell ./cmd/spindle/spindle -- 2.43.0