Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Emit events for building images #11498

Merged
merged 1 commit into from
Nov 12, 2024
Merged

Conversation

felixfontein
Copy link
Contributor

What I did
Right now docker compose build or docker compose up --build does not emit events. The only way to notice that something was built is by looking at stdout. The only case events are written (to stderr) is when using BuildKit in dry-mode (there's special code to emit some fake events in that case).

This PR makes building emit proper events (one before and one after building). This improves using docker compose from other programs. (Especially together with #11478.)

Related issue
Fixes #11403.

(not mandatory) A picture of a cute animal, if possible in relation to what you did
A cute cat with rather sharp claws, watch out when petting her

@felixfontein
Copy link
Contributor Author

@ndeloof could you maybe take a look at this PR at some point? Thanks :)

@felixfontein
Copy link
Contributor Author

@ndeloof can you take a look at this? Thanks.

@sfc-gh-kbregula
Copy link

Are these events also generated if the image is built by the docker compose watch command?

@felixfontein
Copy link
Contributor Author

I would assume so; I've never used docker compose watch or looked at how it works. But I would assume it uses the same code as docker compose up and docker compose build.

Signed-off-by: Felix Fontein <[email protected]>
@ndeloof ndeloof merged commit a9de9ab into docker:main Nov 12, 2024
28 checks passed
@felixfontein felixfontein deleted the building-events branch November 12, 2024 17:20
@felixfontein
Copy link
Contributor Author

@ndeloof thanks for reviewing and merging!

tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Dec 5, 2024
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [docker/compose](https://github.com/docker/compose) | minor | `v2.30.3` -> `v2.31.0` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>docker/compose (docker/compose)</summary>

### [`v2.31.0`](https://github.com/docker/compose/releases/tag/v2.31.0)

[Compare Source](docker/compose@v2.30.3...v2.31.0)

#### What's Changed

##### ✨ Improvements

-   Delegate build to buildx bake by [@&#8203;ndeloof](https://github.com/ndeloof) [(12300)](docker/compose#12300)
-   Add commit command by [@&#8203;jarqvi](https://github.com/jarqvi) [(12268)](docker/compose#12268)

##### 🐛 Fixes

-   Fix(config): Print service names with --no-interpolate by [@&#8203;idsulik](https://github.com/idsulik) [(12282)](docker/compose#12282)
-   Remove obsolete containers first on scale down by [@&#8203;ndeloof](https://github.com/ndeloof) [(12272)](docker/compose#12272)
-   Fix compose images that return a different image with the same ID by [@&#8203;koooge](https://github.com/koooge) [(12278)](docker/compose#12278)
-   Emit events for building images by [@&#8203;felixfontein](https://github.com/felixfontein) [(11498)](docker/compose#11498)
-   Fix support for --remove-orphans on `docker compose run` by [@&#8203;ndeloof](https://github.com/ndeloof) [(12288)](docker/compose#12288)
-   Push empty descriptor layer when using OCI version 1.1 for Compose artifact by [@&#8203;glours](https://github.com/glours) [(12289)](docker/compose#12289)
-   Detect network config changes and recreate if needed by [@&#8203;ndeloof](https://github.com/ndeloof) [(12267)](docker/compose#12267)
-   Update wait-timeout flag usage to include the unit by [@&#8203;terev](https://github.com/terev) [(12316)](docker/compose#12316)
-   Use service.stop to stop dependent containers by [@&#8203;ndeloof](https://github.com/ndeloof) [(12322)](docker/compose#12322)
-   Only check attached networks on running containers by [@&#8203;ndeloof](https://github.com/ndeloof) [(12327)](docker/compose#12327)
-   Only stop dependent containers ... if there's some by [@&#8203;ndeloof](https://github.com/ndeloof) [(12328)](docker/compose#12328)

##### 🔧  Internal

-   Pass stale bot inactivity limit from 6 to 3 months by [@&#8203;glours](https://github.com/glours) [(12284)](docker/compose#12284)
-   Ci: enable testifylint linter by [@&#8203;mmorel-35](https://github.com/mmorel-35) [(11761)](docker/compose#11761)
-   Remove ddev e2e tests by [@&#8203;glours](https://github.com/glours) [(12291)](docker/compose#12291)
-   Gha: test against docker engine v27.4.0 by [@&#8203;thaJeztah](https://github.com/thaJeztah) [(12299)](docker/compose#12299)
-   Run build tests against bake by [@&#8203;ndeloof](https://github.com/ndeloof) [(12325)](docker/compose#12325)

##### ⚙️ Dependencies

-   Build(deps): bump golang.org/x/sync from `0.8.0` to `0.9.0` by [@&#8203;dependabot](https://github.com/dependabot) [(12277)](docker/compose#12277)
-   Build(deps): bump golang.org/x/sys from `0.26.0` to `0.27.0` by [@&#8203;dependabot](https://github.com/dependabot) [(12276)](docker/compose#12276)
-   Build(deps): bump github.com/moby/buildkit `v0.17.1`, github.com/docker/buildx `v0.18.0` by [@&#8203;thaJeztah](https://github.com/thaJeztah) [(12298)](docker/compose#12298)
-   Build(deps): bump docker/docker `v27.4.0-rc.2`, docker/cli `v27.4.0-rc.2` by [@&#8203;thaJeztah](https://github.com/thaJeztah) [(12306)](docker/compose#12306)
-   Build(deps): bump github.com/stretchr/testify from `1.9.0` to `1.10.0` by [@&#8203;dependabot](https://github.com/dependabot) [(12319)](docker/compose#12319)
-   Build(deps): bump github.com/compose-spec/compose-go/v2 from `2.4.5-0.20241111154218-9d02caaf8465` to `2.4.5` by [@&#8203;dependabot](https://github.com/dependabot) [(12324)](docker/compose#12324)
-   Build(deps): bump github.com/moby/buildkit from `0.17.1` to `0.17.2` by [@&#8203;dependabot](https://github.com/dependabot) [(12320)](docker/compose#12320)
-   Bump google.golang.org/grpc to v1.68.0 and containerd to `v1.7.24` by [@&#8203;glours](https://github.com/glours) [(12329)](docker/compose#12329)

#### New Contributors

-   [@&#8203;terev](https://github.com/terev) made their first contribution in docker/compose#12316

**Full Changelog**: docker/compose@v2.30.3...v2.31.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Building images not visible in progress events, *except* in dry-run mode
3 participants