1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2025-07-04 06:03:36 +01:00
Commit Graph

681 Commits

Author SHA1 Message Date
53a9f2336e Mostly implemented JobSpec and JobGenerator 2016-09-27 11:20:12 +01:00
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
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
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
22888b502f ConfigurationPoint: Now validates the default value 2016-09-27 11:20:12 +01:00
9cc42c1879 Moved get_type_name outside of ConfigurationPoint 2016-09-27 11:20:12 +01:00
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
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
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
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
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
ca13c58f7c toggle_set: Fixed code from when these were lists not sets 2016-09-27 11:20:12 +01:00
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
b0e500e2a8 misc 2016-09-27 11:20:11 +01:00
e258999e0a Unit tests 2016-09-27 11:20:11 +01:00
02138c60cc Added mock as a dependency for unit tests 2016-09-27 11:20:11 +01:00
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
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
05df7c7d9f ExecutionContext: Fixed copying agenda when one is not used 2016-09-27 11:17:25 +01:00
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
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
98b46894d8 Updates to pluggins to match the new plugin loader 2016-09-27 11:17:25 +01:00
913d41c86d Update 2016-09-27 11:17:25 +01:00
17a395fbd4 Improved serializability 2016-09-27 11:17:25 +01:00
4485333454 Moved wlauto.core.config.core into wlauto.core.configuration 2016-09-27 11:17:25 +01:00
c51593a729 pluginloader: Updated documentation to say plugin instead of extension 2016-09-27 11:17:25 +01:00
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
a4a428c9ae Merge pull request from ep1cman/locallinux
LocalLinuxManager: Added a local linux manager
2016-02-23 17:04:41 +00:00
d89a52584b bootstrap: Removed and fixed module mapping for extensions 2016-02-23 17:01:53 +00:00
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
0b1b9d304c Fixed WA extensions for AndroidManager
Changed method calls to devlib naming
2016-02-19 15:29:10 +00:00
a3962b6323 AndroidManager: Added AndroidManager
Replaces AndroidDevice
2016-02-19 15:27:18 +00:00
001239dfe4 Fixed WA extensions for LinuxManager
Changed method calls to devlib naming
2016-02-19 15:27:18 +00:00
6f0de17201 LinuxManager: Added LinuxManager
Replaces BaseLinuxDevice & LinuxDevice
2016-02-19 15:26:54 +00:00
1599c1e0ed Devices: Removed Devices
They are now superseded by DeviceManagers
2016-02-19 15:26:54 +00:00
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
cd0186d14e json: Replaced json results processor with a more comprehensive one 2016-02-19 15:23:07 +00:00
de133cddb4 Merge pull request from bjackman/check-config-exists
Add entry_point check for config file existence
2016-02-18 09:02:46 +00:00
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
c203ec8921 Merge pull request from ep1cman/fixes
ApkWorkload: Fixed runtime permission granting
2016-02-15 11:50:36 +00:00
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
693afa3528 Merge pull request from ep1cman/fixes
LinuxDevice: Added as_root to kick_off
2016-02-12 09:55:36 +00:00
5203188d9e LinuxDevice: Added as_root to kick_off 2016-02-12 09:54:14 +00:00
08663209d6 Fix up lmbench commandline 2016-02-11 17:40:31 +00:00
232e4b3e65 Merge pull request from setrofim/master
Adding taskset capability to lmbench + minor fixes.
2016-02-11 09:35:58 +00:00
13ebc8ad55 pep8: removed trailling spaces 2016-02-11 08:22:53 +00:00
759f8db1bc lmbench: adding taskset support
lmbench can now be run pinned to specific CPUs.
2016-02-11 08:22:39 +00:00
9a7cccacab Merge pull request from setrofim/master
dhrystone: fix busybox reference.
2016-02-10 17:45:42 +00:00
288aa764b3 dhrystone: fix busybox reference. 2016-02-10 17:28:33 +00:00
a32cc0f213 Merge pull request from setrofim/master
Minor fixes.
2016-02-10 16:50:17 +00:00