Commit graph

44405 commits

Author SHA1 Message Date
Sebastiaan van Stijn
aca80d1cda
libnetwork: ipvlan: reduce use of const for driver name
Inlining the string makes the code more grep'able; renaming the
const to "driverName" to reflect the remaining uses of it.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:49 +02:00
Sebastiaan van Stijn
dddb4d25d2
libnetwork: macvlan: cleanup parseNetworkGenericOptions
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:47 +02:00
Sebastiaan van Stijn
1992190162
libnetwork: macvlan: make configuration.fromOptions a constructor
This was effectively a constructor, but through some indirection; make it a
regular function, which is a bit more idiomatic.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:46 +02:00
Sebastiaan van Stijn
99bde59229
libnetwork: ipvlan: cleanup parseNetworkGenericOptions
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:44 +02:00
Sebastiaan van Stijn
1a1a885423
libnetwork: ipvlan: make configuration.fromOptions a constructor
This was effectively a constructor, but through some indirection; make it a
regular function, which is a bit more idiomatic.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:42 +02:00
Sebastiaan van Stijn
4e39cdd9bb
libnetwork: ipvlan: move validation into parseNetworkOptions()
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:41 +02:00
Sebastiaan van Stijn
9f0cb20d9f
libnetwork: macvlan: move validation into parseNetworkOptions()
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:39 +02:00
Sebastiaan van Stijn
b768d69c04
libnetwork: macvlan: processIPAM(): simplify
Remove redundant checks and intermediate variables.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:37 +02:00
Sebastiaan van Stijn
5d13b38479
libnetwork: macvlan: processIPAM(): remove unused arg and error return
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:36 +02:00
Sebastiaan van Stijn
798021af9f
libnetwork: macvlan: set network ID as part of parseNetworkOptions
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:33 +02:00
Sebastiaan van Stijn
35cba9b1c9
libnetwork: ipvlan: processIPAM(): simplify
Remove redundant checks and intermediate variables.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:32 +02:00
Sebastiaan van Stijn
8d067bbdb4
libnetwork: ipvlan: processIPAM(): remove unused arg and error return
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:30 +02:00
Sebastiaan van Stijn
a893540b66
libnetwork: ipvlan: set network ID as part of parseNetworkOptions
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:28 +02:00
Sebastiaan van Stijn
afeb4c7a6e
libnetwork: macvlan: use single ipSubnet type
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:27 +02:00
Sebastiaan van Stijn
d3e3d43482
libnetwork: ipvlan: use single ipSubnet type
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:25 +02:00
Sebastiaan van Stijn
9fba1514d2
libnetwork: macvlan: clean up some consts
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:23 +02:00
Sebastiaan van Stijn
aec4853498
libnetwork: ipvlan: clean up some consts
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-07-01 11:44:17 +02:00
Brian Goff
3e7e81b68f
Merge pull request #42542 from zhangyoufu/libnetwork-ipvlan-enhance
drivers/ipvlan: add ipvlan_flag option, support l3s ipvlan_mode
2022-06-30 13:13:28 -07:00
Sebastiaan van Stijn
3cfa12eea8
Merge pull request #43754 from dperny/update-cluster-volumes-docs
Add more detail to cluster volumes docs
2022-06-30 21:22:03 +02:00
Phil Sphicas
66f14e4ae9 Fix AppArmor profile docker-default /proc/sys rule
The current docker-default AppArmor profile intends to block write
access to everything in `/proc`, except for `/proc/<pid>` and
`/proc/sys/kernel/shm*`.

Currently the rules block access to everything in `/proc/sys`, and do
not successfully allow access to `/proc/sys/kernel/shm*`. Specifically,
a path like /proc/sys/kernel/shmmax matches this part of the pattern:

    deny @{PROC}/{[^1-9][^0-9][^0-9][^0-9]*     }/** w,
         /proc  / s     y     s     /     kernel /shmmax

This patch updates the rule so that it works as intended.

Closes #39791

Signed-off-by: Phil Sphicas <phil.sphicas@att.com>
2022-06-30 21:12:58 +02:00
Sebastiaan van Stijn
cceead243e
Merge pull request #43757 from thaJeztah/align_containerd_versions
Dockerfile: use consistent format for CONTAINERD_VERSION
2022-06-30 21:07:59 +02:00
Brian Goff
54fc2812e0
Merge pull request #42155 from Snorch/integration-cli-fix-race-in-TestServiceLogsFollow
integration-cli: Fix race in TestServiceLogsFollow test case
2022-06-30 11:39:32 -07:00
Sebastiaan van Stijn
df97b9c663
Merge pull request #43759 from vvoland/labels-regression
project: Add label kind/regression
2022-06-30 20:38:09 +02:00
Paweł Gronowski
3a3a0cb54e project: Add label kind/regression
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2022-06-30 15:08:02 +02:00
Sebastiaan van Stijn
4e632a13c3
Dockerfile: use consistent format for CONTAINERD_VERSION
The Windows Dockerfile did not use a "v" prefix, whereas the
hack/dockerfile/install/containerd.installer did. While we're
not overriding these versions currently through build-args, doing
so would result in one of them being incorrect.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-30 14:28:37 +02:00
Sebastiaan van Stijn
1ed7999cb0
Merge pull request #43752 from thaJeztah/less_replaces
vendor: reduce replace rules, and update some dependencies
2022-06-30 13:42:10 +02:00
Sebastiaan van Stijn
90fce781d9
Merge pull request #43732 from thaJeztah/daemon_fix_hosts_validation_step1c1
daemon: refactor config loading
2022-06-30 01:15:30 +02:00
Sebastiaan van Stijn
6cd0171868
Merge pull request #43744 from crazy-max/fix-copy-link
build: force unlazy of refs by calling extract
2022-06-29 20:29:50 +02:00
Sebastiaan van Stijn
1f187e640c
daemon/config: use more assertions in tests
Removes some custom handling, some of which were giving the wrong
error on failure ("expected no error" when we were checking for an
error).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:59:23 +02:00
Sebastiaan van Stijn
10e42f599a
daemon/config: TestUnixValidateConfigurationErrors: use subtests
Use sub-tests and make sure we get the expected error

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:59:21 +02:00
Sebastiaan van Stijn
751222d907
daemon/config: verify that flags were set correctly in tests
To prevent (e.g.) introducing a typo in the flag-name and invalidating
the tests because of that.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:59:20 +02:00
Sebastiaan van Stijn
f73aadb230
daemon/config: New(): set more defaults
Set the defaults when constructing the config, instead of setting them
indirectly through the command-line flags.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:59:18 +02:00
Sebastiaan van Stijn
a0d0db126c
daemon/config: set default MTU when initializing config
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:59:16 +02:00
Sebastiaan van Stijn
62f71c4505
daemon/config: fix TestDaemonConfigurationMerge
This test was validating that the config file would not overwrite the
log-opt, but the test did not set up the flags correctly; as the flags
were not marked as "changed", it would not detect a conflict between
the config-file and daemon-flags.

This patch:

- removes the incorrect fields from the JSON file
- initializes the Config using config.New(), so that any defaults are also set
- sets flag values by actually setting them through the flags

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:59:14 +02:00
Sebastiaan van Stijn
9b39cab510
daemon/config: improve some tests
- TestReloadWithDuplicateLabels() also check value
- TestReloadDefaultConfigNotExist, TestReloadBadDefaultConfig,
  TestReloadWithConflictingLabels: verify that config is not
  reloaded.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:59:08 +02:00
Sebastiaan van Stijn
f8231c62f4
daemon/config: Validate() also validate default MTU
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:55:08 +02:00
Sebastiaan van Stijn
fce7ebdaa5
cmd/dockerd: loadDaemonCliConfig() safeguard for unparsed flags
This function depends on flags having been parsed before it's used;
add a safety-net in case this function would be called before that.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:55:06 +02:00
Sebastiaan van Stijn
0281f50efa
cmd/dockerd: move setting defaults to loadDaemonCliConfig()
Move changes to follow, but this moves the code to a more logical place.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:55:05 +02:00
Sebastiaan van Stijn
717a503590
api: add Hosts to API Config
This makes the API configuration more self-contained.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:55:03 +02:00
Sebastiaan van Stijn
fee8a6a5c4
cmd/dockerd: make newAPIServerConfig() more idiomatic
Construct the TLSConfig if needed, before constructing and returning the whole config.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:55:01 +02:00
Sebastiaan van Stijn
b053376741
cmd/dockerd: reserve port before creating sockets/listeners
This prevents creating a socket and touching the filesystem before
trying to use a port that was already in use by a container.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:55:00 +02:00
Sebastiaan van Stijn
986725b466
daemon: improve some errors
use pkg/errors for all errors in this file, and wrap some errors
to provide context.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 19:54:57 +02:00
Sebastiaan van Stijn
cbe354b12a
vendor.mod: group replace rules
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 17:37:38 +02:00
Drew Erny
384dc22de7 Add more detail to cluster volumes docs
Signed-off-by: Drew Erny <derny@mirantis.com>
2022-06-29 10:34:21 -05:00
Sebastiaan van Stijn
421b93dcf5
vendor: github.com/hashicorp/go-msgpack v0.5.5 (indirect)
updating to the latest v0.5.x patch release:

full diff: https://github.com/hashicorp/go-msgpack/compare/v0.5.3...v0.5.5

- Fix an issue where struct pointer fields tagged with omitempty will be omitted
  if referenced value is empty, so a field of type *bool, then field would be
  omitted pointer is nil or &false.
- Fixed a decoding issue when decoding a string value in a map where the value
  already existed would panic.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 16:49:01 +02:00
Sebastiaan van Stijn
4e87a758f6
vendor: github.com/hashicorp/serf v0.8.5
updating to the latest v0.8.x patch release:

full diff: https://github.com/hashicorp/serf/compare/v0.8.2...v0.8.5

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 16:48:58 +02:00
Sebastiaan van Stijn
06a7f41488
vendor: github.com/hashicorp/serf v0.8.2, go-msgpack v0.5.3
un-pin these dependencies

full diff: https://github.com/hashicorp/serf/compare/598c54895cc5...v0.8.2
full diff: https://github.com/hashicorp/go-msgpack/compare/71c2886f5a67...v0.5.3

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-06-29 16:48:53 +02:00
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