Re: [PATCH 1/2] gen_hosts: refactor monolithic hosts.j2 template into per-workflow templates
Chuck Lever <[email protected]>
| Newsgroups | dev.linux.lists.kdevops |
|---|---|
| Organization | kernel.org |
| Message-ID | <[email protected]> |
On 8/29/25 6:56 AM, Luis Chamberlain wrote: > The hosts.j2 template had become unwieldy spaghetti code with all workflows > mixed together in a single file, making it difficult to read, maintain, and > extend. This was particularly problematic when attempting to add new features. > > This refactoring: > - Splits the monolithic hosts.j2 into individual workflow templates under > playbooks/roles/gen_hosts/templates/workflows/ > - Creates dedicated templates for each workflow (fstests, blktests, selftests, > mmtests, sysbench, ai, fio-tests, etc.) > - Converts the main hosts.j2 to use Jinja2 includes for cleaner organization > - Maintains exact same functionality with improved maintainability > - Removes workflow-specific template overrides from all workflow Makefiles > as they now all use the unified hosts.j2 template > > Benefits: > - Each workflow template is now self-contained and easy to understand > - Adding new workflows no longer requires navigating through hundreds of > lines of unrelated configuration > - Template logic is easier to debug and test > - All workflows now use a consistent template system > > This is a pure refactoring with no functional changes. The generated hosts > files remain identical to the previous implementation. > > Generated-by: Claude AI > Signed-off-by: Luis Chamberlain <[email protected]> > --- > playbooks/roles/gen_hosts/templates/hosts.j2 | 264 +++--------------- > .../roles/gen_hosts/templates/workflows/ai.j2 | 99 +++++++ > .../gen_hosts/templates/workflows/blktests.j2 | 58 ++++ > .../gen_hosts/templates/workflows/cxl.j2 | 7 + > .../gen_hosts/templates/workflows/default.j2 | 62 ++++ > .../templates/workflows/fio-tests.j2 | 38 +++ > .../gen_hosts/templates/workflows/fstests.j2 | 72 +++++ > .../gen_hosts/templates/workflows/gitr.j2 | 41 +++ > .../gen_hosts/templates/workflows/ltp.j2 | 41 +++ > .../gen_hosts/templates/workflows/mmtests.j2 | 77 +++++ > .../gen_hosts/templates/workflows/nfstest.j2 | 41 +++ > .../gen_hosts/templates/workflows/pynfs.j2 | 7 + > .../templates/workflows/reboot-limit.j2 | 33 +++ > .../templates/workflows/selftests.j2 | 53 ++++ > .../gen_hosts/templates/workflows/sysbench.j2 | 53 ++++ > workflows/ai/Makefile | 3 +- > workflows/blktests/Makefile | 3 +- > workflows/cxl/Makefile | 3 +- > workflows/fio-tests/Makefile | 3 +- > workflows/fstests/Makefile | 3 +- > workflows/gitr/Makefile | 3 +- > workflows/linux/Makefile | 3 +- > workflows/ltp/Makefile | 3 +- > workflows/mmtests/Makefile | 3 +- > workflows/nfstest/Makefile | 3 +- > workflows/pynfs/Makefile | 3 +- > workflows/selftests/Makefile | 3 +- > workflows/sysbench/Makefile | 3 +- > 28 files changed, 741 insertions(+), 244 deletions(-) > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/ai.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/blktests.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/cxl.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/default.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/fio-tests.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/fstests.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/gitr.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/ltp.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/mmtests.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/nfstest.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/pynfs.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/reboot-limit.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/selftests.j2 > create mode 100644 playbooks/roles/gen_hosts/templates/workflows/sysbench.j2 > > diff --git a/playbooks/roles/gen_hosts/templates/hosts.j2 b/playbooks/roles/gen_hosts/templates/hosts.j2 > index 0e896481..2f2f5d41 100644 > --- a/playbooks/roles/gen_hosts/templates/hosts.j2 > +++ b/playbooks/roles/gen_hosts/templates/hosts.j2 > @@ -5,242 +5,44 @@ proper identation. We don't need identation for the ansible hosts file. > Each workflow which has its own custom ansible host file generated should use > its own jinja2 template file and define its own ansible task for its generation. > #} > -{% if kdevops_workflows_dedicated_workflow %} > +{% if kdevops_declared_hosts is defined and kdevops_declared_hosts %} > +{# Use declared hosts that skip bringup process - for bare metal or pre-existing infrastructure #} > +{% include 'workflows/declared-hosts.j2' %} > +{% elif kdevops_workflows_dedicated_workflow %} > +{# Include workflow-specific template based on enabled workflow. Each workflow has its own > + template file under workflows/ directory for better maintainability and modularity #} > {% if workflows_reboot_limit %} > -[all] > -localhost ansible_connection=local > -{{ kdevops_host_prefix }}-reboot-limit > -{% if kdevops_baseline_and_dev %} > -{{ kdevops_host_prefix }}-reboot-limit-dev > -{% endif %} > - > -[all:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -[baseline] > -{{ kdevops_host_prefix }}-reboot-limit > - > -[baseline:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% if kdevops_baseline_and_dev %} > -[dev] > -{{ kdevops_host_prefix }}-reboot-limit-dev > - > -[dev:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% endif %} > -[reboot-limit] > -{{ kdevops_host_prefix }}-reboot-limit > -{% if kdevops_baseline_and_dev %} > -{{ kdevops_host_prefix }}-reboot-limit-dev > -{% endif %} > - > -[reboot-limit:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > +{% include 'workflows/reboot-limit.j2' %} > {% elif kdevops_workflow_enable_fio_tests %} > -[all] > -localhost ansible_connection=local > -{{ kdevops_host_prefix }}-fio-tests > -{% if kdevops_baseline_and_dev %} > -{{ kdevops_host_prefix }}-fio-tests-dev > -{% endif %} > - > -[all:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -[baseline] > -{{ kdevops_host_prefix }}-fio-tests > - > -[baseline:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% if kdevops_baseline_and_dev %} > -[dev] > -{{ kdevops_host_prefix }}-fio-tests-dev > - > -[dev:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% endif %} > -[fio_tests] > -{{ kdevops_host_prefix }}-fio-tests > -{% if kdevops_baseline_and_dev %} > -{{ kdevops_host_prefix }}-fio-tests-dev > -{% endif %} > - > -[fio_tests:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -[service] > - > -[service:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > -{% elif kdevops_workflow_enable_ai %} > -{% if ai_enable_multifs_testing|default(false)|bool %} > -{# Multi-filesystem section-based hosts #} > -[all] > -localhost ansible_connection=local > -{% for node in all_generic_nodes %} > -{{ node }} > -{% endfor %} > - > -[all:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -[baseline] > -{% for node in all_generic_nodes %} > -{% if not node.endswith('-dev') %} > -{{ node }} > -{% endif %} > -{% endfor %} > - > -[baseline:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% if kdevops_baseline_and_dev %} > -[dev] > -{% for node in all_generic_nodes %} > -{% if node.endswith('-dev') %} > -{{ node }} > -{% endif %} > -{% endfor %} > - > -[dev:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% endif %} > -[ai] > -{% for node in all_generic_nodes %} > -{{ node }} > -{% endfor %} > - > -[ai:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{# Individual section groups for multi-filesystem testing #} > -{% set section_names = [] %} > -{% for node in all_generic_nodes %} > -{% if not node.endswith('-dev') %} > -{% set section = node.replace(kdevops_host_prefix + '-ai-', '') %} > -{% if section != kdevops_host_prefix + '-ai' %} > -{% if section_names.append(section) %}{% endif %} > -{% endif %} > -{% endif %} > -{% endfor %} > - > -{% for section in section_names %} > -[ai_{{ section | replace('-', '_') }}] > -{{ kdevops_host_prefix }}-ai-{{ section }} > -{% if kdevops_baseline_and_dev %} > -{{ kdevops_host_prefix }}-ai-{{ section }}-dev > -{% endif %} > - > -[ai_{{ section | replace('-', '_') }}:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% endfor %} > -{% else %} > -{# Single filesystem hosts (original behavior) #} > -[all] > -localhost ansible_connection=local > -{{ kdevops_host_prefix }}-ai > -{% if kdevops_baseline_and_dev %} > -{{ kdevops_host_prefix }}-ai-dev > -{% endif %} > - > -[all:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -[baseline] > -{{ kdevops_host_prefix }}-ai > - > -[baseline:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% if kdevops_baseline_and_dev %} > -[dev] > -{{ kdevops_host_prefix }}-ai-dev > - > -[dev:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > - > -{% endif %} > -[ai] > -{{ kdevops_host_prefix }}-ai > -{% if kdevops_baseline_and_dev %} > -{{ kdevops_host_prefix }}-ai-dev > -{% endif %} > - > -[ai:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > -{% endif %} > +{% include 'workflows/fio-tests.j2' %} > +{% elif kdevops_workflow_enable_fstests %} > +{% include 'workflows/fstests.j2' %} > +{% elif kdevops_workflow_enable_blktests %} > +{% include 'workflows/blktests.j2' %} > +{% elif kdevops_workflow_enable_selftests %} > +{% include 'workflows/selftests.j2' %} > +{% elif kdevops_workflow_enable_mmtests %} > +{% include 'workflows/mmtests.j2' %} > +{% elif kdevops_workflow_enable_sysbench %} > +{% include 'workflows/sysbench.j2' %} > +{% elif kdevops_workflow_enable_cxl %} > +{% include 'workflows/cxl.j2' %} > +{% elif kdevops_workflow_enable_pynfs %} > +{% include 'workflows/pynfs.j2' %} > +{% elif kdevops_workflow_enable_gitr %} > +{% include 'workflows/gitr.j2' %} > +{% elif kdevops_workflow_enable_ltp %} > +{% include 'workflows/ltp.j2' %} > +{% elif kdevops_workflow_enable_nfstest %} > +{% include 'workflows/nfstest.j2' %} > +{% elif kdevops_workflow_enable_ai|default(false)|bool %} > +{% include 'workflows/ai.j2' %} Seems like a smarter approach here would be to have the gen_hosts playbook's "ansible.builtin.template" step select the .j2 file to templatize. Just construct the template's pathname based on the name of the workflow. Then you don't have to add a new "if" arm when adding a new workflow template. > {% else %} > [all] > localhost ansible_connection=local > write-your-own-template-for-your-workflow-and-task > {% endif %} > {% else %} > -[all] > -localhost ansible_connection=local > -{% if kdevops_enable_nixos|default(false) %} > -{{ kdevops_host_prefix }} ansible_python_interpreter=/run/current-system/sw/bin/python3 > -{% else %} > -{{ kdevops_host_prefix }} > -{% endif %} > -{% if kdevops_baseline_and_dev == True %} > -{% if kdevops_enable_nixos|default(false) %} > -{{ kdevops_host_prefix }}-dev ansible_python_interpreter=/run/current-system/sw/bin/python3 > -{% else %} > -{{ kdevops_host_prefix }}-dev > -{% endif %} > -{% endif %} > -{% if kdevops_enable_iscsi %} > -{{ kdevops_host_prefix }}-iscsi > -{% endif %} > -{% if kdevops_nfsd_enable %} > -{{ kdevops_host_prefix }}-nfsd > -{% endif %} > -[all:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > -[baseline] > -{% if kdevops_enable_nixos|default(false) %} > -{{ kdevops_host_prefix }} ansible_python_interpreter=/run/current-system/sw/bin/python3 > -{% else %} > -{{ kdevops_host_prefix }} > -{% endif %} > -[baseline:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > -[dev] > -{% if kdevops_baseline_and_dev %} > -{% if kdevops_enable_nixos|default(false) %} > -{{ kdevops_host_prefix }}-dev ansible_python_interpreter=/run/current-system/sw/bin/python3 > -{% else %} > -{{ kdevops_host_prefix }}-dev > -{% endif %} > -{% endif %} > -[dev:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > -{% if kdevops_enable_iscsi %} > -[iscsi] > -{{ kdevops_host_prefix }}-iscsi > -[iscsi:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > -{% endif %} > -{% if kdevops_nfsd_enable %} > -[nfsd] > -{{ kdevops_host_prefix }}-nfsd > -[nfsd:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > -{% endif %} > -[service] > -{% if kdevops_enable_iscsi %} > -{{ kdevops_host_prefix }}-iscsi > -{% endif %} > -{% if kdevops_nfsd_enable %} > -{{ kdevops_host_prefix }}-nfsd > -{% endif %} > -[service:vars] > -ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > -{% endif %} > +{# Default non-workflow template #} > +{% include 'workflows/default.j2' %} > +{% endif %} > \ No newline at end of file > diff --git a/playbooks/roles/gen_hosts/templates/workflows/ai.j2 b/playbooks/roles/gen_hosts/templates/workflows/ai.j2 > new file mode 100644 > index 00000000..d0914436 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/ai.j2 > @@ -0,0 +1,99 @@ > +{# Workflow template for AI #} > +{% if ai_enable_multifs_testing|default(false)|bool %} > +{# Multi-filesystem section-based hosts #} > +[all] > +localhost ansible_connection=local > +{% for node in all_generic_nodes %} > +{{ node }} > +{% endfor %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% for node in all_generic_nodes %} > +{% if not node.endswith('-dev') %} > +{{ node }} > +{% endif %} > +{% endfor %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% for node in all_generic_nodes %} > +{% if node.endswith('-dev') %} > +{{ node }} > +{% endif %} > +{% endfor %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[ai] > +{% for node in all_generic_nodes %} > +{{ node }} > +{% endfor %} > + > +[ai:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{# Individual section groups for multi-filesystem testing #} > +{% set section_names = [] %} > +{% for node in all_generic_nodes %} > +{% if not node.endswith('-dev') %} > +{% set section = node.replace(kdevops_host_prefix + '-ai-', '') %} > +{% if section != kdevops_host_prefix + '-ai' %} > +{% if section_names.append(section) %}{% endif %} > +{% endif %} > +{% endif %} > +{% endfor %} > + > +{% for section in section_names %} > +[ai_{{ section | replace('-', '_') }}] > +{{ kdevops_host_prefix }}-ai-{{ section }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-ai-{{ section }}-dev > +{% endif %} > + > +[ai_{{ section | replace('-', '_') }}:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endfor %} > +{% else %} > +{# Single filesystem hosts (original behavior) #} > +[all] > +localhost ansible_connection=local > +{{ kdevops_host_prefix }}-ai > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-ai-dev > +{% endif %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{{ kdevops_host_prefix }}-ai > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{{ kdevops_host_prefix }}-ai-dev > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[ai] > +{{ kdevops_host_prefix }}-ai > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-ai-dev > +{% endif %} > + > +[ai:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > +{% endif %} > diff --git a/playbooks/roles/gen_hosts/templates/workflows/blktests.j2 b/playbooks/roles/gen_hosts/templates/workflows/blktests.j2 > new file mode 100644 > index 00000000..eea3eef3 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/blktests.j2 > @@ -0,0 +1,58 @@ > +{# Workflow template for blktests #} > +[all] > +localhost ansible_connection=local > +{% for test_type in blktests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > +{% endfor %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% for test_type in blktests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% endfor %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% for test_type in blktests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endfor %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[blktests] > +{% for test_type in blktests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > +{% endfor %} > + > +[blktests:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% for test_type in blktests_enabled_test_types %} > +[blktests_{{ test_type | replace('-', '_') }}] > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > + > +[blktests_{{ test_type | replace('-', '_') }}:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endfor %} > + > +[service] > + > +[service:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/cxl.j2 b/playbooks/roles/gen_hosts/templates/workflows/cxl.j2 > new file mode 100644 > index 00000000..53790f29 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/cxl.j2 > @@ -0,0 +1,7 @@ > +{# Workflow template for CXL #} > +[all] > +localhost ansible_connection=local > +write-your-own-template-for-cxl-workflow > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/default.j2 b/playbooks/roles/gen_hosts/templates/workflows/default.j2 > new file mode 100644 > index 00000000..86619309 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/default.j2 > @@ -0,0 +1,62 @@ > +{# Default template for non-workflow setups #} > +[all] > +localhost ansible_connection=local > +{% if kdevops_enable_nixos|default(false) %} > +{{ kdevops_host_prefix }} ansible_python_interpreter=/run/current-system/sw/bin/python3 > +{% else %} > +{{ kdevops_host_prefix }} > +{% endif %} > +{% if kdevops_baseline_and_dev == True %} > +{% if kdevops_enable_nixos|default(false) %} > +{{ kdevops_host_prefix }}-dev ansible_python_interpreter=/run/current-system/sw/bin/python3 > +{% else %} > +{{ kdevops_host_prefix }}-dev > +{% endif %} > +{% endif %} > +{% if kdevops_enable_iscsi %} > +{{ kdevops_host_prefix }}-iscsi > +{% endif %} > +{% if kdevops_nfsd_enable %} > +{{ kdevops_host_prefix }}-nfsd > +{% endif %} > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > +[baseline] > +{% if kdevops_enable_nixos|default(false) %} > +{{ kdevops_host_prefix }} ansible_python_interpreter=/run/current-system/sw/bin/python3 > +{% else %} > +{{ kdevops_host_prefix }} > +{% endif %} > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > +[dev] > +{% if kdevops_baseline_and_dev %} > +{% if kdevops_enable_nixos|default(false) %} > +{{ kdevops_host_prefix }}-dev ansible_python_interpreter=/run/current-system/sw/bin/python3 > +{% else %} > +{{ kdevops_host_prefix }}-dev > +{% endif %} > +{% endif %} > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > +{% if kdevops_enable_iscsi %} > +[iscsi] > +{{ kdevops_host_prefix }}-iscsi > +[iscsi:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > +{% endif %} > +{% if kdevops_nfsd_enable %} > +[nfsd] > +{{ kdevops_host_prefix }}-nfsd > +[nfsd:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > +{% endif %} > +[service] > +{% if kdevops_enable_iscsi %} > +{{ kdevops_host_prefix }}-iscsi > +{% endif %} > +{% if kdevops_nfsd_enable %} > +{{ kdevops_host_prefix }}-nfsd > +{% endif %} > +[service:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/fio-tests.j2 b/playbooks/roles/gen_hosts/templates/workflows/fio-tests.j2 > new file mode 100644 > index 00000000..548941a0 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/fio-tests.j2 > @@ -0,0 +1,38 @@ > +{# Workflow template for fio-tests #} > +[all] > +localhost ansible_connection=local > +{{ kdevops_host_prefix }}-fio-tests > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-fio-tests-dev > +{% endif %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{{ kdevops_host_prefix }}-fio-tests > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{{ kdevops_host_prefix }}-fio-tests-dev > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[fio_tests] > +{{ kdevops_host_prefix }}-fio-tests > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-fio-tests-dev > +{% endif %} > + > +[fio_tests:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[service] > + > +[service:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/fstests.j2 b/playbooks/roles/gen_hosts/templates/workflows/fstests.j2 > new file mode 100644 > index 00000000..600d125f > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/fstests.j2 > @@ -0,0 +1,72 @@ > +{# Workflow template for fstests #} > +[all] > +localhost ansible_connection=local > +{% for node_section in fstests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ node_section }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ node_section }}-dev > +{% endif %} > +{% endfor %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% for node_section in fstests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ node_section }} > +{% endfor %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% for node_section in fstests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ node_section }}-dev > +{% endfor %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[fstests] > +{% for node_section in fstests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ node_section }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ node_section }}-dev > +{% endif %} > +{% endfor %} > + > +[fstests:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% for section in sections %} > +[fstests_{{ section | replace('-', '_') }}] > +{{ kdevops_host_prefix }}-{{ section }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ section }}-dev > +{% endif %} > + > +[fstests_{{ section | replace('-', '_') }}:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endfor %} > + > +[nfsd] > +{% if kdevops_nfsd_enable %} > +{{ kdevops_host_prefix }}-nfsd > +{% endif %} > + > +[nfsd:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[service] > +{% if kdevops_enable_iscsi %} > +{{ kdevops_host_prefix }}-iscsi > +{% endif %} > +{% if kdevops_nfsd_enable %} > +{{ kdevops_host_prefix }}-nfsd > +{% endif %} > + > +[service:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/gitr.j2 b/playbooks/roles/gen_hosts/templates/workflows/gitr.j2 > new file mode 100644 > index 00000000..86ee9326 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/gitr.j2 > @@ -0,0 +1,41 @@ > +{# Workflow template for gitr #} > +[all] > +localhost ansible_connection=local > +{% for host in gitr_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endif %} > +{% endfor %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% for host in gitr_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% endfor %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% for host in gitr_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endfor %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[gitr] > +{% for host in gitr_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endif %} > +{% endfor %} > + > +[gitr:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/ltp.j2 b/playbooks/roles/gen_hosts/templates/workflows/ltp.j2 > new file mode 100644 > index 00000000..fb120828 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/ltp.j2 > @@ -0,0 +1,41 @@ > +{# Workflow template for ltp #} > +[all] > +localhost ansible_connection=local > +{% for host in ltp_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endif %} > +{% endfor %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% for host in ltp_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% endfor %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% for host in ltp_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endfor %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[ltp] > +{% for host in ltp_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endif %} > +{% endfor %} > + > +[ltp:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/mmtests.j2 b/playbooks/roles/gen_hosts/templates/workflows/mmtests.j2 > new file mode 100644 > index 00000000..d796cbe6 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/mmtests.j2 > @@ -0,0 +1,77 @@ > +{# Workflow template for mmtests #} > +[all] > +localhost ansible_connection=local > +{% if mmtests_enabled_test_types %} > +{% for test_type in mmtests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > +{% endfor %} > +{% else %} > +{{ kdevops_host_prefix }}-mmtests > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-mmtests-dev > +{% endif %} > +{% endif %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% if mmtests_enabled_test_types %} > +{% for test_type in mmtests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% endfor %} > +{% else %} > +{{ kdevops_host_prefix }}-mmtests > +{% endif %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% if mmtests_enabled_test_types %} > +{% for test_type in mmtests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endfor %} > +{% else %} > +{{ kdevops_host_prefix }}-mmtests-dev > +{% endif %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[mmtests] > +{% if mmtests_enabled_test_types %} > +{% for test_type in mmtests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > +{% endfor %} > +{% else %} > +{{ kdevops_host_prefix }}-mmtests > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-mmtests-dev > +{% endif %} > +{% endif %} > + > +[mmtests:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if mmtests_enabled_test_types %} > +{% for test_type in mmtests_enabled_test_types %} > +[mmtests_{{ test_type | replace('-', '_') }}] > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > + > +[mmtests_{{ test_type | replace('-', '_') }}:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endfor %} > +{% endif %} > diff --git a/playbooks/roles/gen_hosts/templates/workflows/nfstest.j2 b/playbooks/roles/gen_hosts/templates/workflows/nfstest.j2 > new file mode 100644 > index 00000000..34aa7dfe > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/nfstest.j2 > @@ -0,0 +1,41 @@ > +{# Workflow template for nfstest #} > +[all] > +localhost ansible_connection=local > +{% for host in nfstest_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endif %} > +{% endfor %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% for host in nfstest_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% endfor %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% for host in nfstest_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endfor %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[nfstest] > +{% for host in nfstest_enabled_hosts %} > +{{ kdevops_host_prefix }}-{{ host }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ host }}-dev > +{% endif %} > +{% endfor %} > + > +[nfstest:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/pynfs.j2 b/playbooks/roles/gen_hosts/templates/workflows/pynfs.j2 > new file mode 100644 > index 00000000..6145b1a0 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/pynfs.j2 > @@ -0,0 +1,7 @@ > +{# Workflow template for pynfs #} > +[all] > +localhost ansible_connection=local > +write-your-own-template-for-pynfs-workflow > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/reboot-limit.j2 b/playbooks/roles/gen_hosts/templates/workflows/reboot-limit.j2 > new file mode 100644 > index 00000000..07bd6f80 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/reboot-limit.j2 > @@ -0,0 +1,33 @@ > +{# Workflow template for reboot-limit #} > +[all] > +localhost ansible_connection=local > +{{ kdevops_host_prefix }}-reboot-limit > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-reboot-limit-dev > +{% endif %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{{ kdevops_host_prefix }}-reboot-limit > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{{ kdevops_host_prefix }}-reboot-limit-dev > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[reboot-limit] > +{{ kdevops_host_prefix }}-reboot-limit > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-reboot-limit-dev > +{% endif %} > + > +[reboot-limit:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > diff --git a/playbooks/roles/gen_hosts/templates/workflows/selftests.j2 b/playbooks/roles/gen_hosts/templates/workflows/selftests.j2 > new file mode 100644 > index 00000000..4ef598c7 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/selftests.j2 > @@ -0,0 +1,53 @@ > +{# Workflow template for selftests #} > +[all] > +localhost ansible_connection=local > +{% for test_type in selftests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > +{% endfor %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% for test_type in selftests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% endfor %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% for test_type in selftests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endfor %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[selftests] > +{% for test_type in selftests_enabled_test_types %} > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > +{% endfor %} > + > +[selftests:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% for test_type in selftests_enabled_test_types %} > +[selftests_{{ test_type | replace('-', '_') }}] > +{{ kdevops_host_prefix }}-{{ test_type }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test_type }}-dev > +{% endif %} > + > +[selftests_{{ test_type | replace('-', '_') }}:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endfor %} > diff --git a/playbooks/roles/gen_hosts/templates/workflows/sysbench.j2 b/playbooks/roles/gen_hosts/templates/workflows/sysbench.j2 > new file mode 100644 > index 00000000..34f22a83 > --- /dev/null > +++ b/playbooks/roles/gen_hosts/templates/workflows/sysbench.j2 > @@ -0,0 +1,53 @@ > +{# Workflow template for sysbench #} > +[all] > +localhost ansible_connection=local > +{% for test in enabled_sysbench_tests %} > +{{ kdevops_host_prefix }}-{{ test }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test }}-dev > +{% endif %} > +{% endfor %} > + > +[all:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +[baseline] > +{% for test in enabled_sysbench_tests %} > +{{ kdevops_host_prefix }}-{{ test }} > +{% endfor %} > + > +[baseline:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% if kdevops_baseline_and_dev %} > +[dev] > +{% for test in enabled_sysbench_tests %} > +{{ kdevops_host_prefix }}-{{ test }}-dev > +{% endfor %} > + > +[dev:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endif %} > +[sysbench] > +{% for test in enabled_sysbench_tests %} > +{{ kdevops_host_prefix }}-{{ test }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test }}-dev > +{% endif %} > +{% endfor %} > + > +[sysbench:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% for test in enabled_sysbench_tests %} > +[sysbench_{{ test | replace('-', '_') }}] > +{{ kdevops_host_prefix }}-{{ test }} > +{% if kdevops_baseline_and_dev %} > +{{ kdevops_host_prefix }}-{{ test }}-dev > +{% endif %} > + > +[sysbench_{{ test | replace('-', '_') }}:vars] > +ansible_python_interpreter = "{{ kdevops_python_interpreter }}" > + > +{% endfor %} > diff --git a/workflows/ai/Makefile b/workflows/ai/Makefile > index 1c297edd..27dea382 100644 > --- a/workflows/ai/Makefile > +++ b/workflows/ai/Makefile > @@ -4,7 +4,8 @@ PHONY += ai-tests ai-tests-baseline ai-tests-dev > PHONY += ai-tests-results > > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := hosts.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := hosts.j2 This comment seems like Claude is "showing his work". I'm not sure there is a long-term value in keeping these comments, and they might end up becoming technical debt over time. > endif > > export AI_DATA_TARGET := $(subst ",,$(CONFIG_AI_BENCHMARK_RESULTS_DIR)) > diff --git a/workflows/blktests/Makefile b/workflows/blktests/Makefile > index 11cd9a65..97649026 100644 > --- a/workflows/blktests/Makefile > +++ b/workflows/blktests/Makefile > @@ -12,7 +12,8 @@ ID=$(shell id -u) > BLKTESTS_ARGS := > > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := blktests.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := blktests.j2 > endif > > BLKTESTS_GIT:=$(subst ",,$(CONFIG_BLKTESTS_GIT)) > diff --git a/workflows/cxl/Makefile b/workflows/cxl/Makefile > index bb130057..feabe197 100644 > --- a/workflows/cxl/Makefile > +++ b/workflows/cxl/Makefile > @@ -1,6 +1,7 @@ > # SPDX-License-Identifier: copyleft-next-0.3.1 > > -export KDEVOPS_HOSTS_TEMPLATE := cxl.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := cxl.j2 > > CXL_ARGS := > CXL_ARGS += ndctl_git='$(subst ",,$(CONFIG_NDCTL_GIT))' > diff --git a/workflows/fio-tests/Makefile b/workflows/fio-tests/Makefile > index 5eb2ccbd..20a5d192 100644 > --- a/workflows/fio-tests/Makefile > +++ b/workflows/fio-tests/Makefile > @@ -1,5 +1,6 @@ > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := fio-tests.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := fio-tests.j2 > endif > > fio-tests: > diff --git a/workflows/fstests/Makefile b/workflows/fstests/Makefile > index d2e5c636..989c564b 100644 > --- a/workflows/fstests/Makefile > +++ b/workflows/fstests/Makefile > @@ -9,7 +9,8 @@ FSTESTS_BASELINE_EXTRA := > export FSTYP:=$(subst ",,$(CONFIG_FSTESTS_FSTYP)) > > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := fstests.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := fstests.j2 > endif > > FSTESTS_ARGS += fstests_fstyp='$(FSTYP)' > diff --git a/workflows/gitr/Makefile b/workflows/gitr/Makefile > index c685395a..eadcdac1 100644 > --- a/workflows/gitr/Makefile > +++ b/workflows/gitr/Makefile > @@ -1,5 +1,6 @@ > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := gitr.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := gitr.j2 > endif > > GITR_MNT:=$(subst ",,$(CONFIG_GITR_MNT)) > diff --git a/workflows/linux/Makefile b/workflows/linux/Makefile > index 30b123f9..60d755b3 100644 > --- a/workflows/linux/Makefile > +++ b/workflows/linux/Makefile > @@ -14,7 +14,8 @@ TREE_CONFIG:=config-$(TREE_REF)-pure-iomap > endif > > ifeq (y,$(CONFIG_BOOTLINUX_BUILDER)) > -KDEVOPS_HOSTS_TEMPLATE=builder.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# KDEVOPS_HOSTS_TEMPLATE=builder.j2 > endif > > # Describes the Linux clone > diff --git a/workflows/ltp/Makefile b/workflows/ltp/Makefile > index 767465bc..b3c3319b 100644 > --- a/workflows/ltp/Makefile > +++ b/workflows/ltp/Makefile > @@ -1,5 +1,6 @@ > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := ltp.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := ltp.j2 > endif > > LTP_REPO:=$(subst ",,$(CONFIG_LTP_REPO)) > diff --git a/workflows/mmtests/Makefile b/workflows/mmtests/Makefile > index b65d256b..186dc8cb 100644 > --- a/workflows/mmtests/Makefile > +++ b/workflows/mmtests/Makefile > @@ -1,7 +1,8 @@ > MMTESTS_ARGS := > > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := mmtests.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := mmtests.j2 > endif > > mmtests: > diff --git a/workflows/nfstest/Makefile b/workflows/nfstest/Makefile > index bbfd3f64..bc880b6d 100644 > --- a/workflows/nfstest/Makefile > +++ b/workflows/nfstest/Makefile > @@ -1,5 +1,6 @@ > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := nfstest.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := nfstest.j2 > endif # CONFIG_WORKFLOWS_DEDICATED_WORKFLOW > > ifeq (y,$(CONFIG_NFSTEST_USE_KDEVOPS_NFSD)) > diff --git a/workflows/pynfs/Makefile b/workflows/pynfs/Makefile > index 2f3ff97b..b7bb12bb 100644 > --- a/workflows/pynfs/Makefile > +++ b/workflows/pynfs/Makefile > @@ -1,5 +1,6 @@ > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := pynfs.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := pynfs.j2 > endif > > PYNFS_GIT:=$(subst ",,$(CONFIG_PYNFS_GIT)) > diff --git a/workflows/selftests/Makefile b/workflows/selftests/Makefile > index d3b7044c..4ec691f3 100644 > --- a/workflows/selftests/Makefile > +++ b/workflows/selftests/Makefile > @@ -3,7 +3,8 @@ > SELFTESTS_ARGS := > > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := selftests.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := selftests.j2 > endif > > SELFTESTS_DYNAMIC_RUNTIME_VARS := "kdevops_run_selftests": True > diff --git a/workflows/sysbench/Makefile b/workflows/sysbench/Makefile > index daf7bc75..5f484691 100644 > --- a/workflows/sysbench/Makefile > +++ b/workflows/sysbench/Makefile > @@ -1,7 +1,8 @@ > PHONY += sysbench sysbench-test sysbench-telemetry sysbench-help-menu > > ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW)) > -export KDEVOPS_HOSTS_TEMPLATE := sysbench.j2 > +# After refactoring, all workflows use hosts.j2 which includes workflow-specific templates > +# export KDEVOPS_HOSTS_TEMPLATE := sysbench.j2 > endif > > TAGS_SYSBENCH_RUN := db_start -- Chuck Lever