-allow users to select profilers in the create job view
-create profilers table + model
-create RPCs for managing profilers
-modify control file generation code to accept profilers
-modify create job view
-some refactoring to create job view to allow code sharing and do things more cleanly with some sweet generics
-get rid of rpc_utils.sorted. who knew there was a builtin?
git-svn-id: http://test.kernel.org/svn/autotest/trunk@1703 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/frontend/afe/control_file.py b/frontend/afe/control_file.py
index 9b8602b..464068f 100644
--- a/frontend/afe/control_file.py
+++ b/frontend/afe/control_file.py
@@ -101,7 +101,19 @@
return '\n'.join(lines)
-def generate_control(tests, kernel=None, platform=None, is_server=False):
+def _get_profiler_commands(profilers, is_server):
+ 'Return (prepend, append)'
+ prepend, append = [], []
+ if is_server:
+ return prepend, append
+ for profiler in profilers:
+ prepend.append("job.profilers.add('%s')" % profiler.name)
+ append.append("job.profilers.delete('%s')" % profiler.name)
+ return prepend, append
+
+
+def generate_control(tests, kernel=None, platform=None, is_server=False,
+ profilers=[]):
control_file_text = ''
if kernel:
control_file_text = get_kernel_stanza(kernel, platform,
@@ -109,5 +121,7 @@
elif not is_server:
control_file_text = 'def step_init():\n'
- control_file_text += get_tests_stanza(tests, is_server)
+ prepend, append = _get_profiler_commands(profilers, is_server)
+
+ control_file_text += get_tests_stanza(tests, is_server, prepend, append)
return control_file_text