kernelci / kernelci/kernelci-pipeline

Declare where frequently used arguments for Maestro Jobs should be stored

Open
#773 0 comments 0 reactions 0 assignees View on GitHub
techdebt
Dominant language
Python
Stars
11
Forks
40
Avg merge
2d 13h
Merged PRs (30d)
14

Description

Many Maestro Jobs definitions are Jinja2 templates that are rendered before being submitted to a relevant Runtime. They can be adjusted by setting arguments in e.g.

1. `pipeline.yaml` configuration file, section: `jobs: $JOB: params: $PARAM: $ARG`
2. template: `{%- set $PARAM = '$ARG' %}`

[One of the recent PRs dropped the template approach](https://github.com/kernelci/kernelci-pipeline/pull/655/commits/506b90bbef59a85ed21955a1755ab64f6e697881) if the only parameter changed was the `test_method`. After merging https://github.com/kernelci/kernelci-pipeline/pull/705 there might be a need to reuse this approach for Tast/Fluster jobs as well.

[There was an attempt to do so in one of the revisions of #705](https://github.com/kernelci/kernelci-pipeline/compare/1713b7d2741a6045cb68c46c5f36221032876ab7..81c7e32bf4ec8e6b7109e361fb2406f44b8d2fa9#diff-9b246bb942166340d045050f95957271df46333d60ec4b60541af44a2cb36f63) but it was eventually reverted (templates can have only a single `{% extends %}`, other common sections could use e.g. `{% includes %}`).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by comparing the jobs: parameter locations in pipeline.yaml with the Jinja2 template approach described in the issue. Review PRs #655 and #705, including the reverted revision, and determine a consistent convention that also covers Tast and Fluster jobs. Done means the project has an agreed, applicable location for these frequently used arguments.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, yaml
Domain
devops
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.