Commit Graph
3470 Commits
Author SHA1 Message Date
Dan Duvall fc3ecb60fb Preserve raw BUILDKIT_SYNTAX as cmdline option
Set gateway `source` to the first part of `BUILDKIT_SYNTAX` and
`cmdline` to the entire raw value to preserve additional options.

Signed-off-by: Dan Duvall <dduvall@wikimedia.org>
2025-08-26 13:56:07 -07:00
Will NonnemakerandDan Duvall b99e799f00 Add BUILDKIT_SYNTAX option handling
This fix allows building with a remote builder where
frontend.dockerfile.v0 enabled = false in the buildkitd yaml file.

Note that this change only allows the usage of BUILDKIT_SYNTAX with
a custom frontend image, and using the #syntax directive in this case
will still fail.

Resolves: docker#3077

Signed-off-by: Will Nonnemaker <wnonnemaker@gmail.com>
2025-08-26 13:51:22 -07:00
CrazyMaxandGitHub 15da6042cc Merge pull request #3379 from crazy-max/update-pflag
vendor: github.com/spf13/pflag v1.0.7
2025-08-26 17:29:30 +02:00
CrazyMax bfeb19abc8 vendor: github.com/spf13/pflag v1.0.7
full diff: https://github.com/spf13/pflag/compare/v1.0.6...v1.0.7

Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-26 13:37:43 +02:00
CrazyMaxandGitHub d7cd677480 Merge pull request #3378 from crazy-max/update-testify
vendor: github.com/stretchr/testify v1.11.0
2025-08-26 13:34:59 +02:00
CrazyMax 149b2a231b vendor: github.com/stretchr/testify v1.11.0
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-25 15:19:36 +02:00
Tõnis TiigiandGitHub a6e198a341 Merge pull request #3301 from crazy-max/ci-matrix-subaction
ci(validate): use matrix subaction
2025-08-21 10:49:29 +03:00
CrazyMax 159a68cbb8 ci(validate): use matrix subaction
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-21 08:19:26 +02:00
Akihiro SudaandGitHub 2d65b12a65 Merge pull request #3373 from tonistiigi/kubernetes-env
kubernetes: add env driver opt to kubernetes
2025-08-19 00:38:25 +09:00
Tõnis TiigiandGitHub bac71def78 Merge pull request #3366 from jsternberg/dap-detect-parent
dap: improve determination of the proper parent for certain ops
2025-08-18 18:34:57 +03:00
Tonis Tiigi 9f721e3190 kubernetes: add env driver opt to kubernetes
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2025-08-18 18:11:53 +03:00
Jonathan A. Sternberg 5c97696d64 dap: improve determination of the proper parent for certain ops
Improves the determination of the proper parent for exec and file ops.
With file ops, it will only consider inputs and ignore secondary inputs.
This prevents the following case:

```
FROM busybox AS build1
RUN echo foo > /hello

FROM scratch
COPY --from=build1 /hello .
```

Previously, `build1` would be considered the parent of the copy
instruction. Now, copy properly does not have a parent.

If there are multiple file ops and the operations disagree on the
canonical "parent", we give up on trying to find a canonical parent and
assume there is none.

For exec operations, whichever input is associated with the root mount
is considered the primary parent.

For all other operations, the first parent is considered the primary
parent if it exists.

Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
2025-08-18 09:27:02 -05:00
Tõnis TiigiandGitHub 8033908d09 Merge pull request #3371 from jsternberg/dap-nested-dockerfile-path
dap: look for base name of dockerfile name instead of path from context
2025-08-16 08:26:40 +03:00
Jonathan A. Sternberg b3c389690c dap: look for base name of dockerfile name instead of path from context
When the builder loads a dockerfile, it does it by using the base name
of the dockerfile path and only loads the innermost directory. This
means that the source name we're looking for is the base name and not
the full relative path.

Update the set breakpoints functionality so it takes this into account.
Fixes scenarios where DAP is used with a dockerfile nested in the
context.

Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
2025-08-15 14:41:00 -05:00
Tõnis TiigiandGitHub 10605b8c35 Merge pull request #3320 from crazy-max/mount-wsl-lib
driver: mount wsl lib folder for docker-container driver
2025-08-13 15:42:38 +03:00
Tõnis TiigiandGitHub 4f9f47deec Merge pull request #3341 from jsternberg/dap-persistent-exec
dap: make exec shell persistent across the build
2025-08-13 15:34:54 +03:00
CrazyMaxandGitHub da81bc15b3 Merge pull request #3364 from docker/dependabot/github_actions/actions/checkout-5
build(deps): bump actions/checkout from 4 to 5
2025-08-13 09:21:26 +02:00
dependabot[bot]andGitHub a3fa6a7b15 build(deps): bump actions/checkout from 4 to 5
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-12 22:51:34 +00:00
Jonathan A. Sternberg dbda218489 dap: make exec shell persistent across the build
Invoking the shell will cause it to persist across the entire build and
to re-execute whenever the builder pauses at another location again.

This still requires using `exec` to launch the shell. Launching by frame
id is also removed since it no longer applies to this version.

Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
2025-08-11 12:40:09 -05:00
Tõnis TiigiandGitHub c6d1e397a8 Merge pull request #3352 from crazy-max/compose-pull-nocache
bake: pull and no-cache support for compose
2025-08-11 11:55:06 +03:00
CrazyMaxandGitHub 7c434131a3 Merge pull request #3361 from crazy-max/compose-sanitize-ncontexts
compose: sanitize value of named contexts for target type
2025-08-08 16:07:37 +02:00
CrazyMax c365f015b1 compose: sanitize value of named contexts for target type
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-08 14:43:48 +02:00
CrazyMaxandGitHub 358312317a Merge pull request #3357 from crazy-max/update-compose
dockerfile: update compose to 2.39.1
2025-08-08 09:34:45 +02:00
CrazyMaxandGitHub 8f57074638 Merge pull request #3358 from docker/dependabot/github_actions/actions/download-artifact-5
build(deps): bump actions/download-artifact from 4 to 5
2025-08-07 09:39:02 +02:00
CrazyMaxandGitHub d869a0ef65 Merge pull request #3359 from thaJeztah/minor_nits
remove some intermediate vars
2025-08-07 09:26:35 +02:00
Sebastiaan van Stijn 36b18a4c7a remove some intermediate vars
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-08-06 23:00:24 +02:00
CrazyMaxandGitHub 24eccb0ba5 Merge pull request #3356 from crazy-max/update-test-deps
dockerfile: update docker to 28.3
2025-08-06 20:56:43 +02:00
CrazyMax 0279c49822 dockerfile: update docker to 28.3
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-06 20:26:48 +02:00
dependabot[bot]andGitHub 8e133a5bbb build(deps): bump actions/download-artifact from 4 to 5
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-06 18:21:46 +00:00
CrazyMax dbad205dfe dockerfile: update compose to 2.39.1
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-06 18:59:51 +02:00
CrazyMaxandGitHub 0bdd0aa624 Merge pull request #3355 from thaJeztah/bump_buildkit
vendor: github.com/moby/buildkit 9b91d20367db (master, v0.24-dev)
2025-08-06 18:58:23 +02:00
Sebastiaan van Stijn bbd18927d2 vendor: github.com/moby/buildkit 9b91d20367db (master, v0.24-dev)
full diff: https://github.com/moby/buildkit/compare/9b91d20367db...955c2b2f7d014cf13a0f755d298963f8c0a190b6

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-08-06 16:47:11 +02:00
CrazyMaxandGitHub 46463d93bf Merge pull request #3346 from crazy-max/docs-call-override
docs: missing call as override field
2025-08-05 19:07:31 +02:00
Jonathan A. SternbergandGitHub 5c27294f27 Merge pull request #3327 from jsternberg/dap-fs-inspect
dap: filesystem inspection when paused on a digest
2025-08-05 11:06:16 -05:00
CrazyMaxandGitHub 2690ddd9a6 Merge pull request #3351 from crazy-max/bake-homedir
bake: add homedir func
2025-08-05 17:32:14 +02:00
CrazyMax 669fd1df2f bake: pull and no-cache support for compose
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-05 11:49:37 +02:00
CrazyMax e4b49a8cd9 bake: add homedir func
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-05 10:21:55 +02:00
CrazyMaxandGitHub 5743e3a77a Merge pull request #3347 from crazy-max/bake-frix-empty-dockerfile
bake: fix dockerfile default if empty
2025-08-05 09:49:52 +02:00
CrazyMax 9d56b30c42 bake: fix dockerfile default if empty
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-07-31 10:02:44 +02:00
CrazyMax 264c8f9f3d docs: missing call as override field
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-07-30 13:01:23 +02:00
CrazyMaxandGitHub 1e50e8ddab Merge pull request #3340 from thaJeztah/docker_28.3.3
vendor: github.com/docker/docker, docker/cli v28.3.3
2025-07-29 21:13:10 +02:00
Sebastiaan van Stijn 4b9a2b07fc vendor: github.com/docker/docker, docker/cli v28.3.3
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 19:39:20 +02:00
Jonathan A. Sternberg 8e356c3454 dap: filesystem inspection when paused on a digest
Add a file explorer to the debugger that allows exploring the filesystem
of the current container. It will show directory contents, file
contents, and symlink destinations. It will also show the file mode
associated with a file.

The file explorer defaults to marking itself as an expensive operation
so the debugger doesn't automatically retrieve the information.

Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
2025-07-28 09:52:30 -05:00
Tõnis TiigiandGitHub 4c791dce97 Merge pull request #3325 from jsternberg/dap-alternate-stepping
dap: refactor how step in/step out works
2025-07-24 15:08:52 -07:00
Tõnis TiigiandGitHub 4dd5dd5a6d Merge pull request #3337 from glours/bump-compose-go-v2.8.1
bump compose-go to v2.8.1
2025-07-24 14:29:25 -07:00
Tõnis TiigiandGitHub f9be714a52 Merge pull request #3333 from crazy-max/compose-tests
compose integration tests
2025-07-24 14:22:55 -07:00
Guillaume Lours f388981ca4 bump compose-go to v2.8.1
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com>
2025-07-24 19:09:58 +02:00
CrazyMax 03000cc590 compose integration tests
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-07-24 11:45:30 +02:00
Jonathan A. Sternberg 1e3c44709d dap: refactor how step in/step out works
Change how breakpoints and stepping works. These now work more how you
would expect another programming language to work. Breakpoints happen
before the step has been invoked rather than after which means you can
inspect the state before the command runs.

This has the advantage of being more intuitive for someone familiar with
other debuggers. The negative is that you can't run to after a certain
step as easily as you could before. Instead, you would run to that stage
and then use next to go to the step directly afterwards.

Step in and out also now have different behaviors. When a step has
multiple inputs, the inputs of non-zero index are considered like
"function calls". The most common cause of this is to use `COPY --from`
or a bind mount. Stepping into these will cause it to jump to the
beginning of the call chain for that branch. Using step out will exit
back to the location where step in was used.

This change also makes it so some steps may be invoked multiple times in
the callgraph if multiple steps depend on them. The reused steps will
still be cached, but you may end up stepping through more lines than the
previous implementation.

Stack traces now represent where these step in and step out areas
happen rather than the previous steps. This can help you know from where
a certain step is being used.

Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
2025-07-23 17:10:40 -05:00
Jonathan A. Sternberg fea53ad1f8 dap: return error from evaluate command in repl context
In the repl context, we will now return the error instead of directly
printing it. We also suppress reporting errors from cobra. The logic
flow has also been changed to prevent returning errors from cobra unless
there was something related to the command line invocation so usage will
only be printed when a command was typed wrong and it will not show up
for every error.

Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
2025-07-23 13:51:03 -05:00