Guillaume Lours
0d21922234
test checking bake internal load build definition
...
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
(cherry picked from commit 6719f47bd4 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 21:27:26 +01:00
Guillaume Lours
49b1c1e932
bump compose-go to version v2.9.1
...
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
(cherry picked from commit 3eb2934eb7 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
v2.40.3
2025-10-30 10:14:58 +01:00
Suleiman Dibirov
19351bbd7d
fix compose_run_build_once_test.go
...
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com >
(cherry picked from commit c416ea7036 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 10:12:21 +01:00
Suleiman Dibirov
3de9b0cc71
fix(git): Add validation for Git subdirectory paths to prevent traversal
...
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com >
(cherry picked from commit 0d396bbacb )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 10:12:04 +01:00
Suleiman Dibirov
1d4acfb5fa
Update e2e tests in compose_run_build_once_test.go to use project names for Docker Compose commands.
...
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com >
(cherry picked from commit fc74c78963 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 10:11:17 +01:00
Suleiman Dibirov
670a181f77
Revert "no parallel in compose_run_build_once_test.go"
...
This reverts commit e4f4a5aa86 .
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com >
(cherry picked from commit 658bff335f )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 10:10:56 +01:00
Suleiman Dibirov
739ae1b773
no parallel in compose_run_build_once_test.go
...
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com >
(cherry picked from commit 80030e1390 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 10:10:43 +01:00
Suleiman Dibirov
141921e72b
lint fix
...
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com >
(cherry picked from commit 6a35be5112 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 10:10:19 +01:00
Suleiman Dibirov
c6bec2e712
add e2e tests
...
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com >
(cherry picked from commit 0c854a6ab7 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 10:09:52 +01:00
Suleiman Dibirov
0bd132b547
fix(run): Ensure images exist only for the target service in run command
...
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com >
(cherry picked from commit 557e0b6ec7 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 10:09:29 +01:00
Nicolas De Loof
ee86f5527c
run hooks on restart
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
(cherry picked from commit 5924387e89 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 09:58:34 +01:00
Nicolas De Loof
d0f2c3504a
prompt default implementation to prevent a panic
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
(cherry picked from commit 3ce52883cb )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 09:57:38 +01:00
Nicolas De Loof
db1c279447
Code Cleanup
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
(cherry picked from commit ac3b8fd8a5 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 09:57:17 +01:00
Anton Ovchinnikov
5e209ea113
Fix help output for "exec --no-tty" option
...
Signed-off-by: Anton Ovchinnikov <anton@tonyo.info >
(cherry picked from commit 8619f5d72a )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 09:55:53 +01:00
Nicolas De Loof
5dec597d4b
fix OCI compose override support
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
(cherry picked from commit e59150baa8 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 09:55:19 +01:00
Nicolas De Loof
47f6d02bef
Test to check writeComposeFile detects invalid OCI artifact
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
(cherry picked from commit 6a90742ef2 )
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-30 09:54:58 +01:00
Nicolas De Loof
6007d4c7e7
publish env_file references as opaque hash to prevent paths conflicts
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
v2.40.2
2025-10-22 19:32:16 +02:00
Guillaume Lours
69bcb962bf
Enforce compose files from OCI artifact all get into the same target (cache) folder
...
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-22 19:32:16 +02:00
Nicolas De Loof
9b4fcce034
introduce WithPrompt to configure compose backend to use a plugable UI component for user interaction
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-22 16:14:55 +02:00
Guillaume Lours
da5c57c29d
test digest or canonical reference, not only tag, when checking if an image is already present
...
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-20 18:42:24 +02:00
Nicolas De Loof
e25265dd55
remove unused code to only rely on api.Service
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-20 14:53:04 +02:00
Nicolas De Loof
e19e1278b5
fail build if minimal required version of buildx isn't installed
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-20 12:25:38 +02:00
Nicolas De Loof
585c4db4f9
Compose can't create a tar with adequate uid:gid ownership
...
as we can't get container UID/GID as int by ContainerInspect
revert https://github.com/docker/compose/pull/13288
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-20 09:51:58 +02:00
Guillaume Lours
be8c7e6c60
make CTRL+Z a no-op operation on Windows
...
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
v2.40.1
2025-10-17 15:07:37 +02:00
Nicolas De Loof
27f59d7f42
Detect failure to access os.TempDir
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-17 09:49:44 +02:00
Nicolas De Loof
2681ed17a7
mutualize code from injectSecrets / injectConfigs
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-16 17:43:04 +02:00
Nicolas De Loof
ee75be342b
Set secret/config uid:gid to match container's USER
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-16 17:43:04 +02:00
Paul Thiele
157617480a
fix race-condition bug in publish command
...
Signed-off-by: Paul Thiele <paul.thiele@kinexon.com >
2025-10-16 09:24:57 +02:00
Nicolas De Loof
88aae9c46e
support Ctrl+Z to run compose in background
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-15 17:26:11 +02:00
Guillaume Lours
7755302348
use fixed version of compose bridge transformer images
...
to avoid CI issue on Compose when a new version is released and change the outputs
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-14 09:21:59 +02:00
Guillaume Lours
147923c44c
bump golang to version 1.24.9
...
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com >
2025-10-14 09:14:56 +02:00
Olivier Goulpeau
289faae5fa
fix(publish): in publish(), select all profiles in the project to publish.
...
This code is moved from `generateImageDigestsOverride()` as no more
needed at that point.
Signed-off-by: Olivier Goulpeau <olivier.goulpeau@ledger.fr >
2025-10-14 08:25:26 +02:00
Olivier Goulpeau
e7aa484b78
fix(publish): in processFile(), load the compose file passing the project.Profiles to the loader.Options.
...
Signed-off-by: Olivier Goulpeau <olivier.goulpeau@ledger.fr >
2025-10-14 08:25:26 +02:00
Sebastiaan van Stijn
ae3309afab
pkg/compose: build with bake: drop support for buildx v0.16 and lower
...
[buildx v0.17][1] was released a Year ago, so any version this
conditional code was accounting for would be versions before that;
the latest of which being [buildx v0.16.2][2] (July 2024).
Given that those versions are long EOL and no longer supported, we
can probably remove the conditional code.
[1]: https://github.com/docker/buildx/releases/tag/v0.17.0
[2]: https://github.com/docker/buildx/releases/tag/v0.16.2
Signed-off-by: Sebastiaan van Stijn <github@gone.nl >
2025-10-14 08:02:58 +02:00
Sebastiaan van Stijn
0b5fb36eb5
build(deps): bump docker/buildx v0.29.1, moby/buildkit v0.25.1
...
full diff:
- https://github.com/docker/buildx/compare/v0.28.0...v0.29.1
- https://github.com/moby/buildkit/compare/v0.24.0...v0.25.1
Signed-off-by: Sebastiaan van Stijn <github@gone.nl >
2025-10-13 21:21:01 +02:00
Sebastiaan van Stijn
63920c4cc0
pkg/compose: align classic builder implementation with docker/cli
...
This aligns the implementation closer to the implementation in docker/cli,
with the refactor done in [cli@260f1db]; this removes some direct uses of
the github.com/docker/docker/builder/remotecontext/urlutil package, which
won't be included in the new Moby modules.
There's still some remaining uses in the `dockerFilePath` utility (which
may need to be updated to also account for remote contexts that are not
"git"), so possibly we can remove the use in that utility as well.
[cli@260f1db]: 260f1dbebb
Signed-off-by: Sebastiaan van Stijn <github@gone.nl >
2025-10-13 16:53:00 +02:00
Nicolas De Loof
a03f2562df
bake only interpolates ${*}
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-13 10:40:19 +02:00
dependabot[bot]
a07f2b8ded
build(deps): bump golang.org/x/sys from 0.36.0 to 0.37.0
...
Bumps [golang.org/x/sys](https://github.com/golang/sys ) from 0.36.0 to 0.37.0.
- [Commits](https://github.com/golang/sys/compare/v0.36.0...v0.37.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/sys
dependency-version: 0.37.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-10-09 11:35:31 +02:00
dependabot[bot]
f45a3ebcfd
build(deps): bump github.com/docker/cli
...
Bumps [github.com/docker/cli](https://github.com/docker/cli ) from 28.5.0+incompatible to 28.5.1+incompatible.
- [Commits](https://github.com/docker/cli/compare/v28.5.0...v28.5.1 )
---
updated-dependencies:
- dependency-name: github.com/docker/cli
dependency-version: 28.5.1+incompatible
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-10-09 11:35:14 +02:00
dependabot[bot]
7fec70b6c7
build(deps): bump github.com/docker/docker
...
Bumps [github.com/docker/docker](https://github.com/docker/docker ) from 28.5.0+incompatible to 28.5.1+incompatible.
- [Release notes](https://github.com/docker/docker/releases )
- [Commits](https://github.com/docker/docker/compare/v28.5.0...v28.5.1 )
---
updated-dependencies:
- dependency-name: github.com/docker/docker
dependency-version: 28.5.1+incompatible
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-10-09 11:34:52 +02:00
Kian Eliasi
ce463d50b2
Fix: set PWD only if not set
...
Signed-off-by: Kian Eliasi <kian.elbo@gmail.com >
2025-10-08 10:12:02 +02:00
Benedikt Radtke
fa7e85ed83
Write error to watcher error channel if Start() fails
...
Up's loop will notice globalCtx is done, and invoke watcher.Stop(). Stop() reads from the watcher error channel. If Start() does not write an error, Stop() will never finish.
Fixes https://github.com/docker/compose/issues/13262
Signed-off-by: Benedikt Radtke <benediktradtke@gmail.com >
2025-10-06 14:50:19 +02:00
dependabot[bot]
d9423f6872
build(deps): bump github.com/docker/cli
...
Bumps [github.com/docker/cli](https://github.com/docker/cli ) from 28.5.0-rc.1+incompatible to 28.5.0+incompatible.
- [Commits](https://github.com/docker/cli/compare/v28.5.0-rc.1...v28.5.0 )
---
updated-dependencies:
- dependency-name: github.com/docker/cli
dependency-version: 28.5.0+incompatible
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
v2.40.0
2025-10-03 11:32:15 +02:00
dependabot[bot]
5add90240d
build(deps): bump github.com/docker/docker
...
Bumps [github.com/docker/docker](https://github.com/docker/docker ) from 28.5.0-rc.1+incompatible to 28.5.0+incompatible.
- [Release notes](https://github.com/docker/docker/releases )
- [Commits](https://github.com/docker/docker/compare/v28.5.0-rc.1...v28.5.0 )
---
updated-dependencies:
- dependency-name: github.com/docker/docker
dependency-version: 28.5.0+incompatible
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-10-03 11:32:08 +02:00
Nicolas De Loof
07602f2070
publish Compose application as compose.yaml + images
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-03 10:59:57 +02:00
Nicolas De Loof
cf7e31f731
escape $ in bake.json as interpolation already has been managed by compose
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-10-03 09:25:35 +02:00
Nicolas De Loof
fa08127456
use containerd client for OCI operations
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-09-30 12:03:46 +02:00
Nicolas De Loof
4ee52ad168
pass bake secrets by env
...
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com >
2025-09-30 09:07:22 +02:00
Sebastiaan van Stijn
4a4776ec57
cmd/compose: fix minor linting issues
...
- inline variable that shadowed package-type
- don't use apiBuildOptions if an error was returned
Signed-off-by: Sebastiaan van Stijn <github@gone.nl >
2025-09-29 15:25:22 +02:00
Sebastiaan van Stijn
713de5bb9e
pkg/compose: explicitly map AuthConfig fields instead of a direct cast
...
Commit [cli@27b2797] forked the AuthConfig type from the API, and changed
existing code to do a direct cast / convert of the forked type to the API
type. This can cause issues if the API types diverges, such as the removal
of the Email field.
This patch explicitly maps each field to the corresponding API type, but
adds some TODOs, because various code-paths only included a subset of the
fields, which may be intentional for fields that were meant to be handled
on the daemon / registry-client only.
We should evaluate these conversions to make sure these fields should
be sent from the client or not (and possibly even removed from the API
type).
[cli@27b2797]: 27b2797f7d
Signed-off-by: Sebastiaan van Stijn <github@gone.nl >
2025-09-29 15:24:42 +02:00