1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2025-06-23 00:35:56 +01:00
Commit Graph

1876 Commits

Author SHA1 Message Date
c1e095be51 output_processors/postgresql: Ensure still connected to the database
Before exporting output to ensure that we are still connected to the
database. The connection may be dropped so reconnect if necessary, this
is a more of an issue with longer running jobs.
2019-08-28 11:33:46 +01:00
eeebd010b9 output_processors/postgresql: Group database connection operations
Refactors connection operations into the `connect_to_database`
method.
2019-08-28 11:33:46 +01:00
e387e3d9b7 Update to remove Python2 as supported version. 2019-07-19 17:07:46 +01:00
6042fa374a fw/version: Version Bump 2019-07-19 17:07:46 +01:00
050329a5ee fw/version: Update version for WA and required devlib v3.1.4 2019-07-19 16:37:00 +01:00
d9e7aa9af0 Dockerfile: Update to use the latest versions of WA and devlib 2019-07-19 16:37:00 +01:00
125cd3bb41 docs/changes: Changelog for v3.1.4 2019-07-19 16:37:00 +01:00
75ea78ea4f docs/faq: Fix formatting 2019-07-19 16:37:00 +01:00
12bb21045e instruments/SysfsExtractor: Add extracted directories as artifacts
Add the directories that have been extracted by the `SysfsExtractor` and
derived instruments as artifacts.
2019-07-19 16:36:11 +01:00
4bb1f4988f fw/DatabaseOutput: Only attempt to extract config if avaliable
Do not try to parse `kernel_config` if no data is present.
2019-07-19 16:36:11 +01:00
0ff6b4842a fw/DatabaseOutput: Fix the retrieval of job level artifacts 2019-07-19 16:36:11 +01:00
98b787e326 fw/DatabaseOutput: Enabled retrieving of directory artifacts
To provide the same user experience of accessing a directory
artifact from a standard `wa_output` when attempting to retrieve the
path of the artifact extract the stored tar file and extract it to a
temporary location on the host returning the path.
2019-07-19 16:36:11 +01:00
e915436661 commands/postgres: Upgrade the data base schema to v1.3
Upgrade the database schema to reflect the additions of directory
artifacts and the missing TargetInfo property.
2019-07-19 16:36:11 +01:00
68e1806c07 output_processors/postgresql: Add support for new directory Artifacts
Reflecting the addition to being able to store directories as Artifacts
enable uploading of a directory as a compressed tar file rather than
storing the file directly.
2019-07-19 16:36:11 +01:00
f19ebb79ee output_processors/postgresql: Add missing system_id field
When storing the `TargetInfo` the `system_id` attribute was ommited.
2019-07-19 16:36:11 +01:00
c950f5ec8f utils/postgres: Fix formatting 2019-07-19 16:36:11 +01:00
6aaa28781b fw/Artifact: Allows adding directories as artifacts
Adds a `is_dir` property to an `Artifact` to indicate that the
artifact represents a directory rather than an individual file.
2019-07-19 16:36:11 +01:00
d87025ad3a output_processors/postgres: Fix empty iterable
In the case of an empty iterable an empty string would be returned
however this was not an valid value so ensure that the brackets are
always inserted into the output.
2019-07-19 16:36:11 +01:00
ac5819da8e output_processors/postgres: Fix incorrect dict keys 2019-07-19 16:36:11 +01:00
31e08a6477 instruments/interrupts: Add interrupt files as artifacts
Ensure that the interrupt files pulled and diffed from the device are
added as artifacts.
2019-07-19 16:36:11 +01:00
47769cf28d Add a workload for Motionmark tests 2019-07-19 14:31:04 +01:00
d8601880ac setup.py: Add README as package description
Add the project README to be displayed as the project description on
PyPI.
2019-07-18 15:17:24 +01:00
0efc9b9ccd setup.py: Clean up extra dependencies
- Remove unused dependencies left over from WA2.
- Allow installing of the `daqpower` module as an option dependency.
2019-07-18 15:17:24 +01:00
501d3048a5 requirements: Add initial version
Adds a "requirements.txt" to the project. This will not be used during a
standard installation however will be used to indicate which are known
working packages in cases of conflicts.

Update README and documentaion to reflect this.
2019-07-18 15:17:24 +01:00
c4daccd800 README: Update installation instruction to match documentation.
When installing from github we recommend installing with setup.py as
install with pip does not always resolve dependencies correctly.
2019-07-18 15:17:24 +01:00
db944629f3 setup.py: Update classifiers 2019-07-18 15:17:24 +01:00
564738a2ad workloads/monoperf: Fix typos 2019-07-18 15:17:24 +01:00
c092128e94 workloads: Sets requires_network attribute for workloads
Both speedometer and aitutu require internet to function however this
attribute was missing from the workloads.
2019-07-18 15:17:24 +01:00
463840d2b7 docs/faq: Add question about non UTF-8 environments. 2019-07-12 13:32:28 +01:00
43633ab362 extras/Dockerfile: Ensure we are using utf-8 in our docker container
For compatibility we want to be using utf-8 by default when we interact
with files within WA so ensure that our environment is configured
accordingly.
2019-07-12 13:32:28 +01:00
a6f0ab31e4 fw/entrypoint: Add check for system default encoding
Check what the default encoding for the system is set to. If this is not
configured to use 'UTF-8', log a warning to the user as this is known
to cause issues when attempting to parse none ascii files during operation.
2019-07-12 13:32:28 +01:00
72fd5b5139 setup.py: Set maximum package version for python2.7 support
In the latest versions of panadas and numpy python2.7 support has been
dropped therefore restrict the maximum version of these packages.
2019-07-08 13:46:35 +01:00
766bb4da1a fw/uiauto: Allow specifying landscape and portrait orientation
Previously the `setScreenOrientation` function only accepted relative
orientations, this causes issue when attempt to use across tablets and
phones with different natural orientations. Now take into account the
current orientation and screen resolution to allow specifying portrait vs
landscape across different types of devices.
2019-07-04 13:18:48 +01:00
a5f0521353 utils/types: Fix typos 2019-06-28 17:56:13 +01:00
3435c36b98 fw/workload: Improve version matching and error propergation
Ensure that the appropriate error message is returned to the user to
outline what caused the version matching to fail.
Additionally fix the case where if specifying a package name directly
the version matching result would be ignored.
2019-06-28 17:56:13 +01:00
bd252a6471 fw/workload: Introduce max / min versions for apks
Allow specifying a maximum and minimum version of an APK to be used for
a workload.
2019-06-28 17:56:13 +01:00
f46851a3b4 utils/types: Add version_tuple
Allow for `version_tuple` to be used more generically to enable
natural comparing of versions encoded as strings.
2019-06-28 17:56:13 +01:00
8910234448 fw/workload: Don't override the package manager for ApkRevent workloads
`ApkRevent` workloads should be able to use the same Apk selection
criteria as `ApkWorkloads` therefore rely on the superclass to
instantiate the `PackageHandler`.
2019-06-28 17:56:13 +01:00
1108c5701e workloads: Update to better utilize cleanup_assets and uninstall
Update the workload classes to attempt and standardize the use of the
`cleanup_assets` parameter and the newly added `uninstall` parameter
2019-06-28 17:54:04 +01:00
f5d1a9e94a fw/workload: Add the uninstall parameter to the base workload class
In additional to being able to specify whether the APK should be
uninstalled as part of a `APKWorkload`s teardown add the `uninstall`
parameter to the base `workload` class in order to specify whether any
binaries installed for a workload should be uninstalled again.
2019-06-28 17:54:04 +01:00
959106d61b fw/workload: Update description of cleanup_assests parameter
Improve the description of the parameter as the parameter may be used in
other places aside from the teardown method.
2019-06-28 17:54:04 +01:00
0aea3abcaf workloads: Add support for UIBench Jank Tests
Add a workload that launches UIBenchJankTests. This differs from the
UIBench application as it adds automation and instrumentation to that
APK. This therefore requires a different implementation than classical
ApkWorkloads as 2 APKs are required (UIBench and UIBenchJankTests) and
the main APK is invoked through `am instrument` (as opposed to `am
start`).
2019-06-28 09:27:56 +01:00
24ccc024f8 framework.workload: am instrument APK manager
Add support for Android applications that are invoked through `am
instrument` (as opposed to `am start`) _i.e._ that have been
instrumented. See AOSP `/platform_testing/tests/` for examples of such
applications.
2019-06-28 09:27:56 +01:00
42ab811032 workloads/lmbench: Fix missing run method declaration 2019-06-19 11:28:28 +01:00
832ed797e1 fw/config/execution: Raise error if no jobs are available for running
If no jobs have been generated that are available for running then WA
will crash when trying to access the job queue. Add an explicit check to
ensure that a sensible error is raised in this case, for example if
attempting to run a specific job ID that is not found.
2019-06-06 15:17:42 +01:00
31b44e447e setup.py: Add missing dependency for building documentation
In later versions of sphinx the rtd theme needs installing explicitly
as it is no longer included in the main package.
2019-06-04 14:53:59 +01:00
179b2e2264 Dockerfile: Update to install all available extras for WA and devlib
Install all extras of WA and devliv to be able to use all available
features within the docker container.
2019-06-04 14:53:59 +01:00
22437359b6 setup.py: Change short hand to install all extras to all
In our documentation we detail being able to install the `all` extra
as a shorthand for installing all the available extra packages that WA
may require however this was actually implemented as `everything`.
2019-06-04 14:53:59 +01:00
2347c8c007 setup.py: Add postgres dependency in extras list 2019-06-04 14:53:59 +01:00
52a0a79012 build_plugin_docs: Pylint fix
Fix various pylint warnings.
2019-06-04 14:53:20 +01:00