Browse Source

fixing ingress

jkotalik/newVotingSample
Justin Kotalik 6 years ago
parent
commit
2bc49abb55
  1. 8
      src/Microsoft.Tye.Core/KubernetesManifestGenerator.cs

8
src/Microsoft.Tye.Core/KubernetesManifestGenerator.cs

@ -33,7 +33,7 @@ namespace Microsoft.Tye
var annotations = new YamlMappingNode(); var annotations = new YamlMappingNode();
metadata.Add("annotations", annotations); metadata.Add("annotations", annotations);
annotations.Add("kubernetes.io/ingress.class", new YamlScalarNode("nginx") { Style = ScalarStyle.SingleQuoted, }); annotations.Add("kubernetes.io/ingress.class", new YamlScalarNode("nginx") { Style = ScalarStyle.SingleQuoted, });
annotations.Add("nginx.ingress.kubernetes.io/rewrite-target", new YamlScalarNode("/$2") { Style = ScalarStyle.SingleQuoted, }); annotations.Add("nginx.ingress.kubernetes.io/rewrite-target", new YamlScalarNode("/$1") { Style = ScalarStyle.SingleQuoted, });
var labels = new YamlMappingNode(); var labels = new YamlMappingNode();
metadata.Add("labels", labels); metadata.Add("labels", labels);
@ -88,7 +88,7 @@ namespace Microsoft.Tye
backend.Add("servicePort", (binding.Port ?? 80).ToString(CultureInfo.InvariantCulture)); backend.Add("servicePort", (binding.Port ?? 80).ToString(CultureInfo.InvariantCulture));
// Tye implements path matching similar to this example: // Tye implements path matching similar to this example:
// https://kubernetes.github.io/ingress-nginx/examples/rewrite/ // https://kubernetes.github.io/ingress-nginx/examples/rewrite/jko
// //
// Therefore our rewrite-target is set to $2 - we want to make sure we have // Therefore our rewrite-target is set to $2 - we want to make sure we have
// two capture groups. // two capture groups.
@ -98,12 +98,12 @@ namespace Microsoft.Tye
} }
else if (ingressRule.PreservePath) else if (ingressRule.PreservePath)
{ {
var regex = $"{ingressRule.Path.TrimEnd('/')}(/|$)(.*)"; var regex = $"/({ingressRule.Path.Trim('/')}.*)";
path.Add("path", regex); path.Add("path", regex);
} }
else else
{ {
var regex = $"(/|$)({ingressRule.Path.TrimEnd('/')}.*)"; var regex = $"{ingressRule.Path.TrimEnd('/')}(/|$)(.*)";
path.Add("path", regex); path.Add("path", regex);
} }
} }

Loading…
Cancel
Save