mirror of https://github.com/docker/cli.git
info: remove printServerWarningsLegacy
Docker Engine 18.09 (API v1.39) introduced a Warnings field in the into response. This enhancement was not gated by API version (see [moby/moby@a3d4238]), and will be returned by Docker Engine 18.09 and up, regardless of the API version chosen. Likewise, the client-side code was written to prefer warnings returned by the daemon, but to fall back on client-side detection of missing features based on information in the Info response (see [docker/cli@3c27ce2]). Thse warnings are purely informational, and given that Docker Engine versions before 18.09 have reached EOL 6 Years ago, and any current version of the Engine now returns the Warnings, it should be safe to remove the client-side fall back logic. This patch removes the client-side fall back code for warnings that was added in3c27ce21c9
. [moby/moby@a3d4238]:a3d4238b9c
[docker/cli@3c27ce2]:3c27ce21c9
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
parent
f18a476b6d
commit
a71d39bcad
|
@ -460,10 +460,7 @@ func printServerWarnings(stdErr io.Writer, info *dockerInfo) {
|
||||||
}
|
}
|
||||||
if len(info.Warnings) > 0 {
|
if len(info.Warnings) > 0 {
|
||||||
fprintln(stdErr, strings.Join(info.Warnings, "\n"))
|
fprintln(stdErr, strings.Join(info.Warnings, "\n"))
|
||||||
return
|
|
||||||
}
|
}
|
||||||
// daemon didn't return warnings. Fallback to old behavior
|
|
||||||
printServerWarningsLegacy(stdErr, *info.Info)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// printSecurityOptionsWarnings prints warnings based on the security options
|
// printSecurityOptionsWarnings prints warnings based on the security options
|
||||||
|
@ -490,48 +487,6 @@ func printSecurityOptionsWarnings(stdErr io.Writer, info system.Info) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// printServerWarningsLegacy generates warnings based on information returned by the daemon.
|
|
||||||
//
|
|
||||||
// Deprecated: warnings are now generated by the daemon, and returned in
|
|
||||||
// info.Warnings. This function is used to provide backward compatibility with
|
|
||||||
// daemons that do not provide these warnings. No new warnings should be added
|
|
||||||
// here.
|
|
||||||
func printServerWarningsLegacy(stdErr io.Writer, info system.Info) {
|
|
||||||
if info.OSType == "windows" {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if !info.MemoryLimit {
|
|
||||||
fprintln(stdErr, "WARNING: No memory limit support")
|
|
||||||
}
|
|
||||||
if !info.SwapLimit {
|
|
||||||
fprintln(stdErr, "WARNING: No swap limit support")
|
|
||||||
}
|
|
||||||
if !info.OomKillDisable && info.CgroupVersion != "2" {
|
|
||||||
fprintln(stdErr, "WARNING: No oom kill disable support")
|
|
||||||
}
|
|
||||||
if !info.CPUCfsQuota {
|
|
||||||
fprintln(stdErr, "WARNING: No cpu cfs quota support")
|
|
||||||
}
|
|
||||||
if !info.CPUCfsPeriod {
|
|
||||||
fprintln(stdErr, "WARNING: No cpu cfs period support")
|
|
||||||
}
|
|
||||||
if !info.CPUShares {
|
|
||||||
fprintln(stdErr, "WARNING: No cpu shares support")
|
|
||||||
}
|
|
||||||
if !info.CPUSet {
|
|
||||||
fprintln(stdErr, "WARNING: No cpuset support")
|
|
||||||
}
|
|
||||||
if !info.IPv4Forwarding {
|
|
||||||
fprintln(stdErr, "WARNING: IPv4 forwarding is disabled")
|
|
||||||
}
|
|
||||||
if !info.BridgeNfIptables {
|
|
||||||
fprintln(stdErr, "WARNING: bridge-nf-call-iptables is disabled")
|
|
||||||
}
|
|
||||||
if !info.BridgeNfIP6tables {
|
|
||||||
fprintln(stdErr, "WARNING: bridge-nf-call-ip6tables is disabled")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func formatInfo(output io.Writer, info dockerInfo, format string) error {
|
func formatInfo(output io.Writer, info dockerInfo, format string) error {
|
||||||
if format == formatter.JSONFormatKey {
|
if format == formatter.JSONFormatKey {
|
||||||
format = formatter.JSONFormat
|
format = formatter.JSONFormat
|
||||||
|
|
|
@ -333,23 +333,6 @@ func TestPrettyPrintInfo(t *testing.T) {
|
||||||
prettyGolden: "docker-info-with-swarm",
|
prettyGolden: "docker-info-with-swarm",
|
||||||
jsonGolden: "docker-info-with-swarm",
|
jsonGolden: "docker-info-with-swarm",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
doc: "info with legacy warnings",
|
|
||||||
dockerInfo: dockerInfo{
|
|
||||||
Info: &infoWithWarningsLinux,
|
|
||||||
ClientInfo: &clientInfo{
|
|
||||||
clientVersion: clientVersion{
|
|
||||||
Platform: &platformInfo{Name: "Docker Engine - Community"},
|
|
||||||
Version: "24.0.0",
|
|
||||||
Context: "default",
|
|
||||||
},
|
|
||||||
Debug: true,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
prettyGolden: "docker-info-no-swarm",
|
|
||||||
warningsGolden: "docker-info-warnings",
|
|
||||||
jsonGolden: "docker-info-legacy-warnings",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
doc: "info with daemon warnings",
|
doc: "info with daemon warnings",
|
||||||
dockerInfo: dockerInfo{
|
dockerInfo: dockerInfo{
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
{"ID":"EKHL:QDUU:QZ7U:MKGD:VDXK:S27Q:GIPU:24B7:R7VT:DGN6:QCSF:2UBX","Containers":0,"ContainersRunning":0,"ContainersPaused":0,"ContainersStopped":0,"Images":0,"Driver":"overlay2","DriverStatus":[["Backing Filesystem","extfs"],["Supports d_type","true"],["Using metacopy","false"],["Native Overlay Diff","true"]],"Plugins":{"Volume":["local"],"Network":["bridge","host","macvlan","null","overlay"],"Authorization":null,"Log":["awslogs","fluentd","gcplogs","gelf","journald","json-file","splunk","syslog"]},"MemoryLimit":false,"SwapLimit":false,"CpuCfsPeriod":false,"CpuCfsQuota":false,"CPUShares":false,"CPUSet":false,"PidsLimit":false,"IPv4Forwarding":false,"BridgeNfIptables":false,"BridgeNfIp6tables":false,"Debug":true,"NFd":33,"OomKillDisable":false,"NGoroutines":135,"SystemTime":"2017-08-24T17:44:34.077811894Z","LoggingDriver":"json-file","CgroupDriver":"cgroupfs","NEventsListener":0,"KernelVersion":"4.4.0-87-generic","OperatingSystem":"Ubuntu 16.04.3 LTS","OSVersion":"","OSType":"linux","Architecture":"x86_64","IndexServerAddress":"https://index.docker.io/v1/","RegistryConfig":{"AllowNondistributableArtifactsCIDRs":null,"AllowNondistributableArtifactsHostnames":null,"InsecureRegistryCIDRs":["127.0.0.0/8"],"IndexConfigs":{"docker.io":{"Name":"docker.io","Mirrors":null,"Secure":true,"Official":true}},"Mirrors":null},"NCPU":2,"MemTotal":2097356800,"GenericResources":null,"DockerRootDir":"/var/lib/docker","HttpProxy":"","HttpsProxy":"","NoProxy":"","Name":"system-sample","Labels":["provider=digitalocean"],"ExperimentalBuild":false,"ServerVersion":"17.06.1-ce","Runtimes":{"runc":{"path":"docker-runc"}},"DefaultRuntime":"runc","Swarm":{"NodeID":"","NodeAddr":"","LocalNodeState":"inactive","ControlAvailable":false,"Error":"","RemoteManagers":null},"LiveRestoreEnabled":false,"Isolation":"","InitBinary":"docker-init","ContainerdCommit":{"ID":"6e23458c129b551d5c9871e5174f6b1b7f6d1170","Expected":"6e23458c129b551d5c9871e5174f6b1b7f6d1170"},"RuncCommit":{"ID":"810190ceaa507aa2727d7ae6f4790c76ec150bd2","Expected":"810190ceaa507aa2727d7ae6f4790c76ec150bd2"},"InitCommit":{"ID":"949e6fa","Expected":"949e6fa"},"SecurityOptions":["name=apparmor","name=seccomp,profile=default"],"DefaultAddressPools":[{"Base":"10.123.0.0/16","Size":24}],"CDISpecDirs":["/etc/cdi","/var/run/cdi"],"Warnings":null,"ClientInfo":{"Debug":true,"Platform":{"Name":"Docker Engine - Community"},"Version":"24.0.0","Context":"default","Plugins":[],"Warnings":null}}
|
|
Loading…
Reference in New Issue