[yocto] [PATCH] [yocto-ab-helper] scripts/run-jinja-parser: Add Jinja2 parser extension in autobuilder

Richard Purdie richard.purdie at linuxfoundation.org
Fri Jul 6 06:29:42 PDT 2018


On Fri, 2018-07-06 at 17:15 +0800, Aaron Chan wrote:
> This patch is introduced as a feature in 2.6 M2 to support the
> extension of autobuilder to LAVA (Linaro Automated Validation
> Architecture).
> run-jinja2-parser loads lava config module and generates LAVA job
> config in a YAML format before its triggers LAVA server to execute a
> task.

I don't have much lava knowledge but at a quick glance this may be ok,
apart from one of the file names which I've commented on below.

> Signed-off-by: Aaron Chan <aaron.chun.yew.chan at intel.com>
> ---
>  lava/device/bsp-packages.jinja2 | 43 ++++++++++++++++++
>  scripts/lava.py                 | 76
> ++++++++++++++++++++++++++++++++
>  scripts/run-jinja-parser        | 97
> +++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 216 insertions(+)
>  create mode 100644 lava/device/bsp-packages.jinja2
>  create mode 100644 scripts/lava.py
>  create mode 100755 scripts/run-jinja-parser
> 
> diff --git a/lava/device/bsp-packages.jinja2 b/lava/device/bsp-packages.jinja2
> new file mode 100644
> index 0000000..61fbcad
> --- /dev/null
> +++ b/lava/device/bsp-packages.jinja2
> @@ -0,0 +1,43 @@
> +device_type: {{ device_type }}
> +job_name: {{ job_name }}
> +timeouts: 
> +  job:
> +    minutes: {{ timeout.job.minutes }}
> +  action:
> +    minutes: {{ timeout.action.minutes }}
> +  connection:
> +    minutes: {{ timeout.connection.minutes }}
> +priority: {{ priority }}
> +visibility: {{ visibility }}
> +actions:
> +- deploy:
> +    timeout:
> +      minutes: {{ deploy.timeout }}
> +    to: {{ deploy.to }}
> +    kernel:
> +      url: {{ deploy.kernel.url }}
> +      type: {{ deploy.kernel.type }}
> +    modules:
> +      url: {{ deploy.modules.url }}
> +      compression: {{ deploy.modules.compression }}
> +    nfsrootfs:
> +      url: {{ deploy.nfsrootfs.url }}
> +      compression: {{ deploy.nfsrootfs.compression }}
> +    os: {{ deploy.os }}
> +- boot:
> +    timeout:
> +      minutes: {{ boot.timeout }}
> +    method: {{ boot.method }}
> +    commands: {{ boot.commands }}
> +    auto_login: { login_prompt: {{ boot.auto_login.login_prompt }},
> username: {{ boot.auto_login.username }} }
> +    prompts:
> +      - {{ boot.prompts }}
> +- test:
> +    timeout:
> +      minutes: {{ test.timeout }}
> +    name: {{ test.name }}
> +    definitions:
> +    - repository: {{ test.definitions.repository }}
> +      from: {{ test.definitions.from }}
> +      path: {{ test.definitions.path }}
> +      name: {{ test.definitions.name }}
> diff --git a/scripts/lava.py b/scripts/lava.py
> new file mode 100644
> index 0000000..be18529
> --- /dev/null
> +++ b/scripts/lava.py

I'm not sure we want to call this "lava.py". Would something like
"lava-conf-intelqa-minnowboard.py" be a better description (as that is
what it appears to be)?

Should configuration files be places somewhere outside scripts?

Cheers,

Richard


More information about the yocto mailing list