diff --git a/slapos/recipe/erp5/src/slapos/recipe/erp5/test_suite_runner.py b/slapos/recipe/erp5/src/slapos/recipe/erp5/test_suite_runner.py
new file mode 100644
index 0000000000000000000000000000000000000000..ec9a72e3b767db4a2c6e91c9cd8690501218f0c6
--- /dev/null
+++ b/slapos/recipe/erp5/src/slapos/recipe/erp5/test_suite_runner.py
@@ -0,0 +1,11 @@
+import os
+import sys
+def runTestSuite(args):
+  env = os.environ.copy()
+  d = args[0]
+  env['OPENSSL_BINARY'] = d['openssl_binary']
+  env['TEST_CA_PATH'] = d['test_ca_path']
+  env['PATH'] = ':'.join([d['prepend_path']] + os.environ['PATH'].split(':'))
+  env['INSTANCE_HOME'] = d['instance_home']
+  env['REAL_INSTANCE_HOME'] = d['instance_home']
+  os.execve(d['call_list'][0], d['call_list'] + sys.argv[1:], env)