1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2024-10-06 10:51:13 +01:00
Commit Graph

590 Commits

Author SHA1 Message Date
Sebastian Goscik
dde34177e2 DeviceManager: Updated to use new RuntimeParameters 2016-09-27 11:38:35 +01:00
Sebastian Goscik
4a33fa9ffc Moved KIND_MAP checks and definition 2016-09-27 11:38:35 +01:00
Sebastian Goscik
06e95abc78 Implemented Plugin Cache + its unit tests 2016-09-27 11:38:34 +01:00
Sebastian Goscik
c02c6cbceb Runtime Parameters: WIP - replace me 2016-09-27 11:38:34 +01:00
Sebastian Goscik
9046ddb15d Unit tests 2016-09-27 11:38:34 +01:00
Sebastian Goscik
9416888361 AgendaParser: Split up repeated code into functions + fixes discovered by unit tests 2016-09-27 11:38:34 +01:00
Sebastian Goscik
3be1d1202c AgendaParser: Various fixes
- Fixed merge_result_processors_instruments not merging result_processors
 - Made AgendaParser have the same load/load_from_path interface as ConfigParser
 - Removed source from error messages because its already predended when caught
 - AgendaParser no longer needs to be passed a ConfigParser, it makes its own instance
 - Changed quote style from "Error in {}" message to match other errors
2016-09-27 11:38:34 +01:00
Sebastian Goscik
55c4ed8c56 Stub plugin cache 2016-09-27 11:38:34 +01:00
Sebastian Goscik
55fa709335 misc 2016-09-27 11:38:18 +01:00
Sebastian Goscik
53a9f2336e Mostly implemented JobSpec and JobGenerator 2016-09-27 11:20:12 +01:00
Sebastian Goscik
bd6092728d RunConfiguration: Various improvements
- Removed `output_directory` ConfigurationPoint, it should be set and passed
  by whatever instanstiates RunConfiguration.
- Made `device` a mandatory configuration point.
- Added serialization
- Now handles merging specific and generic config
`output_directory` should be set and passed why what ever instanstiates RunConfiguration.
2016-09-27 11:20:12 +01:00
Sebastian Goscik
dc0449b544 Configuration: Various fixes
- Removed `finalize`, replaced it with `validate`
- Added `to_pod` and `from_pod` methods
- `set` and `update_config` now take (and forward) `check_mandatory`
2016-09-27 11:20:12 +01:00
Sebastian Goscik
57cd5a93fe Added merge_using_priority_specificity
This complex function handles merging of config with two priorities in mind.
The specificity of the config (`device_config` vs `nexus10`) and the priorty
of the source.
2016-09-27 11:20:12 +01:00
Sebastian Goscik
22888b502f ConfigurationPoint: Now validates the default value 2016-09-27 11:20:12 +01:00
Sebastian Goscik
9cc42c1879 Moved get_type_name outside of ConfigurationPoint 2016-09-27 11:20:12 +01:00
Sebastian Goscik
cddc29af05 ConfigurationPoint: Removed convert_types
Now always done by default because we never had a situation where this was not necessary.
2016-09-27 11:20:12 +01:00
Sebastian Goscik
6798a54a61 ConfigParser: Added ID validation - IDs cannot contain a - because its used to separate section IDs from workload IDs - global is a reserved ID for the "global" section. 2016-09-27 11:20:12 +01:00
Sebastian Goscik
451d973a65 ConfigParser: Global generic config is now stored in the plugin cache
Config such as "device_config" or "workload_parameters" is now stored in
the plugin cache till we know what it belongs to.
2016-09-27 11:20:12 +01:00
Sebastian Goscik
059b38685b AgendaParse: Removed config finalisation
It should not been done by the agenda parser but rather what ever invokes it
2016-09-27 11:20:12 +01:00
Sebastian Goscik
6aa3ddae4f types: Added obj_dict
obj_dict is a a dictionary that can have its entries accessed either
via the standard `[some_key]` method or via the obj_dict's attributes
`obj_dict.some_key`.

This comes is very useful when needing to use `ConfigurationPoints` outside
of a `Configuration` object
2016-09-27 11:20:12 +01:00
Sebastian Goscik
ca13c58f7c toggle_set: Fixed code from when these were lists not sets 2016-09-27 11:20:12 +01:00
Sebastian Goscik
df17f79142 Job spec tree: Added a common base for workloads and sections
Added "JobSpecSource" as a base class for both section tree nodes and
workload entries. This adds a common interface between them for:
 - Resolving names
 - Storing configuration
 - References to parents
 - Getting IDs out of configuration
2016-09-27 11:20:12 +01:00
Sebastian Goscik
b0e500e2a8 misc 2016-09-27 11:20:11 +01:00
Sebastian Goscik
e258999e0a Unit tests 2016-09-27 11:20:11 +01:00
Sebastian Goscik
02138c60cc Added mock as a dependency for unit tests 2016-09-27 11:20:11 +01:00
Sebastian Goscik
e0e4f389b9 Reworked configuration
All config now uses configuration points
Config parsing is now done in destinct stages
  - first all files are parsed and sent to their corresponding config objects or to a tree
  - tree is traversed to generate job specs.
2016-09-27 11:20:11 +01:00
Sebastian Goscik
8de1b94d73 enable_disable_list: Added a type to handle instrument/result_processor lists
A custom list type now allows "enabling"/"disabling" items by prepending a `~`.
When merged the new state takes priority over the old state.
2016-09-27 11:20:11 +01:00
Sebastian Goscik
05df7c7d9f ExecutionContext: Fixed copying agenda when one is not used 2016-09-27 11:17:25 +01:00
Sebastian Goscik
2d3254470c utils: Removed utils code that is also in devlib
Since WA3 is now very much dependant on devlib there is no need
to duplicate utility code between the two projects.

Quite a few of the modules aren't even needed by WA because they
were for communicating with devices.
2016-09-27 11:17:25 +01:00
Sebastian Goscik
0057a531fd RecordCommand: Improved record command to handle workloads
The wa record command now has the ability to record revent files for wa
workload.

The command with automatically deploy the workload and record both
setup and run revent recordings

Conflicts:
	wlauto/commands/record.py
2016-09-27 11:17:25 +01:00
Sebastian Goscik
98b46894d8 Updates to pluggins to match the new plugin loader 2016-09-27 11:17:25 +01:00
Sebastian Goscik
913d41c86d Update 2016-09-27 11:17:25 +01:00
Sebastian Goscik
17a395fbd4 Improved serializability 2016-09-27 11:17:25 +01:00
Sebastian Goscik
4485333454 Moved wlauto.core.config.core into wlauto.core.configuration 2016-09-27 11:17:25 +01:00
Sebastian Goscik
c51593a729 pluginloader: Updated documentation to say plugin instead of extension 2016-09-27 11:17:25 +01:00
Sebastian Goscik
1e6763ee9b pluginloader: Replaced extension loader with WA3 plugin loader
In the process removed modules and boot_strap.py. Also Renamed extensions Plugins.

Louie is now monkey patched rather than containing a modified version in external
2016-09-27 11:17:25 +01:00
setrofim
a4a428c9ae Merge pull request #109 from ep1cman/locallinux
LocalLinuxManager: Added a local linux manager
2016-02-23 17:04:41 +00:00
Sebastian Goscik
d89a52584b bootstrap: Removed and fixed module mapping for extensions 2016-02-23 17:01:53 +00:00
Sebastian Goscik
41a3877640 LocalLinuxManager: Added a local linux manager
This allows WA to automate the machine it is running on.
2016-02-23 16:57:46 +00:00
Sebastian Goscik
0b1b9d304c Fixed WA extensions for AndroidManager
Changed method calls to devlib naming
2016-02-19 15:29:10 +00:00
Sebastian Goscik
a3962b6323 AndroidManager: Added AndroidManager
Replaces AndroidDevice
2016-02-19 15:27:18 +00:00
Sebastian Goscik
001239dfe4 Fixed WA extensions for LinuxManager
Changed method calls to devlib naming
2016-02-19 15:27:18 +00:00
Sebastian Goscik
6f0de17201 LinuxManager: Added LinuxManager
Replaces BaseLinuxDevice & LinuxDevice
2016-02-19 15:26:54 +00:00
Sebastian Goscik
1599c1e0ed Devices: Removed Devices
They are now superseded by DeviceManagers
2016-02-19 15:26:54 +00:00
Sebastian Goscik
4fc93a8a3c DeviceManager: Introduced DeviceManager extension
DeviceManagers will replace devices and will wrap devlib targets for use in WA
2016-02-19 15:23:07 +00:00
Sebastian Goscik
cd0186d14e json: Replaced json results processor with a more comprehensive one 2016-02-19 15:23:07 +00:00
Sebastian Goscik
de133cddb4 Merge pull request #105 from bjackman/check-config-exists
Add entry_point check for config file existence
2016-02-18 09:02:46 +00:00
Brendan Jackman
a5c9b94257 Add entry_point check for config file existence
This is just to provide a friendlier error message.
Before this commit you get an IOError from imp.load_source.
2016-02-17 17:24:14 +00:00
setrofim
c203ec8921 Merge pull request #103 from ep1cman/fixes
ApkWorkload: Fixed runtime permission granting
2016-02-15 11:50:36 +00:00
Sebastian Goscik
de021da300 ApkWorkload: Fixed runtime permission granting
"Normal" android permissions are automatically granted and cannot
be changed. Trying to "pm grant" these caused an error, this should
no longer occur.
2016-02-15 11:38:28 +00:00