On 11/14/2012 07:46 PM, Michael Hudson-Doyle wrote:
= the action changes:
We now have:
"command": "lava_test_shell", "parameters": { "testdef_repos": [ {"repo1" :
"git://git.linaro.org/people/stylesen/sampletestdefs.git", "testdef1": {"test": "testdef.yaml", "files": ["testsample.sh", "tester.sh"]}, "testdef2": {"test": "testdef.yaml", "files": ["testsample.sh", "tester.sh"]} }, {"repo2" : "git://git.linaro.org/people/stylesen/sampletestdefs.git", "testdef": {"test": "testdef.yaml", "files": ["testsample.sh", "tester.sh"]} }], "timeout": 1800 }
There are 2 things I don't like. The "testdefX" thing and the "files". I see where you are coming from on the "files" piece, but I think we should just pull in the whole repository for the test. I see how you are trying to eliminate copying the same stuff multiple times. However, we can probably be smart and have a directory on the target that has a single copy of each repo and then do symlinks to it for each test.
Or just not bother trying to be smart (I expect the large majority of lava_test_shell actions that we execute to specify only one test).
I had always envisioned that we would just clone the testdef containing repository onto the board. Basically I think we should aim for the simplest case: that, for example, the PMWG just need to drop a testdef.yaml file into http://git.linaro.org/gitweb?p=tools/pm-qa.git%3Ba=tree to and put git://git.linaro.org/tools/pm-qa.git into the job json in the appropriate place. This means that we should just copy all files in the branch across and that we should have a default location for the testdef YAML. Sorry if I missed a chance to make this clear earlier!
Two comments.
1) I looked at the daily-prebuilt tests and those seem to fit this pattern of one testdef per repository.
2) I think we should support a default "lavatest.yaml" option, but there's no point in not allowing the override of the default file(s).