1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2024-10-06 02:41:11 +01:00
workload-automation/wa/commands/templates/apk_workload

61 lines
2.3 KiB
Plaintext

from wa import Parameter, ApkWorkload
class ${class_name}(ApkWorkload):
name = '${name}'
description = "This is an placeholder description"
# Replace with a list of supported package name(s) in the APK file(s).
package_names = ['package_name']
parameters = [
# Workload parameters go here e.g.
Parameter('example_parameter', kind=int, allowed_values=[1,2,3],
default=1, override=True, mandatory=False,
description='This is an example parameter')
]
def __init__(self, target, **kwargs):
super(${class_name}, self).__init__(target, **kwargs)
# Define any additional attributes required for the workload
def init_resources(self, resolver):
super(${class_name}, self).init_resources(resolver)
# This method may be used to perform early resource discovery and
# initialization. This is invoked during the initial loading stage and
# before the device is ready, so cannot be used for any device-dependent
# initialization. This method is invoked before the workload instance is
# validated.
def initialize(self, context):
super(${class_name}, self).initialize(context)
# This method should be used to perform once-per-run initialization of a
# workload instance.
def validate(self):
super(${class_name}, self).validate()
# Validate inter-parameter assumptions etc
def setup(self, context):
super(${class_name}, self).setup(context)
# Perform any necessary setup before starting the application
def setup_rerun(self, context):
super(${class_name}, self).setup(context)
# If the workloads has the `requires_rerun` attribute set to `True` this
# method may be used to perform any necessary setup for the rerun of the
# application.
def extract_results(self, context):
super(${class_name}, self).extract_results(context)
# Extract results on the target
def update_output(self, context):
super(${class_name}, self).update_output(context)
# Update the output within the specified execution context with the
# metrics and artifacts form this workload iteration.
def teardown(self, context):
super(${class_name}, self).teardown(context)
# Perform any final clean up for the Workload.