1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2024-10-05 18:31:12 +01:00
Commit Graph

2064 Commits

Author SHA1 Message Date
Marc Bonnici
a3cf2e5650 descriptor: Fix overriding of parameters
Make sure we only override parameters that are present in the current
config. This allows for connection parameters to be supplied for a
platform but only overridden if required for the connection.
2020-04-16 09:44:17 +01:00
Marc Bonnici
607cff4c54 framework: Lock files which could be read/written to concurrently
Add file locking to files that could be read and written to concurrently
by separate wa processes causing race conditions.
2020-04-09 09:14:39 +01:00
Marc Bonnici
d56f0fbe20 utils/misc: Add file locking context manager
Enable automation locking and unlocking of a file path provided. Used to
prevent synchronisation issues between multiple wa processes.
2020-04-09 09:14:39 +01:00
Marc Bonnici
0f9c20dc69 target/descriptor: Add support for connection parameter overriding.
Allow for overriding connection parameters on a per platform basis, and
make the `host` parameter for `Juno` optional as this can be auto
detected via the serial connection.
2020-04-09 09:10:11 +01:00
Marc Bonnici
310bad3966 target/descriptor: Rework how parameter defaults are overridden.
Instead of supplying only the parameter name and value to be set as a
default, allow for replacing the entire parameter object as this allow
more control over what needs overriding for a particular platform.
2020-04-09 09:10:11 +01:00
Marc Bonnici
a8abf24db0 fw/descriptor: Add unsupported_platforms for a particular target
Allow for specifying a list of `Platforms` that a particular target does
not support, e.g. 'local_juno'
2020-04-09 09:10:11 +01:00
Marc Bonnici
dad0a28b5e logcat_parsing: Replace errors when decoding logcat output
Some devices print non standard characters to logcat. If an error
occurs when parsing the output, replace the offending character instead
of raising an error.
2020-04-07 14:15:24 +01:00
Marc Bonnici
2cd4bf7e31 Add initial issue templates. 2020-04-02 10:18:47 +01:00
Rob Freeman
5049e3663b Force speedometer to use chrome and change to ApkUiAutoWorkload
* Workload was failing when chrome was not set as default broser so
  altered to use chrome every time.

* Changed workload to an ApkuiAutoWorkload since chrome is now a
  dependency.

* Refactored opening speedometer to new method.

* Added wait time for scores to show up when test finished.
2020-03-31 10:49:25 +01:00
Rob Freeman
c9ddee761a Update framework to wait for object before dismissing chrome popup
* Added wait for exist for google terms accept.

* Reduced wait time for device sync negative button to reduce workload run
  time.
2020-03-31 10:49:25 +01:00
scojac01
3be00b296d Androbench: Handle storage permissions prompt.
Updating the workload to handle the storage permissions that present themselves on certain devices.
2020-03-25 18:21:43 +00:00
scojac01
9a931f42ee Handle the common chrome browser popup messages.
The Chrome browser presents a number of popups when run for
the first time. This update handles those popup messages.
2020-03-25 16:35:04 +00:00
Marc Bonnici
06ba8409c1 target/descriptor: Make strict_host_check default to False
The majority of users will not find a benefit of the additional
check so make this parameter default to `False` instead.
2020-03-12 11:21:07 +00:00
Marc Bonnici
2da9370920 target/descriptor: Ensure we set a default SSH port. 2020-03-06 19:16:47 +00:00
Marc Bonnici
ef9b4c8919 fw/version: Dev version bump
Bump the dev version of WA and required devlib version to ensure
that both repos stay in sync to accommodate the SSH interface
change.
2020-03-06 17:34:30 +00:00
Marc Bonnici
31f4c0fd5f fw/descriptor: Add parameter list for Telenet connections.
`TelnetConnection` no longer uses the same parameter list as
`SSHConnection` so create it's own parameter list.
2020-03-06 17:34:30 +00:00
Marc Bonnici
62ca7c0c36 fw/SSHConnection: Deprecated parameters for Parimiko implementation
Deprecate parameters for the new implementation of the SSHConnection
based on Parimiko.
2020-03-06 17:34:30 +00:00
Marc Bonnici
d0f099700a fw/ConfigutationPoints: Add support for deprecated parameters
Allow specifying a ConfigutationPoint is deprecated. This means that any
supplied configuration will not be used however execution will continue
with a warning displayed to the user.
2020-03-06 17:34:30 +00:00
Sergei Trofimov
5f00a94121 utils/types: fix toggle_set creation
Correctly handle the presence of both an element and its toggle in the
input, and handle them base on order, e.g.

toggle_set(['x', 'y', '~x']) --> {'y', '~x'}
toggle_set(['~x', 'y', 'x']) --> {'y', 'x'}
2020-02-19 17:02:58 +00:00
Sergei Trofimov
0f2de5f951 util/exec_control: add once_per_attribute_value
Add a decorator to run a method once for all instances that share the
value of the specified attribute.
2020-02-07 16:49:48 +00:00
Sergei Trofimov
51ffd60c06 instruments: add proc_stat
Add an instrument that monitors CPU load using data from /proc/stat
2020-02-07 14:11:31 +00:00
Marc Bonnici
0a4164349b
Merge pull request #1065 from setrofim/doc-fix
doc: fix Instrument documentation
2020-02-04 13:28:57 +00:00
Sergei Trofimov
fe50d75858 fw/instrument: derive Instrument from TargetedPlugin
Change Instrument to derive from TargetedPlugin rather than Plugin,
which it should have been all along.
2020-02-04 13:28:48 +00:00
Sergei Trofimov
b93a8cbbd6 doc: fix Instrument documentation
Remove reference to `extract_results`, which does not exist for
Instruments (this only exists for Workloads.)
2020-02-04 12:49:14 +00:00
Sergei Trofimov
79dec810f3 fw/plugin: move cleanup_assets to TargetedPlugin
Move cleanup_assets from Workload up into TargetedPlugin. This way,
Instruments may also utilize it if they deploy assets.

More generally, it makes sense for it to be inside TargetedPlugin, as
any plugin that interacts with the target may conceivably need to clean
up.
2020-02-04 10:43:26 +00:00
Marc Bonnici
44cead2f76 fw/workload: Prefix TestPackages with "test_"
Previously, when pulling an apk from the target to the host, the default
package name was used for both regular apks and test apks. This could
result in one overwriting the other. To prevent this ensure
`TestPackages` have the "test_" prefixed to their filename.
2020-02-03 14:55:39 +00:00
Marc Bonnici
c6d23ab01f workloads/exoplayer: Support Android 10
Android 10 appears to use a new format in logcat when displaying the
PlayerActivity. Update the regex to suport both formats.
2020-01-27 15:00:33 +00:00
Marc Bonnici
6f9856cf2e pcmark: Update popup dismissal to be case insensitive.
Some devices use difference capitalisation so ignore case when matching.
2020-01-21 15:46:14 +00:00
Sergei Trofimov
0f9331dafe fw/job: copy classifiers from the spec
Now that classifiers may be added to the job during execution, its
classifiers dict should be unique to each job rather than just returning
them form spec (which may be shared between multiple jobs.)
2020-01-17 17:07:52 +00:00
Sergei Trofimov
659e60414f fw/exec: Add add_classifier() method
Add add_classifier() method to context. Allow plugins to add classifiers
to the current job, or the run as a whole. This will ensure that the new
classifiers are propagated to all relevant current and future artifacts
and metrics.
2020-01-17 16:38:58 +00:00
Sergei Trofimov
796f62d924 commands/process: partial results + write info
- Correct handling of skipped jobs -- the output directory would not
  have been generated, so do not try to write it.
- Do not attempt to process runs that are in progress, unless forced,
  and do not try to process jobs that have not completed yet.
- Write the run info as well as the result, allowing output processors
  to modify it (e.g. adjusting run names).
2020-01-17 10:59:56 +00:00
Marc Bonnici
f60032a59d fw/target/manager: Update to use module_name_set
Allow for comparing which modules are installed on a Target when
additional module configuration is present.
2020-01-16 15:55:29 +00:00
Marc Bonnici
977ce4995d utils/types: Add module_name_set type
The list of modules retrieved from a `Target` may include configuration
as a dictionary. This helper function will produce a set of only the
module names allowing for comparison.
2020-01-16 15:55:29 +00:00
scojac01
a66251dd60 Antutu: Updating to work with major version 8.
The update to Antutu major version 8 has changed a lot of element names.
There have also been changes to the tests run in three of the four categories.

This commit handles those updates while also retaining backwards compatibility
with major version 7.
2020-01-15 12:59:43 +00:00
Marc Bonnici
d3adfa1af9 fw/getters: Pylint fix 2020-01-14 13:24:51 +00:00
Marc Bonnici
39a294ddbe utils/types: Update version_tuple to allow splitting on "-"
Some Apks use "-" characters to separate their version and identifier so
treat as a separator value.
2020-01-14 13:24:51 +00:00
Marc Bonnici
164095e664 utils/types: Update version_tuple to use strings
The versionName field of an apk allows for containing non-numerical
characters so update the type to be a string.
2020-01-14 13:24:51 +00:00
Sergei Trofimov
24a4a032db fw/getters: update Executable resolution
Use Executable.match() rather than just checking the path inside
get_from_location(); this allows for alternative matching semantics
(e.g. globbing) inside derived implementations.
2020-01-10 13:56:11 +00:00
Sergei Trofimov
05857ec2bc utils/cpustates: update idle state naming
If idle state names for a cpu could not be discovered, use "idle[N]"
where N is the state number, instead of just making them all as
"unknown".
2020-01-10 13:32:40 +00:00
Sergei Trofimov
fd8a7e442c utils/trace_cmd: update for Python 3
re._pattern_type became re.Pattern in Python 3.
2020-01-10 13:31:30 +00:00
Marc Bonnici
dfb4737e51 Development version bump 2019-12-20 16:25:01 +00:00
Marc Bonnici
06518ad40a Version bump for release 2019-12-20 16:07:10 +00:00
Marc Bonnici
009fd831b8 docs/changelog: Update changelog for version 3.2 release. 2019-12-20 16:07:10 +00:00
Marc Bonnici
88284750e7 Dockerfile: Update to reference new release of WA and devlib 2019-12-20 16:07:10 +00:00
Marc Bonnici
8b337768a3 Dockerfile: Update ubuntu base to 19.10 2019-12-20 16:07:10 +00:00
Marc Bonnici
38aa9d12bd fw/entrypoint: Fix devlib version check
That absence of a value in the "dev" version field indicates a release
version, ensure this is taken into account when comparing version numbers.
2019-12-20 16:07:10 +00:00
Marc Bonnici
769c883a3a requirements: Update to latest known working package versions 2019-12-20 16:07:10 +00:00
Marc Bonnici
90db655959 instrument/perf: Fix incorrect argument 2019-12-20 16:07:10 +00:00
Marc Bonnici
817d98ed72 wa/instruments: Refactor collectors to use Collector Inferface
Update the WA instruments which rely on the refactored devlib collectors
to reflect the new API.
2019-12-20 15:17:01 +00:00
scojac01
d67668621c Geekbench: Adding 4.4.2 as a supported version
There have been no UI changes to the application so simply adding the
new supported version to the list of accepted versions.
2019-12-19 14:18:10 +00:00