From b0e242fe73912f38f4caf587f506baa1fefc7412 Mon Sep 17 00:00:00 2001 From: Manuel de Brito Fontes Date: Thu, 30 Aug 2018 21:32:06 -0300 Subject: [PATCH] Add support for valgrind --- internal/ingress/controller/util.go | 17 ++++++++++++++++- rootfs/Dockerfile | 1 + 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/internal/ingress/controller/util.go b/internal/ingress/controller/util.go index 47220c119..a6e5e20c0 100644 --- a/internal/ingress/controller/util.go +++ b/internal/ingress/controller/util.go @@ -74,14 +74,29 @@ const ( cfgPath = "/etc/nginx/nginx.conf" ) +var valgrind = []string{ + "valgrind", + "--tool=memcheck", + "--leak-check=full", + "--show-leak-kinds=all", + "--leak-check=yes", +} + func nginxExecCommand(args ...string) *exec.Cmd { ngx := os.Getenv("NGINX_BINARY") if ngx == "" { ngx = defBinary } - cmdArgs := []string{"--deep", ngx, "-c", cfgPath} + cmdArgs := []string{"--deep"} + + if os.Getenv("RUN_WITH_VALGRIND") == "true" { + cmdArgs = append(cmdArgs, valgrind...) + } + + cmdArgs = append(cmdArgs, ngx, "-c", cfgPath) cmdArgs = append(cmdArgs, args...) + return exec.Command("authbind", cmdArgs...) } diff --git a/rootfs/Dockerfile b/rootfs/Dockerfile index 694701769..1af40c358 100644 --- a/rootfs/Dockerfile +++ b/rootfs/Dockerfile @@ -20,6 +20,7 @@ WORKDIR /etc/nginx RUN clean-install \ diffutils \ + valgrind \ dumb-init COPY . /