So, this can be most easily reproduced by noting that the function doesn't exist in the most recent template renderer, but does exist in the container:
docker run --rm=true -it gcr.io/google_containers/nginx-ingress-controller:0.9.0-beta.9 cat /etc/nginx/template/nginx.tmpl | grep buildUpstreamName
set $proxy_upstream_name "{{ buildUpstreamName $server.Hostname $backends $location }}";
Additional notes include:
kubectl logs ${RELEASE_NAME}-ingress-nginx-ingress-controller-1776526762-rklxl
[dumb-init] Unable to detach from controlling tty (errno=25 Inappropriate ioctl for device).
[dumb-init] Child spawned with PID 5.
[dumb-init] Unable to attach to controlling tty (errno=25 Inappropriate ioctl for device).
[dumb-init] setsid complete.
F0630 07:49:10.612447 5 nginx.go:145] invalid NGINX template: template: nginx.tmpl:350: function "buildUpstreamName" not defined
goroutine 1 [running]:
k8s.io/ingress/vendor/github.com/golang/glog.stacks(0xc420126300, 0xc4200d2700, 0x87, 0xda)
/var/build/go/src/k8s.io/ingress/vendor/github.com/golang/glog/glog.go:766 +0xa7
k8s.io/ingress/vendor/github.com/golang/glog.(*loggingT).output(0x1dd15e0, 0xc400000003, 0xc420066dc0, 0x1d3ec95, 0x8, 0x91, 0x0)
/var/build/go/src/k8s.io/ingress/vendor/github.com/golang/glog/glog.go:717 +0x348
k8s.io/ingress/vendor/github.com/golang/glog.(*loggingT).printf(0x1dd15e0, 0xc400000003, 0x154f8f0, 0x1a, 0xc4204a9df8, 0x1, 0x1)
/var/build/go/src/k8s.io/ingress/vendor/github.com/golang/glog/glog.go:655 +0x14f
k8s.io/ingress/vendor/github.com/golang/glog.Fatalf(0x154f8f0, 0x1a, 0xc4204a9df8, 0x1, 0x1)
/var/build/go/src/k8s.io/ingress/vendor/github.com/golang/glog/glog.go:1145 +0x67
main.newNGINXController(0x0, 0xc4204a9e80)
/var/build/go/src/k8s.io/ingress/controllers/nginx/pkg/cmd/controller/nginx.go:145 +0x542
main.main()
/var/build/go/src/k8s.io/ingress/controllers/nginx/pkg/cmd/controller/main.go:31 +0x37
[dumb-init] Received signal 17.
[dumb-init] A child with PID 5 exited with exit status 255.
[dumb-init] Forwarded signal 15 to children.
[dumb-init] Child exited with status 255. Goodbye.
Edit: It seems to be in the tag but not the branch or something. Introduced here:
83d03a19
Edit: Contained in refs:
git for-each-ref --contains 83d03a19
e119059c96615f9fdb0e6e3b9bc26ff0be3f47ae commit refs/heads/master
e119059c96615f9fdb0e6e3b9bc26ff0be3f47ae commit refs/remotes/origin/HEAD
e119059c96615f9fdb0e6e3b9bc26ff0be3f47ae commit refs/remotes/origin/master
fde232bc1c0c581caa68f6738009d5dd6da16950 commit refs/tags/nginx-0.9.0-beta.9
Edited to remove stupid. I noted the wrong thing
Problem does not exists in temporal image quay.io/aledbf/nginx-ingress-controller:0.156
Edited to retract that problem seems to exist in temporal image
cc @aledbf as it looks like you did the release in #925
It's possible that I've made a fundamentally wrong assumption somewhere. I just took a current helm release and bumped it to that container; it exploded. Let me know if there's further stuff that you need.
So, I got it wrong initially - gcr container doesn't work, temporal image above does work. Weirdly, going between beta 8 and beta 9 also showed the breaking change that should have been in
https://github.com/kubernetes/ingress/blob/master/controllers/nginx/Changelog.md#09-beta1
Weirdly, going between beta 8 and beta 9 also showed the breaking change that should have been in
which one?
@andrewhowdencom I cannot publish images to gcr. That's the reason why I just open the PR to release a new version and nicksardo or ixdy publish the images
Is 0.9.0-beta.10 still broken ? or there are any breaking change ?
I got /nginx-ingress-controller: No such file or directory error.
0.9.0-beta.10 is broken again:
[dumb-init] Unable to detach from controlling tty (errno=25 Inappropriate ioctl for device).
[dumb-init] Child spawned with PID 7.
[dumb-init] Unable to attach to controlling tty (errno=25 Inappropriate ioctl for device).
[dumb-init] setsid complete.
[dumb-init] /nginx-ingress-controller: No such file or directory
[dumb-init] Received signal 17.
[dumb-init] A child with PID 7 exited with exit status 2.
[dumb-init] Forwarded signal 15 to children.
[dumb-init] Child exited with status 2. Goodbye.
Update: Talking with @aledbf on fixing this.
@TimothyKlim @acoshift @andrewhowdencom 0.9-beta-10 it is published and working.
Weirdly, going between beta 8 and beta 9 also showed the breaking change that should have been in
This one
Flag --nginx-configmap was replaced with --configmap
Most helpful comment
@TimothyKlim @acoshift @andrewhowdencom 0.9-beta-10 it is published and working.