Closed lescactus closed 3 years ago
Same here. This makes it impossible to use the Traefik Mesh in eks
I think I just found the issue which was "introduced" by previous PR #774 when I added support for build version with suffixes. It seems like goversion considers v1.7.0-eksbuild.1
as a pre-release version of v1.7.0
while it is not.
versionCoreDNS17 := goversion.Must(goversion.NewVersion("v1.7"))
coreDNSVersion := goversion.Must(goversion.NewVersion("v1.7.0-eksbuild.1"))
fmt.Println(coreDNSVersion.LessThan(versionCoreDNS17)) // Prints true
I will submit a patch to make sure this is fixed while I am looking at adding support for CoreDNS 1.8.
EDIT: It seems like there is two solutions:
coreDNSVersion := goversion.Must(goversion.NewVersion("v1.7.0-eksbuild.1"))
coreDNSVersion.LessThanOrEqualTo(goversion.Must(goversion.NewVersion("1.6.9"))
pre-release
part of the version using version.Core()
which would require an update to the go-version
package:
coreDNSVersion := goversion.Must(goversion.NewVersion("v1.7.0-eksbuild.1"))
coreDNSVersion.Core().LessThan(goversion.Must(goversion.NewVersion("1.7"))
This issue seems to be something to consider more broadly during the version check in prepare as it might consider v1.8.0-eksbuild.0
as a pre-release and satisfy the LessThan
check for the build version.
Closed by https://github.com/traefik/mesh/pull/790
Bug Report
When deploying the latest version of Maesh with Helm on a AWS EKS cluster (1.18), the controller is still patching CoreDNS Corefile with the
upstream
keyword, despite CoreDNS version > 1.7The CoreDNS image deployed by EKS is
602401143452.dkr.ecr.eu-central-1.amazonaws.com/eks/coredns:v1.7.0-eksbuild.1
What did you do?
Installed Maesh
v1.4.1
with the official Helm charttraefik-mesh-3.0.6
on a fresh AWS EKS cluster versionv1.18
What did you expect to see?
The controller not patching the CoreDNS ConfigMap with the
upstream
keyword since the CoreDNS version is >1.7602401143452.dkr.ecr.eu-central-1.amazonaws.com/eks/coredns:v1.7.0-eksbuild.1
What did you see instead?
The CoreDNS ConfigMap being patched by the controller init container with the
upstream
keyword, thus leading to CoreDNS crashing with the following error message:Error during parsing: unknown property 'upstream'
Output of controller log: (What version of Traefik Mesh are you using?)
Maesh version
v1.4.1
What is your environment & configuration (arguments, provider, platform, ...)?
AWS EKS
v1.18
CoreDNSv1.7.0-eksbuild.1
If applicable, please paste the yaml objects required to reproduce your issue