Commit graph

43525 commits

Author SHA1 Message Date
Sebastiaan van Stijn
79ea1b16b1
distribution/xfer: un-export DoFunc type
It's only used internally and by non-exported functions, so it doesn't
have to be exported.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:42 +01:00
Sebastiaan van Stijn
4d6c6a5000
distribution/xfer: smaller interface, rename to DigestRegisterer
All uses of this interface already accept a DownloadDescriptor; keeping the
interface small to allow this functionality to be used by other download-descriptors,
while still being able to check for the actual functionality (to be able to register
a digest).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:40 +01:00
Sebastiaan van Stijn
047e032461
distribution/xfer: define DownloadOption type
This is mostly for documentation purposes; defining a type makes
the option(s) show up grouped on pkg.go.dev (and in godoc).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:38 +01:00
Sebastiaan van Stijn
69b0913e1f
distribution/xfer: add TODO for return error on Registered()
There's currently four implementations in our code: one in distribution, two in
BuildKit-related code, and one "mock" for testing:

- 65b8bcc321/builder/builder-next/worker/worker.go (L452-L455)
- 65b8bcc321/builder/builder-next/adapters/containerimage/pull.go (L648-L651)
- 65b8bcc321/distribution/pull_v2.go (L318-L321)
- 65b8bcc321/distribution/xfer/download_test.go (L186-L188)

All of these call a metadata-service to register the DiffID, and all of those
may return an error, which currently gets ignored.

We should consider changing the signature to return possible errors, so that
the callsite can decide how to handle them (which could be just "log" the error
or handle them in other ways).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:36 +01:00
Sebastiaan van Stijn
3309ea9419
distribution/xfer: slightly more idomatic type assertion
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:35 +01:00
Sebastiaan van Stijn
4c7dc9806c
distribution/xfer: un-export transfer interface accessors
This interface is internal to the package, so there's no need to export
it's methods.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:33 +01:00
Sebastiaan van Stijn
849d8c2d02
distribution/xfer: un-export Watcher
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:31 +01:00
Sebastiaan van Stijn
96a750aab4
distribution/xfer: un-export Transfer interface
The only implementations and uses are internal to this package.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:29 +01:00
Sebastiaan van Stijn
765844e419
distribution/xfer: un-export NewTransfer()
This is also only used internally, so no need to export.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:28 +01:00
Sebastiaan van Stijn
587c474b57
distribution/xfer: use "transferManager" in godoc
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:26 +01:00
Sebastiaan van Stijn
874b11495b
distribution/xfer: un-export transferManager.setConcurrency() and .transfer()
They're only used within the package itself, so no need to have them public.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:24 +01:00
Sebastiaan van Stijn
d746a836fc
distribution/xfer: remove TransferManager interface, un-export newTransferManager
The `TransferManager` interface only had a single implementation, and neither
`LayerDownloadManager`, nor `LayerUploadManager` currently had an option to
provide a custom implementation, so we can un-export this.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:22 +01:00
Sebastiaan van Stijn
cf31aa0fa0
distribution/xfer: fix some nits in tests
- use const instead of a variable
- remove unneeded type-conversion
- use keys in literals

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-18 16:58:19 +01:00
Akihiro Suda
54d35c071d
Merge pull request #43130 from thaJeztah/daemon_cache_sysinfo
daemon: load and cache sysInfo on initialization
2022-02-18 13:46:15 +09:00
Sebastiaan van Stijn
32e5fe5099
Merge pull request #43182 from thaJeztah/layer_remove_unused_error
layer: remove unused error return from .Size() and .DiffSize()
2022-02-17 20:51:45 +01:00
Brian Goff
047d58f007
Merge pull request #43187 from thaJeztah/remove_lcow_checks
Remove various leftover LCOW checks
2022-02-17 11:22:19 -08:00
Brian Goff
81db56f0a9
Merge pull request #43253 from thaJeztah/remove_kernel_version_check
daemon: remove kernel version check and DOCKER_NOWARN_KERNEL_VERSION
2022-02-17 11:17:15 -08:00
Tianon Gravi
d666358dcd
Merge pull request #43170 from thaJeztah/api_docs_fixes
docs: update API v1.41 and v1.40 docs with fixes from api/swagger
2022-02-17 11:09:51 -08:00
Sebastiaan van Stijn
dd4cf4b641
daemon: remove some unused stubs on Windows
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-17 17:57:51 +01:00
Sebastiaan van Stijn
1240f8b41d
daemon: remove kernel version check and DOCKER_NOWARN_KERNEL_VERSION
All regular, non-EOL Linux distros now come with more recent kernels
out of the box. There may still be users trying to run on kernel 3.10
or older (some embedded systems, e.g.), but those should be a rare
exception, which we don't have to take into account.

This patch removes the kernel version check on Linux, and the corresponding
DOCKER_NOWARN_KERNEL_VERSION environment that was there to skip this
check.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-17 17:47:22 +01:00
Tianon Gravi
c94596abc9
Merge pull request #43142 from lebauce/fix-panic-on-empty-quoted-strings
Do not panic on empty quoted string argument
2022-02-16 11:54:34 -08:00
Akihiro Suda
dca8689cd1
Merge pull request #43240 from thaJeztah/remove_more_replaces
vendor.mod: google/go-cmp v0.5.5, golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c, containerd v1.5.9
2022-02-16 13:17:58 +09:00
Akihiro Suda
bdaf94c28a
Merge pull request #43245 from thaJeztah/info_counters_rwmutex
daemon: use RWMutex for stateCounter
2022-02-16 13:17:31 +09:00
Akihiro Suda
12a5f54ad3
Merge pull request #43241 from thaJeztah/update_moby_sys_fsnotify
vendor: fsnotify v1.5.1, moby/sys/mountinfo v0.6.0, moby/sys/signal v0.7.0
2022-02-16 13:17:13 +09:00
Akihiro Suda
c41b752e70
Merge pull request #43242 from thaJeztah/update_go_1.17.7
Update Go to 1.17.7
2022-02-16 12:03:01 +09:00
Tianon Gravi
19836a0c54
Merge pull request #43238 from thaJeztah/less_sprintfs
remove some redundant fmt.Sprintf()'s
2022-02-15 15:17:35 -08:00
Sebastiaan van Stijn
699174347c
daemon: use RWMutex for stateCounter
Use an RWMutex to allow concurrent reads of these counters

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 18:04:18 +01:00
Sebastiaan van Stijn
cad6c8f7f1
Update Go to 1.17.7
Includes security fixes for crypto/elliptic (CVE-2022-23806), math/big (CVE-2022-23772),
and cmd/go (CVE-2022-23773).

go1.17.7 (released 2022-02-10) includes security fixes to the crypto/elliptic,
math/big packages and to the go command, as well as bug fixes to the compiler,
linker, runtime, the go command, and the debug/macho, debug/pe, and net/http/httptest
packages. See the Go 1.17.7 milestone on our issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.17.7+label%3ACherryPickApproved

full diff: https://github.com/golang/go/compare/go1.17.6...go1.17.7

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 16:17:43 +01:00
Sebastiaan van Stijn
2ac898c232
vendor: github.com/moby/sys/signal v0.7.0
full diff: https://github.com/moby/sys/compare/signal/v0.6.0...signal/v0.7.0

- add LCOW supported signals to windows signal map

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 15:58:05 +01:00
Sebastiaan van Stijn
9c2646e486
vendor: github.com/moby/sys/mountinfo v0.6.0
full diff: https://github.com/moby/sys/compare/mountinfo/v0.5.0...mountinfo/v0.6.0

- Add MountedFast (Note: most users should keep using Mounted, which already
  incorporates all optimizations from MountedFast)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 15:57:30 +01:00
Sebastiaan van Stijn
c2b33f8684
vendor: github.com/fsnotify/fsnotify v1.5.1
full diff: https://github.com/fsnotify/fsnotify/compare/v1.4.9...v1.5.1

Relevant changes:

- Fix unsafe pointer conversion
- Drop support/testing for Go 1.11 and earlier
- Update x/sys to latest
- add //go:build lines
- add go 1.17 to test matrix

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 15:56:35 +01:00
Sebastiaan van Stijn
3776fe6256
vendor: github.com/containerd/containerd v1.5.9
no significant changes in vendored code (we already updated image-spec to v1.0.2)

full diff: https://github.com/containerd/containerd/compare/v1.5.8...v1.5.9

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 15:53:30 +01:00
Sebastiaan van Stijn
3ddf696a2d
vendor: golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c
Remove the replace rule, and use the version as specified by (indirect) dependencies:

full diff: bf48bf16ab...f6687ab280

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 15:43:04 +01:00
Sebastiaan van Stijn
42d2f0bbc7
vendor: github.com/google/go-cmp v0.5.5
Remove the replace rule, and use the version as specified by (indirect) dependencies:

full diff: https://github.com/google/go-cmp/compare/v0.2.0...v0.5.5

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 15:39:33 +01:00
Sebastiaan van Stijn
b9c8eca468
libnetwork/networkdb: remove some redundant fmt.Sprintf()'s
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 12:56:23 +01:00
Sebastiaan van Stijn
abaf4b25d7
integration-cli: remove some redundant fmt.Sprintf()'s
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 12:50:21 +01:00
Sebastiaan van Stijn
7e06add3c8
testutil/daemon: remove redundant fmt.Sprintf()'s
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-15 12:49:35 +01:00
Akihiro Suda
67b4b032f3
Merge pull request #43236 from thaJeztah/less_replaces
vendor.mod: reduce number of `replace` rules: update some dependencies
2022-02-15 17:59:39 +09:00
Sebastiaan van Stijn
fada92c393
vendor: github.com/prometheus/common v0.10.0
Only a single change affecting the vendored code:

- Support 0 for model.Duration

full diff: https://github.com/prometheus/common/compare/v0.9.1...v0.10.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 21:32:12 +01:00
Sebastiaan van Stijn
147752ee05
vendor: github.com/grpc-ecosystem/go-grpc-middleware v1.3.0
removing the replace rule; no actual code changes in the vendored files (only
some changes in docs).

full diff: https://github.com/grpc-ecosystem/go-grpc-middleware/compare/v1.2.0...v1.3.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 21:22:28 +01:00
Sebastiaan van Stijn
f9f11050cc
vendor.mod: don't replace github.com/stretchr/testify
It's not vendored, so no changes in vendored code

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 19:33:04 +01:00
Sebastiaan van Stijn
738bd5a90e
vendor.mod: don't replace github.com/containerd/containerd
Looks like the `replace` rule was also matching what we're already vendoring,
so we can remove it:

    github.com/containerd/containerd v1.5.8 => github.com/containerd/containerd v1.5.8

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 18:51:39 +01:00
Tianon Gravi
469749947b
Merge pull request #43181 from thaJeztah/image_service_debuglogs
daemon/images.NewImageService() don't print debug logs
2022-02-14 09:45:40 -08:00
Sebastiaan van Stijn
be4144c153
vendor.mod: don't replace gopkg.in/fsnotify.v1
It's not vendored, so no changes in vendored code

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 16:33:17 +01:00
Sebastiaan van Stijn
9f7280f2d2
vendor: github.com/google/uuid v1.3.0
Remove the replace rule, and use the version as specified by (indirect) dependencies:

full diff: https://github.com/google/uuid/compare/v1.1.1...v1.3.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 16:27:47 +01:00
Sebastiaan van Stijn
24a7b61800
vendor.mod: don't replace github.com/hpcloud/tail
It's not vendored, so no changes in vendored code

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 16:08:37 +01:00
Sebastiaan van Stijn
c1fa01deb8
vendor.mod: don't replace github.com/onsi/ginkgo, github.com/onsi/gomega
They're not vendored, so no changes in the vendored code.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 16:06:41 +01:00
Sebastiaan van Stijn
40bf5d414e
vendor: github.com/pelletier/go-toml v1.9.1
Remove the replace rule, and use the version as specified by (indirect) dependencies:

full diff: https://github.com/pelletier/go-toml/compare/v1.8.1...v1.9.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 16:02:05 +01:00
Sebastiaan van Stijn
8f6d58915d
vendor: github.com/klauspost/compress v1.12.3
Remove the replace rule, and use the version as specified by (indirect) dependencies:

full diff: https://github.com/klauspost/compress/compare/v1.11.13...v1.12.3

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 15:58:01 +01:00
Sebastiaan van Stijn
40b8495735
vendor: go.etcd.io/bbolt v1.3.6
Remove the replace rule, and use the version as specified by (indirect) dependencies:

full diff: https://github.com/etcd-io/bbolt/compare/v1.3.5...v1.3.6

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-02-14 15:54:20 +01:00