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

93 Commits

Author SHA1 Message Date
Marc Bonnici
e9839d52c4 output_processor/postgres: Fix out of range for hostid
Change the field type of `hostid` as part of `TargetInfo` from `Int` to
Bigint to prevent some ids from exceeding the maximum value.
2019-10-23 15:45:56 +01:00
Marc Bonnici
0efd20cf59 uiauto: Update all applications to target SDK version 28
On devices running android 9 with google play services, PlayProtect
blocks the installation of our automation apks due to targeting a lower
SDK version. Update all apk builds to target SDK version 28 (Android 9)
however do not change the minimum version to maintain backwards
compatibility.
2019-10-03 12:18:48 +01:00
Sergei Trofimov
2f231b5ce5 fw/target: detect module variations in TargetInfo
- Add modules entry to TargetInfo
- When retrieving TargetInfo from cache, make sure info modules match
  those for the current target, otherwise mark info as stale and
  re-generate.
2019-09-12 15:27:23 +01:00
Marc Bonnici
75878e2f27 uiauto/build_scripts: Update to use python3
Ensure we are invoking python3 when attempting to import `wa` and
update the printing syntax to be compatible.
2019-09-06 11:02:13 +01:00
Marc Bonnici
023cb88ab1 templates/setup: Update package setup template to specify python3 2019-09-06 11:02:13 +01:00
Marc Bonnici
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
Marc Bonnici
b93beb3f1f commands/show: Revert quoting method switch
In commit bb282eb19c devlibs
`escape_double_quotes` method was retired in favour of the `pipes.quote`
method however this does not format correctly for this purpose therefore
revert back to the original escaping method.
2018-12-21 14:05:14 +00:00
Marc Bonnici
0426a966da utils/postgres: Relocate functions to retrieve schema information
Move the functions to retrieve schema information to general utilities to
be used in other classes.
2018-12-07 09:55:17 +00:00
Marc Bonnici
eabe15750c commands/create: Allow for upgrading database schema
Provide a method of upgrading existing postgres databases to a new
schema version.
2018-12-07 09:55:17 +00:00
Marc Bonnici
250bf61c4b postgres: Update schema to v1.2
Update the postgres database schema:
    - Rename "resourcegetters" schema to "resource_getters" for
      consistency
    - Rename "retreies" colum to "retry" to better relflect it purpose
    - Store additional information including:
        - POD serialization data
        - Missing target information
        - JSON formatted runstate
2018-12-07 09:55:17 +00:00
Marc Bonnici
bb282eb19c wa: Remove reference to devlibs escaping methods
As part of https://github.com/ARM-software/devlib/pull/339 the escaping
method are being removed in favour of using `quote` from `pipes` so
also make reflecting changes here.
2018-11-21 15:07:25 +00:00
Marc Bonnici
a2eb6e96e2 commands/process: Fix initialization of ProcessContext ordering
Ensure that that ProcessContext is initialized before attempting to
initialize any of the output processors.
2018-11-19 10:17:53 +00:00
Marc Bonnici
7c3054b54b commands/run: Update run output with final run config
The RunInfo object in the run output is initally created before the
config has been fully parsed therefore attributes for the project and
run name are never updated, once the config has been finalized make sure
to update the relavant information.
2018-10-09 15:26:53 +01:00
Marc Bonnici
9a9a2c0742 commands/create: Add version check for Postgres Server
The 'jsonB' datatype was only added in v9.4 so ensure that the Postgres
server to is running this or later and inform the user if this is not
the case.
2018-09-21 15:06:30 +01:00
Marc Bonnici
a1213cf84e commands/create: Use class name rather than user supplied name
Use the actual name of the plugin instead of the user supplied value,
for consistency and ensure that duplicate entries cannot be specified.
2018-09-21 15:06:30 +01:00
Waleed El-Geresy
bb255de9ad Add WA Create Database Command
Add a command to create a PostgreSQL database with supplied parameters
which draws its structure from the supplied schema (Version 1.1). This
database is of a format intended to be used with the forthcoming WA
Postgres output processor.
2018-09-12 10:13:34 +01:00
Waleed El-Geresy
718f2c1c90 Expose context in OP initialize and finalize
Expose the context to the initialize and finalize functions for Output
Processors. This was found to be necessary for the upcoming PostgreSQL
Output Processor.
2018-09-05 14:40:42 +01:00
Marc Bonnici
42b3f4cf9f commands/create: Add special case for EnergyInstruemntBackends
Previously when using the create command for adding
EnergyInstruemntBackends they were treated like any other plugin and
generated incorrect configuration. Now automatically add the
`energy_measurement` instrument and populate it's configuration with the
relevant defaults for the specified Backend.
2018-08-14 13:41:39 +01:00
Marc Bonnici
1eaffb6744 commands/create: Only add instruments/output processors once
Ensure that instruments and output processors are only added to the
generated agenda once.
2018-08-14 13:41:39 +01:00
Marc Bonnici
778bc46217 commands/process: Add dummy method to ProcessContext
In commit d2ece we are now tracking augmentations which are used during a
run in the run_config via the context when installing augmentations.
Update the Process command and its ProcessContext with a dummy method
to relect this change.
2018-07-26 12:07:17 +01:00
Sergei Trofimov
e4a856ad03 fw/config: preserve included config files
Save included config files, along with the explicitly-specified config
that included them, under run output's __meta/raw_config/.
2018-07-23 16:47:10 +01:00
Marc Bonnici
fbfd81caeb commands/revent: Fix missing target initialization
In commit 8da911 the initialization of the target was split into a
separate method of the TargetManger. Ensure that we call the relevant
 method after creating the manager.
2018-07-19 12:13:14 +01:00
Marc Bonnici
0e69a9808d commands/record: Fix argument validation
When ensuring that at least one stage for a workload recording was
present there was a missing check to see if recording for a workload was
specified.
2018-07-19 12:13:14 +01:00
Marc Bonnici
5714c8e6a1 wa: Additional pylint fixes 2018-07-10 12:56:51 +01:00
Marc Bonnici
791d9496a7 wa: Pylint Fixes for Travis
Pylint has trouble using imports from the distutils module in
virtualenvs so we need to explicitly ignore these imports.
2018-07-10 12:56:51 +01:00
Marc Bonnici
e8b0d42758 wa: PEP8 Fixes 2018-07-10 12:56:51 +01:00
Sergei Trofimov
c410d2e1a1 I lint, therefore I am
Implement fixes for the most recent pylint version.
2018-07-09 15:59:40 +01:00
Marc Bonnici
925bc8b719 wa: pep8 fixes 2018-07-06 14:39:41 +01:00
Sergei Trofimov
4b86fa5aee commands/show: disable pylint
Disable pylint for wa/commands/show.py. Due to changes in recent
versions of pylint, it now takes an excessively long time to
process this file.
2018-07-06 14:39:41 +01:00
Marc Bonnici
dbea1d7d09 wa/commands: pylint fixes 2018-07-06 14:39:41 +01:00
Marc Bonnici
c6ec7af665 wa/commands: pep8 fixes 2018-07-06 14:39:41 +01:00
Sergei Trofimov
8878cc20d4 Update copyright headers.
- Add copyright headers to files that did not already have them
- Update the year to the last year the file was modified in files with
  existing headers.
2018-07-04 16:33:31 +01:00
Marc Bonnici
5892b1de18 commands/revent: Fix missing import 2018-07-04 16:33:08 +01:00
Marc Bonnici
1c60f47440 commands/record: Fix record command description.
All stages are now optional for recording however the record description
has not been updated to reflect this.
2018-06-25 18:19:30 +01:00
Marc Bonnici
df076c68da templates: Add parameter example to UiAutomator template.
Add additional information to the UiAutomator template for retrieving
parameters.
2018-06-25 18:19:30 +01:00
Marc Bonnici
d3cb350461 commands/templates: Update to add optional setup_rerun method 2018-06-25 18:19:30 +01:00
Sergei Trofimov
6486378c89 commands/run: add run.log as an Artifact
Add run.log as an Artifact to the output, once it has been created.
Every file outsize of __meta (excepting result.json) should have an
associated artifact to describe it.
2018-06-22 18:04:16 +01:00
Marc Bonnici
7cb9f05bbe commands/revent: Add dummy method to LightContext
Add a dummy method to the LightContext to satisfy the API as we
do not record metadata when performing revent recordings.
2018-06-19 18:36:23 +01:00
Sergei Trofimov
88731fe489 command/revent: Fix resolver call
Call resolver's get() method, rather than get_resource(), incorrectly
introduced in the previous commit. Also add get() alias to the context
to allow it to be used as a resolver.
2018-06-18 17:47:44 +01:00
Sergei Trofimov
4a06c13738 commands/revent: add get_resource to LightContext
Since 2ff06af63, resources are obtained via context.get_resource, rather
than context.resolve.get_resource. LightContext used by the record
command was not updated to implement that method. This fixes the issue
2018-06-18 15:16:02 +01:00
Sergei Trofimov
dfa55c1322 commands/list: add "augmentations" and "all"
Allow specifying "augmentations" and "all" as the plugin kind to lost.
In the case of of the former, instruments and output processors get
listed. In the case of the latter, every plugin kind gets listed.
2018-06-15 12:09:23 +01:00
Sergei Trofimov
bab5f89283 commands/list: add blank line at the end 2018-06-15 12:09:23 +01:00
Sergei Trofimov
21784d1351 command/process: write job_output result
Write job_output result to make sure the serialized version gets
updated.
2018-06-15 10:53:32 +01:00
Sergei Trofimov
b3de85455a Add support for Python 3
Add support for running under Python 3, while maintaining compatibility
with Python 2.

See http://python-future.org/compatible_idioms.html for more details
behind these changes.
2018-06-07 14:48:40 +01:00
Sergei Trofimov
79141582e9 fw/workload: record app version in metadata
Add the package version for an ApkWorkload to the metadata for that job.
2018-05-25 10:21:06 +01:00
Sergei Trofimov
76f436d770 commands/show: handle aliases
Replace the ad-hoc get_plugin() function in the show command (which was
broken for aliases) with a call to pluginloader.get_plugin_class(),
which correctly handles alias resolution.
2018-05-23 14:51:54 +01:00
Sergei Trofimov
712e64458c commands/show: add missing blank lines 2018-05-23 14:51:54 +01:00
Sergei Trofimov
887cdcc411 commands/show: change man section to 7
Change the man page section from 1 7. "Misc. information" is more
appropriate for plugin documentation than "Executable commands".
2018-05-18 16:50:48 +01:00
Sergei Trofimov
ed1553816b commands/process: write result in the end
Running additional processors will generate new metrics and artifacts.
Update the serialized metadata with the new artifacts/metrics after
running all processors.
2018-05-14 17:05:06 +01:00
Sergei Trofimov
8a219d0e5a commands/process: improve logging
- Add a logging to indicate what is being processed.
- Log to file.
2018-05-14 17:05:06 +01:00