emersion / emersion/bakah

Add support for `--progress rawjson`

Open
#12 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
41
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Used by docker-compose.

Print `github.com/moby/buildkit/client.SolveStatus` as JSON to stderr. On error, use the "ERROR: " prefix.

Example:

```
{"vertexes":[{"digest":"sha256:1e8cacb7897e9145854abf4f560d9ab76ae3ac6c8f40917fa4af73150a207285","name":"[internal] load local bake definitions","started":"2025-03-20T22:53:16.448246532+01:00"}]}
{"statuses":[{"id":"reading compose.yaml","vertex":"sha256:1e8cacb7897e9145854abf4f560d9ab76ae3ac6c8f40917fa4af73150a207285","current":0,"timestamp":"0001-01-01T00:00:00Z","started":"2025-03-20T22:53:16.44831401+01:00"}]}
{"statuses":[{"id":"reading compose.yaml","vertex":"sha256:1e8cacb7897e9145854abf4f560d9ab76ae3ac6c8f40917fa4af73150a207285","total":806,"current":806,"timestamp":"0001-01-01T00:00:00Z","started":"2025-03-20T22:53:16.44831401+01:00"}]}
{"statuses":[{"id":"reading compose.yaml","vertex":"sha256:1e8cacb7897e9145854abf4f560d9ab76ae3ac6c8f40917fa4af73150a207285","total":806,"current":806,"timestamp":"0001-01-01T00:00:00Z","started":"2025-03-20T22:53:16.44831401+01:00"}]}
{"statuses":[{"id":"reading compose.yaml","vertex":"sha256:1e8cacb7897e9145854abf4f560d9ab76ae3ac6c8f40917fa4af73150a207285","total":806,"current":806,"timestamp":"0001-01-01T00:00:00Z","started":"2025-03-20T22:53:16.44831401+01:00","completed":"2025-03-20T22:53:16.448606657+01:00"}]}
{"vertexes":[{"digest":"sha256:1e8cacb7897e9145854abf4f560d9ab76ae3ac6c8f40917fa4af73150a207285","name":"[internal] load local bake definitions","started":"2025-03-20T22:53:16.448246532+01:00","completed":"2025-03-20T22:53:16.44862932+01:00"}]}
WARNING: No output specified for soju, kimchi, gamja target(s) with docker-container driver. Build result will only remain in the build cache. To push result image into registry use --push or to load image into docker use --load
ERROR: failed to get build context kimchi: stat service:kimchi: no such file or directory
```

Contributor guide

Open the contributing guide

Research direction

Start at the CLI entry point handling `--progress` and trace how `github.com/moby/buildkit/client.SolveStatus` is currently rendered. Done means `rawjson` emits each status as JSON to stderr and prefixes errors with `ERROR: `, matching the example output.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker-compose, go
Domain
cli
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.