refactor: simplify tls handling by always redirecting
This commit is contained in:
@@ -161,12 +161,11 @@ type ProcessCron struct {
|
||||
}
|
||||
|
||||
type ProcessPortMap struct {
|
||||
ContainerPort int32 `yaml:"container_port"`
|
||||
HostPort int32 `yaml:"host_port"`
|
||||
Scheme string `yaml:"scheme"`
|
||||
Protocol PortmapProtocol `yaml:"protocol"`
|
||||
Name string `yaml:"name"`
|
||||
RedirectToHttps bool `yaml:"redirect_to_https"`
|
||||
ContainerPort int32 `yaml:"container_port"`
|
||||
HostPort int32 `yaml:"host_port"`
|
||||
Scheme string `yaml:"scheme"`
|
||||
Protocol PortmapProtocol `yaml:"protocol"`
|
||||
Name string `yaml:"name"`
|
||||
}
|
||||
|
||||
type PortmapProtocol string
|
||||
|
||||
@@ -26,16 +26,15 @@ metadata:
|
||||
namespace: {{ $.Values.global.namespace }}
|
||||
spec:
|
||||
entryPoints:
|
||||
{{- if and $config.web.tls.enabled (eq $port_map.scheme "https") }}
|
||||
{{- if $config.web.tls.enabled }}
|
||||
- websecure
|
||||
{{- else }}
|
||||
- web
|
||||
{{- end }}
|
||||
- web
|
||||
routes:
|
||||
{{- range $ddx, $domain := $config.web.domains }}
|
||||
- kind: Rule
|
||||
match: Host(`{{ $domain }}`)
|
||||
{{- if and $config.web.tls.enabled (and (eq $port_map.scheme "http") $port_map.redirect_to_https) }}
|
||||
{{- if $config.web.tls.enabled }}
|
||||
middlewares:
|
||||
- name: {{ $.Values.global.app_name}}-{{ $processName }}-redirect-to-https
|
||||
namespace: {{ $.Values.global.namespace }}
|
||||
@@ -47,7 +46,7 @@ spec:
|
||||
port: {{ $port_map.name }}
|
||||
scheme: http
|
||||
{{- end }}
|
||||
{{- if and $config.web.tls.enabled (eq $port_map.scheme "https") }}
|
||||
{{- if $config.web.tls.enabled }}
|
||||
tls:
|
||||
secretName: tls-{{ $.Values.global.app_name }}-{{ $processName }}
|
||||
{{- end }}
|
||||
|
||||
@@ -18,6 +18,9 @@ metadata:
|
||||
{{ $k }}: {{ $v | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if $config.web.tls.enabled }}
|
||||
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
|
||||
{{- end }}
|
||||
labels:
|
||||
app.kubernetes.io/instance: {{ $.Values.global.app_name }}-{{ $processName }}
|
||||
app.kubernetes.io/name: {{ $processName }}
|
||||
@@ -26,7 +29,7 @@ metadata:
|
||||
namespace: {{ $.Values.global.namespace }}
|
||||
spec:
|
||||
ingressClassName: nginx
|
||||
{{- if and $config.web.tls.enabled (eq $port_map.scheme "https") }}
|
||||
{{- if $config.web.tls.enabled }}
|
||||
tls:
|
||||
- hosts:
|
||||
{{- range $ddx, $domain := $config.web.domains }}
|
||||
|
||||
@@ -417,17 +417,12 @@ func TriggerSchedulerDeploy(scheduler string, appName string, imageTag string) e
|
||||
protocol = PortmapProtocol_UDP
|
||||
}
|
||||
|
||||
redirecToHttps := false
|
||||
if _, ok := portMaps[fmt.Sprintf("https-443-%d", portMap.ContainerPort)]; ok && portMap.Scheme == "http" {
|
||||
redirecToHttps = true
|
||||
}
|
||||
processValues.Web.PortMaps = append(processValues.Web.PortMaps, ProcessPortMap{
|
||||
ContainerPort: portMap.ContainerPort,
|
||||
HostPort: portMap.HostPort,
|
||||
Name: portMap.String(),
|
||||
Protocol: protocol,
|
||||
RedirectToHttps: redirecToHttps,
|
||||
Scheme: portMap.Scheme,
|
||||
ContainerPort: portMap.ContainerPort,
|
||||
HostPort: portMap.HostPort,
|
||||
Name: portMap.String(),
|
||||
Protocol: protocol,
|
||||
Scheme: portMap.Scheme,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user