Commit graph

44358 commits

Author SHA1 Message Date
Sebastiaan van Stijn
f3b2df7b0b
vendor: github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da
Un-pin this indirect dependency

full diff: eb0af217e5...f0300d1749

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 16:46:00 +02:00
Sebastiaan van Stijn
6b023b2eb6
vendor: github.com/prometheus/client_golang v1.12.1, procfs v0.7.3
full diff: https://github.com/prometheus/client_golang/compare/v1.6.0...v1.12.1
full diff: https://github.com/prometheus/procfs/compare/v0.0.11...v0.7.3

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 16:41:16 +02:00
Sebastiaan van Stijn
bd9412e36b
vendor: un-pin github.com/matttproud/golang_protobuf_extensions
It's an indirect dependency, and we were pinning it to use the latest tagged
release (which didn't have a go.mod yet). No code changes in the vendored files,
so let's skip the replace rule.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 16:41:14 +02:00
Sebastiaan van Stijn
f0647f33f5
vendor: go.opencensus.io v0.23.0
un-pinning the dependency

full diff: https://github.com/census-instrumentation/opencensus-go/compare/v0.22.3...v0.23.0

- replace gofmt with goimports
- Allow creating additional View universes
- Safely reject invalid-length span and trace ids
    - fix Panic when x-b3-spanid exceeds 16 characters
- Reduce allocations
- Remove call to time.Now() on worker thread when handling record reqs
- Delete views from measure ref when unregistering
- Allow custom view.Meters to export metrics for other Resources
- Initialize View Start Time During View Registration
- Record a Start Time Per Time Series within a View
- Made public traceparent/tracestate marshal/unmarshal
- Fix const labels with derived metrics
- Defer IDGenerator initialization until first use
- Allow replacing trace SDK
- Provide accessor to the span implementation
- Lock only when needed, remove duplicate code
- Update dependencies
- fix memory leak cause by the spanStore.(census-instrumentation/opencensus-go)
- Adds an exported function to flush interval reader
- Adding GC stats to runmetrics plugin

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 16:41:12 +02:00
Sebastiaan van Stijn
939d124731
vendor: github.com/hashicorp/go-multierror v1.1.1
un-pinning the dependency

full diff: https://github.com/hashicorp/go-multierror/compare/v1.0.0...v1.1.1

- add sync/errgroup like functionality
- Support Go 1.13 errors.As/Is/Unwrap functionality
- required go 1.13 or up
- Check if multierror is nil in WrappedErrors

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 16:41:10 +02:00
Sebastiaan van Stijn
917f620874
vendor: un-pin github.com/coreos/systemd
It's not used as a direct dependency, and not vendored.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 13:37:07 +02:00
Sebastiaan van Stijn
6488695a2c
vendor: un-pin github.com/coreos/pkg
It's not used as a direct dependency, and not vendored.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 13:33:02 +02:00
Akihiro Suda
8a147a8c80
Merge pull request #43745 from thaJeztah/bump_moby_sys
vendor: github.com/moby/sys/mountinfo v0.6.2, mount v0.3.3
2022-06-29 13:43:50 +09:00
Youfu Zhang
f70a9788c5 drivers/ipvlan: add ipvlan_flag option, support l3s ipvlan_mode
Signed-off-by: Youfu Zhang <zhangyoufu@gmail.com>
2022-06-28 19:28:49 +08:00
Tianon Gravi
b8b1e16fed
Merge pull request #43748 from thaJeztah/fix_typo
fix typo (cluser -> cluster)
2022-06-27 16:10:28 -07:00
Tianon Gravi
cf8b057100
Merge pull request #43747 from thaJeztah/fix_container_wait
api: POST /containers/{id}/wait: fix validation for "condition" parameter
2022-06-27 09:15:57 -07:00
Sebastiaan van Stijn
db977355b0
fix typo (cluser -> cluster)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-27 15:12:14 +02:00
Sebastiaan van Stijn
0bce64f08d
api: POST /containers/{id}/wait: fix validation for "condition" parameter
commit 737e8c6ab8 added validation for the wait
condition parameter, however, the default ("not-running") option was not part
of the list of valid options, resulting in a regression if the default value
was explicitly passed;

    docker scan --accept-license --version
    Error response from daemon: invalid condition: "not-running"

This patch adds the missing option, and adds a test to verify.

With this patch;

    make BIND_DIR=. DOCKER_GRAPHDRIVER=vfs TEST_FILTER=TestWaitConditions test-integration
    ...
    --- PASS: TestWaitConditions (0.04s)
    --- PASS: TestWaitConditions/removed (1.79s)
    --- PASS: TestWaitConditions/default (1.91s)
    --- PASS: TestWaitConditions/next-exit (1.97s)
    --- PASS: TestWaitConditions/not-running (1.99s)
    PASS

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-27 14:45:32 +02:00
Sebastiaan van Stijn
cf543a0bd5
vendor: github.com/moby/sys/mount v0.3.3
full diff: https://github.com/moby/sys/compare/mount/v0.3.1...v0.3.3

- bump x/sys/unix
- ci: add go mod tidy check
- mount: bump mountinfo to v0.6.2

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-27 10:27:51 +02:00
Sebastiaan van Stijn
4178caade6
vendor: github.com/moby/sys/mountinfo v0.6.2
full diff: https://github.com/moby/sys/compare/mountinfo/v0.6.0...mountinfo/v0.6.2

- update golang.org/x/sys v0.0.0-20220412211240-33da011f77ad
- mountinfo: BSDs no longer need cgo nor reflect
- mountinfo: update doc to use fs.ErrNotExist
- Bump x/sys/unix

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-27 10:26:53 +02:00
Sebastiaan van Stijn
53aefba7f3
vendor: golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a
full diff: 33da011f77...bc2c85ada1

notable changes;

- unix: use ByteSliceFromString in (*Ifreq).Name
- unix: update openbsd Statfs_t fields

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-27 10:21:35 +02:00
Sebastiaan van Stijn
4eb1c5bd52
Merge pull request #43622 from vvoland/3554-exec-size
container/exec: Support ConsoleSize
2022-06-24 14:31:39 +02:00
Erik Sipsma
88916949ef
build: force unlazy of refs by calling extract
Signed-off-by: Erik Sipsma <erik@sipsma.dev>
2022-06-24 11:54:41 +02:00
Paweł Gronowski
56a20dbc19 container/exec: Support ConsoleSize
Now client have the possibility to set the console size of the executed
process immediately at the creation. This makes a difference for example
when executing commands that output some kind of text user interface
which is bounded by the console dimensions.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2022-06-24 11:54:25 +02:00
Tianon Gravi
9c4987ee6b
Merge pull request #43731 from thaJeztah/minor_error_and_logging_improvements
minor error and logging improvements
2022-06-23 11:29:52 -07:00
Sebastiaan van Stijn
5f8ff7245c
Merge pull request #43741 from thaJeztah/fresh_curators
Add new people to the curators list
2022-06-23 20:23:13 +02:00
Sebastiaan van Stijn
04c51cba84
Add new people to the curators list
This adds Bjorn, Cory, Nicolas and Djordje to the list of curators
to enable them to help out with triage and other tasks.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-23 16:14:04 +02:00
Sebastiaan van Stijn
a347f79711
Merge pull request #43718 from s4ke/feature/bump-netlink#main
Feature/bump netlink#main
2022-06-23 00:03:27 +02:00
Sebastiaan van Stijn
58e1f8d0b5
Merge pull request #43682 from crazy-max/split-test-suites
ci(integration-cli): split test suites in a matrix
2022-06-22 23:22:43 +02:00
Sebastiaan van Stijn
0861539571
Merge pull request #43680 from rumpl/move-image-inspect
Move the inspect code away from the image service
2022-06-22 20:12:15 +02:00
Nicolas De Loof
33121d3d45
introduce Containerd-snapshotter feature flag
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2022-06-22 15:58:21 +02:00
Djordje Lukic
b4ffe3a9fb Move the inspect code away from the image service
The LoopkupImage method is only used by the inspect image route and
returns an api/type struct. The depenency to api/types of the
daemon/images package is wrong, the daemon doesn't need to know about
the api types.

Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2022-06-22 15:08:55 +02:00
Sebastiaan van Stijn
c17a566b0d
Merge pull request #43733 from thaJeztah/fix_flaky_TestRunContainerWithRmFlag
fix flaky TestRunContainerWithRmFlag tests (take 2)
2022-06-22 13:16:31 +02:00
Sebastiaan van Stijn
f1c111b176
fix flaky TestRunContainerWithRmFlag tests (take 2)
This is a new attempt on making these tests less flaky. The previous attempt in
commit 585c147b7a assumed that the test was failing
if the test-daemon still had unrelated containers present from other tests, but
it appears that the actual reason for the tests to be flaky may be that the `--rm`
option was moved to the daemon side and an asynchronous operation. As a result,
the container may not yet be removed once the `docker run` completes, which happens
frequently on Windows (likely be- cause removing containers is somewhat slower
on Windows).

This patch adds a retry-loop (using `poll.WaitOn()`) to wait for the container
to be removed.

    make DOCKER_GRAPHDRIVER=vfs TEST_FILTER='TestRunContainerWithRmFlag' test-integration

    INFO: Testing against a local daemon
    === RUN   TestDockerSuite
    === RUN   TestDockerSuite/TestRunContainerWithRmFlagCannotStartContainer
    === RUN   TestDockerSuite/TestRunContainerWithRmFlagExitCodeNotEqualToZero
    --- PASS: TestDockerSuite (1.00s)
    --- PASS: TestDockerSuite/TestRunContainerWithRmFlagCannotStartContainer (0.50s)
    --- PASS: TestDockerSuite/TestRunContainerWithRmFlagExitCodeNotEqualToZero (0.49s)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-21 16:24:52 +02:00
Sebastiaan van Stijn
068ab51442
layer: layerstore.Cleanup(): improve some logging
Improve consistency for the logs, and remove a redundant log:

    time="2022-06-07T15:37:24.418470152Z" level=debug msg="found 0 orphan layers"

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-21 13:34:03 +02:00
Sebastiaan van Stijn
c2e32c144c
volumes/service: NewStore: add more context to error
Adding some more context to errors to debug a failure in TestDaemonEvents

    === RUN   TestDockerDaemonSuite/TestDaemonEvents
    docker_cli_events_unix_test.go:399: [dd34383dd9b63] failed to start daemon with arguments [--data-root /go/src/github.com/docker/docker/bundles/test-integration/TestDockerDaemonSuite/TestDaemonEvents/dd34383dd9b63/root --exec-root /tmp/dxr/dd34383dd9b63 --pidfile /go/src/github.com/docker/docker/bundles/test-integration/TestDockerDaemonSuite/TestDaemonEvents/dd34383dd9b63/docker.pid --userland-proxy=true --containerd-namespace dd34383dd9b63 --containerd-plugins-namespace dd34383dd9b63p --containerd /var/run/docker/containerd/containerd.sock --host unix:///tmp/docker-integration/dd34383dd9b63.sock --debug --storage-driver overlay2 --config-file=test.json] : [dd34383dd9b63] daemon exited during startup: exit status 1
    check_test.go:307: [dd34383dd9b63] daemon is not started
    --- FAIL: TestDockerDaemonSuite/TestDaemonEvents (1.59s)

daemon logs:

    level=info  msg="Starting up"
    level=debug msg="Listener created for HTTP on unix (/tmp/docker-integration/dd34383dd9b63.sock)"
    level=debug msg="Golang's threads limit set to 55530"
    level=info  msg="[core] original dial target is: \"unix:///var/run/docker/containerd/containerd.sock\"" module=grpc
    level=info  msg="[core] parsed dial target is: {Scheme:unix Authority: Endpoint:var/run/docker/containerd/containerd.sock URL:{Scheme:unix Opaque: User: Host: Path:/var/run/docker/containerd/containerd.sock RawPath: ForceQuery:false RawQuery: Fragment: RawFragment:}}" module=grpc
    level=info  msg="[core] Channel authority set to \"localhost\"" module=grpc
    level=info  msg="[core] ccResolverWrapper: sending update to cc: {[{/var/run/docker/containerd/containerd.sock  0xc000010898 <nil> 0 <nil>}] <nil> <nil>}" module=grpc
    level=info  msg="[core] ClientConn switching balancer to \"pick_first\"" module=grpc
    level=info  msg="[core] Channel switches to new LB policy \"pick_first\"" module=grpc
    level=info  msg="[core] Subchannel Connectivity change to CONNECTING" module=grpc
    level=info  msg="[core] Subchannel picks a new address \"/var/run/docker/containerd/containerd.sock\" to connect" module=grpc
    level=debug msg="metrics API listening on /var/run/docker/metrics.sock"
    level=info  msg="[core] Channel Connectivity change to CONNECTING" module=grpc
    level=info  msg="[core] Subchannel Connectivity change to READY" module=grpc
    level=info  msg="[core] Channel Connectivity change to READY" module=grpc
    level=info  msg="[core] original dial target is: \"unix:///var/run/docker/containerd/containerd.sock\"" module=grpc
    level=info  msg="[core] parsed dial target is: {Scheme:unix Authority: Endpoint:var/run/docker/containerd/containerd.sock URL:{Scheme:unix Opaque: User: Host: Path:/var/run/docker/containerd/containerd.sock RawPath: ForceQuery:false RawQuery: Fragment: RawFragment:}}" module=grpc
    level=info  msg="[core] Channel authority set to \"localhost\"" module=grpc
    level=info  msg="[core] ccResolverWrapper: sending update to cc: {[{/var/run/docker/containerd/containerd.sock  0xc00045ece8 <nil> 0 <nil>}] <nil> <nil>}" module=grpc
    level=info  msg="[core] ClientConn switching balancer to \"pick_first\"" module=grpc
    level=info  msg="[core] Channel switches to new LB policy \"pick_first\"" module=grpc
    level=info  msg="[core] Subchannel Connectivity change to CONNECTING" module=grpc
    level=info  msg="[core] Subchannel picks a new address \"/var/run/docker/containerd/containerd.sock\" to connect" module=grpc
    level=info  msg="[core] Channel Connectivity change to CONNECTING" module=grpc
    level=info  msg="[core] Subchannel Connectivity change to READY" module=grpc
    level=info  msg="[core] Channel Connectivity change to READY" module=grpc
    level=debug msg="Using default logging driver json-file"
    level=info  msg="[graphdriver] trying configured driver: overlay2"
    level=debug msg="processing event stream" module=libcontainerd namespace=plugins.moby
    level=debug msg="successfully detected metacopy status" storage-driver=overlay2 usingMetacopy=false
    level=debug msg="backingFs=extfs, projectQuotaSupported=false, usingMetacopy=false, indexOff=\"index=off,\", userxattr=\"\"" storage-driver=overlay2
    level=debug msg="Initialized graph driver overlay2"
    level=debug msg="No quota support for local volumes in /var/lib/docker/volumes: Filesystem does not support, or has not enabled quotas"
    level=info  msg="[core] Channel Connectivity change to SHUTDOWN" module=grpc
    level=info  msg="[core] Subchannel Connectivity change to SHUTDOWN" module=grpc
    level=debug msg="Cleaning up old mountid : start."
    failed to start daemon: error while opening volume store metadata database: timeout

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-21 13:34:00 +02:00
CrazyMax
15716fc9ae
ci(windows): test report summary output
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-06-17 10:59:05 +02:00
CrazyMax
ca8b659a06
ci(integration-cli): move integration-cli run to make script
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-06-17 10:59:05 +02:00
CrazyMax
1887d85e21
ci(integration-cli): dynamically split tests in matrix
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-06-17 10:59:04 +02:00
CrazyMax
0e6a1b9596
integration-cli: split DockerSuite into subsequent build suites
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-06-17 10:59:04 +02:00
CrazyMax
7ed823ead9
validation: temporarily allows changes in integration-cli
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-06-17 10:58:55 +02:00
Martin Braun
5edfd6d081 bump netlink library
bump netlink to 1.2.1
change usages of netlink handle .Delete() to Close()
remove superfluous replace in vendor.mod
make requires of github.com/Azure/go-ansiterm direct

Signed-off-by: Martin Braun <braun@neuroforge.de>
2022-06-16 22:25:33 +02:00
Sebastiaan van Stijn
74286cba8c
Merge pull request #43669 from vvoland/test-container-logs2
test: Add tests for logging
2022-06-16 13:00:31 +02:00
Sebastiaan van Stijn
799df725b7
Merge pull request #43715 from corhere/install-crun
Dockerfile: add crun to dev image
2022-06-16 12:44:29 +02:00
Cory Snider
cf6058941c Dockerfile: add crun to dev image
Signed-off-by: Cory Snider <csnider@mirantis.com>
2022-06-10 17:25:10 -04:00
Paweł Gronowski
2ec3e14c0f test: Add tests for logging
1. Add integration tests for the ContainerLogs API call
Each test handle a distinct case of ContainerLogs output.
- Muxed stream, when container is started without tty
- Single stream, when container is started with tty

2. Add unit test for LogReader suite that tests concurrent logging
It checks that there are no race conditions when logging concurrently
from multiple goroutines.

Co-authored-by: Cory Snider <csnider@mirantis.com>
Signed-off-by: Cory Snider <csnider@mirantis.com>
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2022-06-10 09:26:17 +02:00
Sebastiaan van Stijn
20d6b5c1bd
Merge pull request #43702 from thaJeztah/daemon_event_simplify
daemon: LogDaemonEventWithAttributes: don't call SystemInfo()
2022-06-08 02:25:23 +02:00
Sebastiaan van Stijn
9959eceb9a
Merge pull request #42626 from mfeit-internet2/small-ipv4-networks
Support small ipv4 networks
2022-06-07 22:15:19 +02:00
Sebastiaan van Stijn
3b94561db2
Merge pull request #43662 from vvoland/fix-logs-regression2
daemon/logger: Driver-scope buffer pools, bigger buffers
2022-06-07 22:04:14 +02:00
Sebastiaan van Stijn
f90056a79d
daemon: LogDaemonEventWithAttributes: don't call SystemInfo()
This function was calling SystemInfo() only to get the daemon's name
to add to the event that's generated.

SystemInfo() is quite heavy, and no info other than the Name was used.
The name returned is just looking up the hostname, so instead, call
`hostName()` directly.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-07 22:01:12 +02:00
Sebastiaan van Stijn
237c30dacf
Merge pull request #43704 from thaJeztah/codecov_report_only
codecov: disable patch status
2022-06-07 20:21:07 +02:00
Sebastiaan van Stijn
9ccedde970
Merge pull request #43695 from AkihiroSuda/remove-io.containerd.runtime.v1.linux
daemon: remove support for deprecated `io.containerd.runtime.v1.linux`
2022-06-07 17:29:54 +02:00
Sebastiaan van Stijn
b2795564dc
codecov: disable "patch" status
CodeCov has been very hit-and-miss recently; it looks like we
may need some additional settings to make it compare with the
correct parent commit (perhaps it doesn't work well with rebasing),

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-07 17:24:46 +02:00
Sebastiaan van Stijn
aca813e135
Merge pull request #43700 from thaJeztah/update_containerd_1.6.6
update containerd binary to v1.6.6
2022-06-07 01:50:53 +02:00
Tianon Gravi
9948e1425d
Merge pull request #43699 from thaJeztah/bump_containerd_1.6.6
vendor: github.com/containerd/containerd v1.6.6
2022-06-06 16:04:46 -07:00