Граф коммитов

75 Коммитов

Автор SHA1 Сообщение Дата
Chi Song 33e9e30445 refactor: use dict for collections
1. add environments, nodes, platforms classes like a collection.
2. add tools to use a tool like [ToolType], and move related code to
    executable.
3. other minor improvements.
2020-08-19 11:58:03 +08:00
Chi Song db1170f433 Add schema validation
1. add cerberus to validate schema.
2. remove full.yml, and add schema.yml as schema
3. fix schema due to new schema
2020-08-19 11:58:03 +08:00
Chi Song 846f139afa merge files to be pythonic
Python file is a module, which is not used to put only one thing.
All related things should be put in same module.

platform.py causes error in uuid.py, so change name to platform_.py
2020-08-19 11:58:03 +08:00
Chi Song 7b49a50df7 provide a simple way to use tool
1. add LightTool to support oneline call to script
2. add default function for tool class
2020-08-19 11:58:03 +08:00
Chi Song f633db1d91 refine log to output meaningful prefix 2020-08-19 11:58:03 +08:00
Chi Song bc8c5ffc16 add statistics and test result for test progress
1. add statistics and test result for test case progress
2. inherit from unittest to get all assert methods
3. add perf_timer for profiling, and improve current profiling
4. add document for tool.py
5. add init.py for mypy checking
6. other minor improvements
2020-08-19 11:58:03 +08:00
Chi Song 7f6f6be987
Implement custom script (#965)
* Implement custom script

1. Implement custom script. As it's same type with different data, so it's different with tools. CustomScriptBuilder to create an instance of script on Node.
2. rename method and variables to follow pep8 guidaline.
3. rename [Suite/Case]Metadata to [TestSuite/TestCase]Metadata
4. create LisaException to all internal exceptions
5. other minor improvements
2020-08-13 15:33:58 +08:00
Chi Song 3b8ff9b06d Support skip run on unfit environment 2020-08-10 18:03:57 +08:00
Chi Song 0c7a5a5dbe fix Windows failure without WSL 2020-08-10 17:48:12 +08:00
Chi Song 2d62443079 implement tool installation
1. support remote file operations with shell
2. add shell to deal with different between local and remote
3. add git and ntttcp tools, ntttcp is a complex tool example
4. support remote file operations with shell
5. support shell execution on command
2020-08-10 17:31:48 +08:00
Chi Song 09e060b84b refactoring code for process
1. use spurplus to get unique interface for local and remote processes
2. rename executable to tool
3. other minor changes
2020-08-10 11:54:31 +08:00
Chi Song e83bd25842 implement simple tools: echo, uname 2020-08-07 16:49:53 +08:00
Chi Song 079e61c21d use f format to replace %
1. rename test suite methods for better intuition.
2. add description for suite and case.
3. other minor changes
2020-08-07 10:27:15 +08:00
Chi Song 3fa24d2ef0 implement local and remote processes on node
remove common folder
add some cleanup code
2020-08-06 18:14:41 +08:00
Chi Song 9300e145bd use base path from config file
it's easier to put all things together.
2020-08-06 15:14:17 +08:00
Chi Song 285fe681f5 fix most isort errors. 2020-08-06 14:27:09 +08:00
Andrew Schwartzmeyer 97369818f3 Fix imports 2020-08-05 14:08:52 -07:00
Chi Song 8b1226ea1c change to multiple envs, and strict typing
1. fixed most format and typing
2. update yaml schema as feedback
3. fix some file names
4. Add environments factory to manage multiple environments
. move environment request logic to runner, but will be flow part later.
. other minor improvements.
2020-08-05 17:54:27 +08:00
Chi Song 4ba1f0c100 Implement load environment and platform
1. Add Config class to hold config data and helper methods.
2. Add RuntimeObject, hold running objects.
3. Improve schema of platform and environment.
4. Rename decorators
5. Load node, environment, platform from config
6. Implement Ready env.
7. Add connection class to manage ssh session of node.
8. other minor improvements.
2020-08-04 17:00:45 +08:00
Chi Song c0e8def98c add argparser and load yml file
1. add argparser
2. load yaml file to data
3. load platform subclasses
4. rename yaml to yml as common practice
5. optimize log and log format
6. add executable base for future usage.
7. other small improvements
2020-08-04 09:27:01 +08:00
Chi Song 6238384bec add parameter names to make it more clear 2020-08-04 09:27:01 +08:00
Chi Song 48623d2258 implement test case flow
1. Add decorators for test class and methods
2. Add base class for test process.
3. Add a simple example for test suite.
4. Move local platform type to ready, as it's kind of ready.
5. Add async/await for key methods.
6. Add basic code for environment, node.
7. Add basic methods for Platform.
8. Add test factory to collect test info.
9. Add function for import_module
10. process can stop child processes.
11. Add basic parameter parser.
2020-08-04 09:27:01 +08:00
Chi Song 170085df03 add placeholder files
1. review yaml schema
2. fix process output, it can be in log now.
3. update folder structure like design.
2020-08-04 09:27:01 +08:00
Chi Song de963fa2e2 init basic code and improves
1. Add basic classes like action, test runner.
2. improve init progress
3. add prototype code for testrunner.
4. update schema
5. other small changes.
2020-08-04 09:26:09 +08:00
Chi Song a9b0a777fb init LISAv3 code
1. Add windows command shell to init python environment.
2. add init python entry code and log.
3. document dev env settings to development.md
2020-08-04 09:20:51 +08:00