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

666 Commits

Author SHA1 Message Date
Sergei Trofimov
3d8503b056 Fixed run command to the point of invoking the Executor 2017-02-22 08:50:15 +00:00
Sergei Trofimov
dc6d9676f2 Fixing things up to a point where "list" and "show" commands work. 2017-02-22 08:50:15 +00:00
setrofim
92aeca8125 Merge pull request #357 from marcbonnici/TM
Initial commit to move wa codebase and add inital version of Target Manager
2017-02-21 17:39:48 +00:00
Marc Bonnici
c1ca2f98fe Renamed methods 2017-02-21 15:41:30 +00:00
Marc Bonnici
c53242046a Removal of some old version of code. 2017-02-21 15:15:08 +00:00
Marc Bonnici
d99451c8e4 Target Manager Intial Commit 2017-02-21 15:02:28 +00:00
Marc Bonnici
1f1f2b12c6 WA3 Exsisting Code 2017-02-21 15:02:28 +00:00
setrofim
37b0f41d73 Merge pull request #299 from marcbonnici/next_environment_decorators
Decorators: Added initial version of decorators and environment manager
2016-11-30 11:33:42 +00:00
Marc Bonnici
214d04eb8d Decorators: Added initial version of decorators and execution control
Added 3 decorators to enabled methods to be executed conditionally:
- Once for each method instance.
- Once for each class.
- Only once per environment including any derived classes.
Added execution control allowing for different environments to
be used in order to determine how often decorated commands should be ran.
Added relevant unittests for the above decorators.
2016-11-30 10:42:14 +00:00
setrofim
067f76adf3 Merge pull request #259 from ep1cman/next
Next
2016-09-27 11:48:33 +01:00
Sebastian Goscik
467347d5a3 Removed unused imports + print 2016-09-27 11:42:46 +01:00
Sebastian Goscik
97d822c2b7 Configuration: Added a new module for generating the default config file
This commit also adds a missing scription to the `csv` result processor
2016-09-27 11:39:50 +01:00
Sebastian Goscik
1ad0079dcf Plugin: Remove depricated and unecessary code
Removed old code that has since been replaced by new implementations
or is no longer needed.
2016-09-27 11:39:49 +01:00
Sebastian Goscik
71f3467dc8 Configuration: Removed merge_using_priority_specificity
This had moved to now be done by plugin cache so it has been removed
from wlauto.core.configuration.configuration and any referenced to it
have been changed to use plugin cache instead.
2016-09-27 11:39:49 +01:00
Sebastian Goscik
d7106acc42 Configuration: Made parameter lists public
Renamed `__configuration` to `config_points` and in the case of
RunConfiguration it was split into `config_points` and `meta_data`
where `meta_data` contains config points for run meta data like
project name/stage ect.
2016-09-27 11:39:49 +01:00
Sebastian Goscik
9905bb3162 ConfigurationPoints: Added check that default values are POD's
Default config values will now need to be a Plain Old Data type.
This commit includes some ultility functions to help with this check
2016-09-27 11:39:49 +01:00
Sebastian Goscik
d6735db364 init_argument_parser: Changed action for -c to append
WA2 only supported a single config file but the way WA3's configuration
parser works there can be as many and the user needs. They will be prioritied
in the order they are specified. e.g in `wa run agenda.yaml -c 1.yaml -c 2.yaml`
`1.yaml` will be applied first and `2.yaml` will be applied on top of that.
2016-09-27 11:39:49 +01:00
Sebastian Goscik
4e2ca6ce8c cli: Removed wlauto.utils.cli
Having the base arguments in wlauto.core.command make more sense
and wlauto.utils.cli didnt contain anything else.
2016-09-27 11:39:47 +01:00
Sebastian Goscik
1bee34e6bc ConfigParser: Added the ability to not wrap exception messages for ConfigParser
Both AgendaParser and ConfigParsers wrap exceptions with a a message
saying what source of configuration caused the exception. AgendaParser
uses ConfigParser within its load method, this leads to the "Error in foo"
message appearing twice. This lets AgendaParser turn of the wrapping
in ConfigParser
2016-09-27 11:38:35 +01:00
Sebastian Goscik
e95ba608ec Configuration: Added global_aliase
Previously `aliases` was conflated with global_aliases. This commit
fixes this.

`global_alias`'s are a name that can be used in top level configuration
and set the values of one or more plugin parameters that use the same
global_alias.

`aliases` is a list of alternative names for a configuration point.
Currently this is only used for instrumentation/instruments and
workload_name/name but in the future it will likely be used when
parameters have to be renamed to be more meaningful but still
maintain backward compatibility.
2016-09-27 11:38:35 +01:00
Sebastian Goscik
9e6badbdf4 Completed some todos: - Added a dependencies_directory property to WAConfiguration - Added allowed values and better descriptions to configuration points. 2016-09-27 11:38:35 +01:00
Sebastian Goscik
87ee7b1337 Moved iteration status list 2016-09-27 11:38:35 +01:00
Sebastian Goscik
a347ea7d61 Misc fixes & improvements 2016-09-27 11:38:35 +01:00
Sebastian Goscik
49576e5701 Improved _resolve_params_alias 2016-09-27 11:38:35 +01:00
Sebastian Goscik
46fe4a1140 Fixed _construct_valid entry 2016-09-27 11:38:35 +01:00
Sebastian Goscik
b35c7f66bd ConfigParser: Plugin cache now handles plugin & generic config as well as global alias resolution 2016-09-27 11:38:35 +01:00
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