Fix SSL passthrough

This commit is contained in:
Manuel de Brito Fontes 2018-01-23 17:10:02 -03:00 committed by Manuel Alejandro de Brito Fontes
parent 1ec0a60746
commit 12ec0475c0
2 changed files with 34 additions and 33 deletions

View file

@ -114,6 +114,8 @@ func NewNGINXController(config *Configuration, fs file.Filesystem) *NGINXControl
// create an empty configuration.
runningConfig: &ingress.Configuration{},
Proxy: &TCPProxy{},
}
n.store = store.New(true,
@ -410,6 +412,7 @@ func (n *NGINXController) OnUpdate(ingressCfg ingress.Configuration) error {
cfg := n.store.GetBackendConfiguration()
cfg.Resolver = n.resolver
if n.cfg.EnableSSLPassthrough {
servers := []*TCPServer{}
for _, pb := range ingressCfg.PassthroughBackends {
svc := pb.Service
@ -443,6 +446,9 @@ func (n *NGINXController) OnUpdate(ingressCfg ingress.Configuration) error {
})
}
n.Proxy.ServerList = servers
}
// we need to check if the status module configuration changed
if cfg.EnableVtsStatus {
n.setupMonitor(vtsStatusModule)

View file

@ -31,12 +31,7 @@ func (f *Framework) ExecCommand(pod *v1.Pod, command string) (string, error) {
execErr bytes.Buffer
)
args := fmt.Sprintf("kubectl exec --namespace %v %v -- %v", pod.Namespace, pod.Name, command)
if len(pod.Spec.Containers) != 1 {
args = fmt.Sprintf("kubectl exec --namespace %v %v --container nginx-ingress-controller -- %v", pod.Namespace, pod.Name, command)
}
log("DEBUG", "Executing command \"%v\"", args)
args := fmt.Sprintf("kubectl exec --namespace %v %v --container nginx-ingress-controller -- %v", pod.Namespace, pod.Name, command)
cmd := exec.Command("/bin/bash", "-c", args)
cmd.Stdout = &execOut
cmd.Stderr = &execErr