public inbox for kdevops@lists.linux.dev
 help / color / mirror / Atom feed
From: Daniel Gomez <da.gomez@kernel.org>
To: Luis Chamberlain <mcgrof@kernel.org>,
	 Chuck Lever <chuck.lever@oracle.com>
Cc: kdevops@lists.linux.dev, Daniel Gomez <da.gomez@kernel.org>,
	 Daniel Gomez <da.gomez@samsung.com>
Subject: [PATCH 5/8] gen_hosts: scope the python interpreter per inventory group
Date: Thu, 23 Apr 2026 00:16:46 +0200	[thread overview]
Message-ID: <20260423-kdevops-series-a-fixes-v1-5-69a82d0e1631@samsung.com> (raw)
In-Reply-To: <20260423-kdevops-series-a-fixes-v1-0-69a82d0e1631@samsung.com>

From: Daniel Gomez <da.gomez@samsung.com>

Every inventory group's :vars scope emitted a single
kdevops_python_interpreter defaulting to /usr/bin/python3, so
selecting the NIXOS backend left every guest trying to run
Ansible modules through a path that does not exist on NixOS
(/run/current-system/sw/bin/python3 is the correct one).
Overriding the variable globally would break the control node,
which on most kdevops hosts is a Debian box with no NixOS paths.

Split the interpreter into per-group Kconfig strings with
output yaml: baseline, dev and service each default to the NixOS
path under NIXOS and fall back to kdevops_python_interpreter
otherwise. Localhost stays under [all] and keeps the control-node
interpreter; guests pick the backend-appropriate one by inventory
group.

Fixes: 3089c3fec57 ("nixos: add NixOS support as third bringup option with libvirt integration")
Generated-by: Claude AI
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 kconfigs/Kconfig.ansible_provisioning              | 33 ++++++++++++++++
 playbooks/roles/gen_hosts/templates/blktests.j2    |  6 +--
 playbooks/roles/gen_hosts/templates/cxl.j2         |  6 +--
 playbooks/roles/gen_hosts/templates/fio-tests.j2   |  8 ++--
 playbooks/roles/gen_hosts/templates/fstests.j2     | 16 ++++----
 playbooks/roles/gen_hosts/templates/gitr.j2        | 10 ++---
 playbooks/roles/gen_hosts/templates/ltp.j2         |  6 +--
 playbooks/roles/gen_hosts/templates/mmtests.j2     |  8 ++--
 playbooks/roles/gen_hosts/templates/nfstest.j2     | 10 ++---
 playbooks/roles/gen_hosts/templates/pynfs.j2       | 10 ++---
 playbooks/roles/gen_hosts/templates/selftests.j2   |  6 +--
 playbooks/roles/gen_hosts/templates/sysbench.j2    |  6 +--
 .../roles/gen_hosts/templates/workflows/ai.j2      | 14 +++----
 .../gen_hosts/templates/workflows/blktests.j2      | 10 ++---
 .../gen_hosts/templates/workflows/build-linux.j2   | 30 +++++++--------
 .../templates/workflows/declared-hosts.j2          | 44 +++++++++++-----------
 .../gen_hosts/templates/workflows/fio-tests.j2     | 16 ++++----
 .../roles/gen_hosts/templates/workflows/fstests.j2 | 12 +++---
 .../roles/gen_hosts/templates/workflows/generic.j2 |  2 +-
 .../roles/gen_hosts/templates/workflows/gitr.j2    | 12 +++---
 .../roles/gen_hosts/templates/workflows/linux.j2   |  6 +--
 .../roles/gen_hosts/templates/workflows/ltp.j2     |  8 ++--
 .../roles/gen_hosts/templates/workflows/minio.j2   | 26 ++++++-------
 .../roles/gen_hosts/templates/workflows/mix.j2     | 10 ++---
 .../roles/gen_hosts/templates/workflows/mmtests.j2 |  8 ++--
 .../roles/gen_hosts/templates/workflows/nfstest.j2 | 12 +++---
 .../roles/gen_hosts/templates/workflows/pynfs.j2   | 10 ++---
 .../gen_hosts/templates/workflows/reboot-limit.j2  |  6 +--
 .../gen_hosts/templates/workflows/selftests.j2     |  8 ++--
 .../gen_hosts/templates/workflows/sysbench.j2      |  8 ++--
 .../roles/gen_hosts/templates/workflows/vllm.j2    | 14 +++----
 31 files changed, 207 insertions(+), 174 deletions(-)

diff --git a/kconfigs/Kconfig.ansible_provisioning b/kconfigs/Kconfig.ansible_provisioning
index 7f20d092..7b1d4f79 100644
--- a/kconfigs/Kconfig.ansible_provisioning
+++ b/kconfigs/Kconfig.ansible_provisioning
@@ -127,6 +127,39 @@ config KDEVOPS_PYTHON_OLD_INTERPRETER
 	  KDEVOPSPYTHONOLDINTERPRETER value on your hosts.in file on old
 	  systems so that this gets properly placed.
 
+config KDEVOPS_BASELINE_PYTHON_INTERPRETER
+	string "Python interpreter for the [baseline] host group"
+	output yaml
+	default "/run/current-system/sw/bin/python3" if NIXOS
+	default KDEVOPS_PYTHON_INTERPRETER
+	help
+	  Python interpreter emitted under [baseline:vars] in the generated
+	  Ansible inventory. When NIXOS is the bringup method, guests run
+	  NixOS and their system python lives at
+	  /run/current-system/sw/bin/python3; otherwise this follows
+	  KDEVOPS_PYTHON_INTERPRETER so the group tracks whatever the host
+	  default is for other backends.
+
+config KDEVOPS_DEV_PYTHON_INTERPRETER
+	string "Python interpreter for the [dev] host group"
+	output yaml
+	default "/run/current-system/sw/bin/python3" if NIXOS
+	default KDEVOPS_PYTHON_INTERPRETER
+	help
+	  Python interpreter emitted under [dev:vars] in the generated
+	  Ansible inventory. See KDEVOPS_BASELINE_PYTHON_INTERPRETER for
+	  the same rationale applied to the [dev] group.
+
+config KDEVOPS_SERVICE_PYTHON_INTERPRETER
+	string "Python interpreter for the [service] host group"
+	output yaml
+	default "/run/current-system/sw/bin/python3" if NIXOS
+	default KDEVOPS_PYTHON_INTERPRETER
+	help
+	  Python interpreter emitted under [service:vars] in the generated
+	  Ansible inventory. See KDEVOPS_BASELINE_PYTHON_INTERPRETER for
+	  the same rationale applied to the [service] group.
+
 config DEVCONFIG_ENABLE_SYSTEMD_JOURNAL_REMOTE
 	bool "Set up remote systemd-journal-remote"
 	default n
diff --git a/playbooks/roles/gen_hosts/templates/blktests.j2 b/playbooks/roles/gen_hosts/templates/blktests.j2
index 6aa434c3..271fe493 100644
--- a/playbooks/roles/gen_hosts/templates/blktests.j2
+++ b/playbooks/roles/gen_hosts/templates/blktests.j2
@@ -13,7 +13,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-{{ test_type }}
 {% endfor %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
   {% for test_type in blktests_enabled_test_types %}
@@ -21,7 +21,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
   {% endfor %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 [service]
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/cxl.j2 b/playbooks/roles/gen_hosts/templates/cxl.j2
index cab7da24..cabec01b 100644
--- a/playbooks/roles/gen_hosts/templates/cxl.j2
+++ b/playbooks/roles/gen_hosts/templates/cxl.j2
@@ -9,13 +9,13 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 [baseline]
 {{ kdevops_hosts_prefix }}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
 {{ kdevops_hosts_prefix }}-dev
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 [service]
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/fio-tests.j2 b/playbooks/roles/gen_hosts/templates/fio-tests.j2
index 75bc0c53..2eab8b3b 100644
--- a/playbooks/roles/gen_hosts/templates/fio-tests.j2
+++ b/playbooks/roles/gen_hosts/templates/fio-tests.j2
@@ -9,20 +9,20 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 [baseline]
 {{ kdevops_host_prefix }}-fio-tests
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
 {{ kdevops_host_prefix }}-fio-tests-dev
 {% endif %}
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 [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 }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 [service]
 [service:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/fstests.j2 b/playbooks/roles/gen_hosts/templates/fstests.j2
index 823dbb1e..126c9a89 100644
--- a/playbooks/roles/gen_hosts/templates/fstests.j2
+++ b/playbooks/roles/gen_hosts/templates/fstests.j2
@@ -35,7 +35,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {% endif %}
 {% endif %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
   {% for s in fstests_enabled_test_types %}
@@ -52,30 +52,30 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {% endif %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 {% if kdevops_enable_iscsi %}
 [iscsi]
 {{ kdevops_hosts_prefix }}-iscsi
 [iscsi:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_nfsd_enable %}
 [nfsd]
 {{ kdevops_hosts_prefix }}-nfsd
 [nfsd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_smbd_enable %}
 [smbd]
 {{ kdevops_hosts_prefix }}-smbd
 [smbd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_krb5_enable %}
 [kdc]
 {{ kdevops_hosts_prefix }}-kdc
 [kdc:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 [krb5]
 {% for s in fstests_enabled_test_types %}
 {% if kdevops_enable_nixos|default(false) %}
@@ -88,7 +88,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_hosts_prefix }}-nfsd
 {% endif %}
 [krb5:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_enable_iscsi or kdevops_nfsd_enable or kdevops_smbd_enable or kdevops_krb5_enable %}
 [service]
@@ -105,5 +105,5 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_hosts_prefix }}-kdc
 {% endif %}
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/gitr.j2 b/playbooks/roles/gen_hosts/templates/gitr.j2
index 3f30a5fb..11da5e46 100644
--- a/playbooks/roles/gen_hosts/templates/gitr.j2
+++ b/playbooks/roles/gen_hosts/templates/gitr.j2
@@ -14,7 +14,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-{{ s }}
 {% endfor %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {% if kdevops_baseline_and_dev %}
@@ -23,20 +23,20 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
   {% endfor %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 {% if kdevops_enable_iscsi %}
 
 [iscsi]
 {{ kdevops_hosts_prefix }}-iscsi
 [iscsi:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_nfsd_enable %}
 
 [nfsd]
 {{ kdevops_hosts_prefix }}-nfsd
 [nfsd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_enable_iscsi or kdevops_nfsd_enable %}
 [service]
@@ -47,5 +47,5 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_hosts_prefix }}-nfsd
 {% endif %}
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/ltp.j2 b/playbooks/roles/gen_hosts/templates/ltp.j2
index 6946b3f3..c9eae43c 100644
--- a/playbooks/roles/gen_hosts/templates/ltp.j2
+++ b/playbooks/roles/gen_hosts/templates/ltp.j2
@@ -14,7 +14,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-{{ s }}
 {% endfor %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {% if kdevops_baseline_and_dev %}
@@ -23,8 +23,8 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
   {% endfor %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 
 [service]
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/mmtests.j2 b/playbooks/roles/gen_hosts/templates/mmtests.j2
index 8df4a3c3..b4aad380 100644
--- a/playbooks/roles/gen_hosts/templates/mmtests.j2
+++ b/playbooks/roles/gen_hosts/templates/mmtests.j2
@@ -13,7 +13,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-{{ test_type }}
 {% endfor %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
   {% for test_type in mmtests_enabled_test_types %}
@@ -21,7 +21,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
   {% endfor %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 [mmtests]
 {% for test_type in mmtests_enabled_test_types %}
 {{ kdevops_host_prefix }}-{{ test_type }}
@@ -30,7 +30,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {% endif %}
 {% endfor %}
 [mmtests:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [service]
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/nfstest.j2 b/playbooks/roles/gen_hosts/templates/nfstest.j2
index 709d871d..f3eba406 100644
--- a/playbooks/roles/gen_hosts/templates/nfstest.j2
+++ b/playbooks/roles/gen_hosts/templates/nfstest.j2
@@ -14,7 +14,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-{{ s }}
 {% endfor %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {% if kdevops_baseline_and_dev %}
@@ -23,20 +23,20 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
   {% endfor %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 {% if kdevops_enable_iscsi %}
 
 [iscsi]
 {{ kdevops_hosts_prefix }}-iscsi
 [iscsi:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_nfsd_enable %}
 
 [nfsd]
 {{ kdevops_hosts_prefix }}-nfsd
 [nfsd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_enable_iscsi or kdevops_nfsd_enable %}
 [service]
@@ -47,5 +47,5 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_hosts_prefix }}-nfsd
 {% endif %}
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/pynfs.j2 b/playbooks/roles/gen_hosts/templates/pynfs.j2
index 55add4d1..8a3f5631 100644
--- a/playbooks/roles/gen_hosts/templates/pynfs.j2
+++ b/playbooks/roles/gen_hosts/templates/pynfs.j2
@@ -6,23 +6,23 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 [baseline]
 {{ kdevops_hosts_prefix }}-nfsd
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
 {{ kdevops_host_prefix }}-nfsd-dev
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 {% if kdevops_enable_iscsi %}
 [iscsi]
 {{ kdevops_hosts_prefix }}-iscsi
 [iscsi:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 [nfsd]
 {{ kdevops_hosts_prefix }}-nfsd
 [nfsd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% if true %}
 [service]
 {% if kdevops_enable_iscsi %}
@@ -30,5 +30,5 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {% endif %}
 {{ kdevops_hosts_prefix }}-nfsd
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/selftests.j2 b/playbooks/roles/gen_hosts/templates/selftests.j2
index af0d6b34..2a0f199d 100644
--- a/playbooks/roles/gen_hosts/templates/selftests.j2
+++ b/playbooks/roles/gen_hosts/templates/selftests.j2
@@ -13,7 +13,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-{{ test_type }}
 {% endfor %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
   {% for test_type in selftests_enabled_test_types %}
@@ -21,7 +21,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
   {% endfor %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 [service]
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/sysbench.j2 b/playbooks/roles/gen_hosts/templates/sysbench.j2
index e30773c1..1d25c6c6 100644
--- a/playbooks/roles/gen_hosts/templates/sysbench.j2
+++ b/playbooks/roles/gen_hosts/templates/sysbench.j2
@@ -13,7 +13,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-{{ test_type }}
 {% endfor %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
   {% for test_type in enabled_sysbench_tests %}
@@ -21,7 +21,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
   {% endfor %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 [service]
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/ai.j2 b/playbooks/roles/gen_hosts/templates/workflows/ai.j2
index d0914436..878f67c4 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/ai.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/ai.j2
@@ -18,7 +18,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
@@ -29,7 +29,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [ai]
@@ -38,7 +38,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [ai:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {# Individual section groups for multi-filesystem testing #}
 {% set section_names = [] %}
@@ -59,7 +59,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [ai_{{ section | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% endfor %}
 {% else %}
@@ -78,14 +78,14 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-ai
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
 {{ kdevops_host_prefix }}-ai-dev
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [ai]
@@ -95,5 +95,5 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [ai:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/workflows/blktests.j2 b/playbooks/roles/gen_hosts/templates/workflows/blktests.j2
index eea3eef3..7223628f 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/blktests.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/blktests.j2
@@ -17,7 +17,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
@@ -26,7 +26,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [blktests]
@@ -38,7 +38,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [blktests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% for test_type in blktests_enabled_test_types %}
 [blktests_{{ test_type | replace('-', '_') }}]
@@ -48,11 +48,11 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [blktests_{{ test_type | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% endfor %}
 
 [service]
 
 [service:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/build-linux.j2 b/playbooks/roles/gen_hosts/templates/workflows/build-linux.j2
index 6ada0c0a..58c0b4bf 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/build-linux.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/build-linux.j2
@@ -18,7 +18,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
@@ -29,7 +29,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 {% endif %}
 
 [build-linux]
@@ -38,7 +38,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [build-linux:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {# Create filesystem-specific groups #}
 {% if build_linux_multifs_xfs_4k_4ks|default(false)|bool %}
@@ -49,7 +49,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux-xfs-4k-4ks:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% if build_linux_multifs_xfs_8k_4ks|default(false)|bool %}
@@ -60,7 +60,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux-xfs-8k-4ks:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% if build_linux_multifs_xfs_16k_4ks|default(false)|bool %}
@@ -71,7 +71,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux-xfs-16k-4ks:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% if build_linux_multifs_xfs_32k_4ks|default(false)|bool %}
@@ -82,7 +82,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux-xfs-32k-4ks:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% if build_linux_multifs_xfs_64k_4ks|default(false)|bool %}
@@ -93,7 +93,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux-xfs-64k-4ks:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% if build_linux_multifs_ext4_4k|default(false)|bool %}
@@ -104,7 +104,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux-ext4-4k:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% if build_linux_multifs_ext4_16k_bigalloc|default(false)|bool %}
@@ -115,7 +115,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux-ext4-16k-bigalloc:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 build_linux_ext4_mkfs_opts = "-F -O bigalloc -C 16384"
 {% endif %}
 
@@ -127,7 +127,7 @@ build_linux_ext4_mkfs_opts = "-F -O bigalloc -C 16384"
 {% endif %}
 
 [build-linux-btrfs:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% if build_linux_multifs_tmpfs_default|default(false)|bool %}
@@ -138,7 +138,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux-tmpfs:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% else %}
@@ -157,14 +157,14 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-build-linux
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
 {{ kdevops_host_prefix }}-build-linux-dev
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [build-linux]
@@ -174,5 +174,5 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [build-linux:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/workflows/declared-hosts.j2 b/playbooks/roles/gen_hosts/templates/workflows/declared-hosts.j2
index 7d7975c7..f538d17c 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/declared-hosts.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/declared-hosts.j2
@@ -35,7 +35,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {# Even-numbered hosts become dev nodes #}
@@ -46,7 +46,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% else %}
 {# Without A/B testing, all hosts are baseline #}
@@ -56,7 +56,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {# Add workflow-specific groups based on enabled workflow #}
@@ -67,7 +67,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [reboot-limit:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_fio_tests %}
 [fio_tests]
@@ -76,7 +76,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [fio_tests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_fstests %}
 [fstests]
@@ -85,7 +85,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [fstests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {# Add per-section groups if needed #}
 {% for section in fstests_enabled_test_types|default([]) %}
@@ -95,7 +95,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [fstests_{{ section | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endfor %}
 
 {% elif kdevops_workflow_enable_blktests %}
@@ -105,7 +105,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [blktests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_selftests %}
 [selftests]
@@ -114,7 +114,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [selftests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_mmtests %}
 [mmtests]
@@ -123,7 +123,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [mmtests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_sysbench %}
 [sysbench]
@@ -132,7 +132,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [sysbench:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_ai|default(false)|bool %}
 [ai]
@@ -141,7 +141,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [ai:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_minio|default(false)|bool %}
 [minio]
@@ -150,7 +150,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [minio:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_cxl %}
 [cxl]
@@ -159,7 +159,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [cxl:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_pynfs %}
 [pynfs]
@@ -168,7 +168,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [pynfs:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_gitr %}
 [gitr]
@@ -177,7 +177,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [gitr:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_ltp %}
 [ltp]
@@ -186,7 +186,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [ltp:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% elif kdevops_workflow_enable_nfstest %}
 [nfstest]
@@ -195,7 +195,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [nfstest:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
 
 {% else %}
@@ -206,7 +206,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {# For non-dedicated workflows (mix mode), add fstests group if enabled #}
 {% if kdevops_workflow_enable_fstests %}
@@ -216,7 +216,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [fstests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {# Add per-section groups if needed #}
 {% for section in fstests_enabled_test_types|default([]) %}
@@ -226,7 +226,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [fstests_{{ section | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endfor %}
 {% endif %}
 
@@ -236,4 +236,4 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {# Service nodes are typically not needed for declared hosts #}
 
 [service:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/fio-tests.j2 b/playbooks/roles/gen_hosts/templates/workflows/fio-tests.j2
index 0f3550f5..b2c46b5d 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/fio-tests.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/fio-tests.j2
@@ -18,7 +18,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
@@ -29,7 +29,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [fio_tests]
@@ -38,7 +38,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [fio_tests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {# Individual section groups for multi-filesystem testing #}
 {% set section_names = [] %}
@@ -59,7 +59,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [fio_tests_{{ section | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% endfor %}
 {% else %}
@@ -78,14 +78,14 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-fio-tests
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
 {{ kdevops_host_prefix }}-fio-tests-dev
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [fio_tests]
@@ -95,10 +95,10 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [fio_tests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [service]
 
 [service:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/workflows/fstests.j2 b/playbooks/roles/gen_hosts/templates/workflows/fstests.j2
index 7799fec3..2c8f18d6 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/fstests.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/fstests.j2
@@ -17,7 +17,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {% if kdevops_baseline_and_dev %}
@@ -27,7 +27,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 [fstests]
 {% for node_section in fstests_enabled_test_types %}
@@ -38,7 +38,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [fstests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% for section in fstests_enabled_test_types %}
 [fstests_{{ section | replace('-', '_') }}]
@@ -48,7 +48,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [fstests_{{ section | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% endfor %}
 
@@ -58,7 +58,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [nfsd:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
 
 [service]
 {% if kdevops_enable_iscsi %}
@@ -69,4 +69,4 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [service:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/generic.j2 b/playbooks/roles/gen_hosts/templates/workflows/generic.j2
index 20b2f389..944f019a 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/generic.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/generic.j2
@@ -20,4 +20,4 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [{{ kdevops_host_prefix | regex_replace('-$', '') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/gitr.j2 b/playbooks/roles/gen_hosts/templates/workflows/gitr.j2
index bed86ce5..2ed0ac4d 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/gitr.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/gitr.j2
@@ -17,7 +17,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {% if kdevops_baseline_and_dev %}
@@ -27,7 +27,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 [gitr]
 {% for host in gitr_enabled_hosts %}
@@ -38,14 +38,14 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [gitr:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [iscsi]
 {% if kdevops_enable_iscsi %}
 {{ kdevops_hosts_prefix }}-iscsi
 {% endif %}
 [iscsi:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 
 
 [nfsd]
@@ -53,7 +53,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_hosts_prefix }}-nfsd
 {% endif %}
 [nfsd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 
 [service]
 {% if kdevops_enable_iscsi %}
@@ -63,4 +63,4 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_hosts_prefix }}-nfsd
 {% endif %}
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/linux.j2 b/playbooks/roles/gen_hosts/templates/workflows/linux.j2
index 63032ada..47c20ab8 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/linux.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/linux.j2
@@ -8,12 +8,12 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 [baseline]
 {{ kdevops_host_prefix }}-builder
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 
 [service]
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/ltp.j2 b/playbooks/roles/gen_hosts/templates/workflows/ltp.j2
index 28c8ed17..4febfdb5 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/ltp.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/ltp.j2
@@ -17,7 +17,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {% if kdevops_baseline_and_dev %}
@@ -27,7 +27,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 [ltp]
 {% for host in ltp_enabled_hosts %}
@@ -38,8 +38,8 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [ltp:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [service]
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/minio.j2 b/playbooks/roles/gen_hosts/templates/workflows/minio.j2
index 42ba326b..aeb85357 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/minio.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/minio.j2
@@ -18,7 +18,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
@@ -29,7 +29,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 {% endif %}
 
 [minio]
@@ -38,7 +38,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [minio:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {# Create filesystem-specific groups #}
 {% if minio_multifs_xfs_4k_4ks|default(false)|bool %}
@@ -49,7 +49,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [minio-xfs-4k:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 minio_fstype = "xfs"
 minio_xfs_blocksize = 4096
 minio_xfs_sectorsize = 4096
@@ -63,7 +63,7 @@ minio_xfs_sectorsize = 4096
 {% endif %}
 
 [minio-xfs-16k:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 minio_fstype = "xfs"
 minio_xfs_blocksize = 16384
 minio_xfs_sectorsize = 4096
@@ -77,7 +77,7 @@ minio_xfs_sectorsize = 4096
 {% endif %}
 
 [minio-xfs-32k:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 minio_fstype = "xfs"
 minio_xfs_blocksize = 32768
 minio_xfs_sectorsize = 4096
@@ -91,7 +91,7 @@ minio_xfs_sectorsize = 4096
 {% endif %}
 
 [minio-xfs-64k:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 minio_fstype = "xfs"
 minio_xfs_blocksize = 65536
 minio_xfs_sectorsize = 4096
@@ -105,7 +105,7 @@ minio_xfs_sectorsize = 4096
 {% endif %}
 
 [minio-ext4-4k:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 minio_fstype = "ext4"
 minio_ext4_mkfs_opts = "-F"
 {% endif %}
@@ -118,7 +118,7 @@ minio_ext4_mkfs_opts = "-F"
 {% endif %}
 
 [minio-ext4-16k-bigalloc:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 minio_fstype = "ext4"
 minio_ext4_mkfs_opts = "-F -O bigalloc -C 16384"
 {% endif %}
@@ -131,7 +131,7 @@ minio_ext4_mkfs_opts = "-F -O bigalloc -C 16384"
 {% endif %}
 
 [minio-btrfs:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 minio_fstype = "btrfs"
 minio_btrfs_mkfs_opts = "-f"
 {% endif %}
@@ -152,14 +152,14 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-minio
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
 {{ kdevops_host_prefix }}-minio-dev
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [minio]
@@ -169,5 +169,5 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [minio:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/workflows/mix.j2 b/playbooks/roles/gen_hosts/templates/workflows/mix.j2
index 86619309..a825df5d 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/mix.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/mix.j2
@@ -28,7 +28,7 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}
 {% endif %}
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 [dev]
 {% if kdevops_baseline_and_dev %}
 {% if kdevops_enable_nixos|default(false) %}
@@ -38,18 +38,18 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {% endif %}
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 {% if kdevops_enable_iscsi %}
 [iscsi]
 {{ kdevops_host_prefix }}-iscsi
 [iscsi:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 {% if kdevops_nfsd_enable %}
 [nfsd]
 {{ kdevops_host_prefix }}-nfsd
 [nfsd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 [service]
 {% if kdevops_enable_iscsi %}
@@ -59,4 +59,4 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-nfsd
 {% endif %}
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/mmtests.j2 b/playbooks/roles/gen_hosts/templates/workflows/mmtests.j2
index d796cbe6..914da63c 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/mmtests.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/mmtests.j2
@@ -28,7 +28,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
@@ -41,7 +41,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [mmtests]
@@ -60,7 +60,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [mmtests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if mmtests_enabled_test_types %}
 {% for test_type in mmtests_enabled_test_types %}
@@ -71,7 +71,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [mmtests_{{ test_type | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% endfor %}
 {% endif %}
diff --git a/playbooks/roles/gen_hosts/templates/workflows/nfstest.j2 b/playbooks/roles/gen_hosts/templates/workflows/nfstest.j2
index 1633c2ca..8763fb8c 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/nfstest.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/nfstest.j2
@@ -17,7 +17,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {% if kdevops_baseline_and_dev %}
@@ -27,7 +27,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 [nfstest]
 {% for host in nfstest_enabled_hosts %}
@@ -38,21 +38,21 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [nfstest:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 [iscsi]
 {% if kdevops_enable_iscsi %}
 {{ kdevops_hosts_prefix }}-iscsi
 {% endif %}
 [iscsi:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 
 [nfsd]
 {% if kdevops_nfsd_enable %}
 {{ kdevops_hosts_prefix }}-nfsd
 {% endif %}
 [nfsd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 
 [service]
 {% if kdevops_enable_iscsi %}
@@ -62,4 +62,4 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {{ kdevops_hosts_prefix }}-nfsd
 {% endif %}
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/pynfs.j2 b/playbooks/roles/gen_hosts/templates/workflows/pynfs.j2
index 37167885..4c2806e7 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/pynfs.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/pynfs.j2
@@ -7,26 +7,26 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 [baseline]
 {{ kdevops_hosts_prefix }}-nfsd
 [baseline:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_baseline_python_interpreter }}"
 
 [dev]
 {% if kdevops_baseline_and_dev %}
 {{ kdevops_host_prefix }}-nfsd-dev
 {% endif %}
 [dev:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_dev_python_interpreter }}"
 
 [iscsi]
 {% if kdevops_enable_iscsi %}
 {{ kdevops_hosts_prefix }}-iscsi
 {% endif %}
 [iscsi:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 
 [nfsd]
 {{ kdevops_hosts_prefix }}-nfsd
 [nfsd:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
 
 [service]
 {% if kdevops_enable_iscsi %}
@@ -34,4 +34,4 @@ ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
 {% endif %}
 {{ kdevops_hosts_prefix }}-nfsd
 [service:vars]
-ansible_python_interpreter =  "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter =  "{{ kdevops_service_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/reboot-limit.j2 b/playbooks/roles/gen_hosts/templates/workflows/reboot-limit.j2
index 07bd6f80..ff57d467 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/reboot-limit.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/reboot-limit.j2
@@ -13,14 +13,14 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-reboot-limit
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
 {{ kdevops_host_prefix }}-reboot-limit-dev
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [reboot-limit]
@@ -30,4 +30,4 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [reboot-limit:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
diff --git a/playbooks/roles/gen_hosts/templates/workflows/selftests.j2 b/playbooks/roles/gen_hosts/templates/workflows/selftests.j2
index 4ef598c7..3acfce52 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/selftests.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/selftests.j2
@@ -17,7 +17,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
@@ -26,7 +26,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [selftests]
@@ -38,7 +38,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [selftests:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% for test_type in selftests_enabled_test_types %}
 [selftests_{{ test_type | replace('-', '_') }}]
@@ -48,6 +48,6 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [selftests_{{ test_type | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% endfor %}
diff --git a/playbooks/roles/gen_hosts/templates/workflows/sysbench.j2 b/playbooks/roles/gen_hosts/templates/workflows/sysbench.j2
index 34f22a83..af552f32 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/sysbench.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/sysbench.j2
@@ -17,7 +17,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
@@ -26,7 +26,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [sysbench]
@@ -38,7 +38,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endfor %}
 
 [sysbench:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% for test in enabled_sysbench_tests %}
 [sysbench_{{ test | replace('-', '_') }}]
@@ -48,6 +48,6 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [sysbench_{{ test | replace('-', '_') }}:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% endfor %}
diff --git a/playbooks/roles/gen_hosts/templates/workflows/vllm.j2 b/playbooks/roles/gen_hosts/templates/workflows/vllm.j2
index d0564e80..2e811e93 100644
--- a/playbooks/roles/gen_hosts/templates/workflows/vllm.j2
+++ b/playbooks/roles/gen_hosts/templates/workflows/vllm.j2
@@ -13,14 +13,14 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-vllm
 
 [baseline:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_baseline_and_dev %}
 [dev]
 {{ kdevops_host_prefix }}-vllm-dev
 
 [dev:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_dev_python_interpreter }}"
 
 {% endif %}
 [vllm]
@@ -30,14 +30,14 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {% endif %}
 
 [vllm:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_baseline_python_interpreter }}"
 
 {% if kdevops_enable_iscsi %}
 [iscsi]
 {{ kdevops_host_prefix }}-iscsi
 
 [iscsi:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 
 {% if kdevops_nfsd_enable %}
@@ -45,7 +45,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-nfsd
 
 [nfsd:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 
 {% if kdevops_smbd_enable %}
@@ -53,7 +53,7 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-smbd
 
 [smbd:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
 {% endif %}
 
 {% if kdevops_krb5_enable %}
@@ -61,5 +61,5 @@ ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
 {{ kdevops_host_prefix }}-kdc
 
 [kdc:vars]
-ansible_python_interpreter = "{{ kdevops_python_interpreter }}"
+ansible_python_interpreter = "{{ kdevops_service_python_interpreter }}"
 {% endif %}

-- 
2.53.0


  parent reply	other threads:[~2026-04-22 22:17 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-22 22:16 [PATCH 0/8] kdevops: small NIXOS and gen_hosts fixes Daniel Gomez
2026-04-22 22:16 ` [PATCH 1/8] nixos: remove duplicate nixos_channel extra-var from Makefile Daniel Gomez
2026-04-22 22:16 ` [PATCH 2/8] nixos: do not emit comment-only recipe lines under $(Q) Daniel Gomez
2026-04-22 22:16 ` [PATCH 3/8] nixos: drop hardcoded qxl video model from libvirt XML Daniel Gomez
2026-04-22 22:16 ` [PATCH 4/8] nixos: destroy the libvirt domain before cleaning up local artefacts Daniel Gomez
2026-04-22 22:16 ` Daniel Gomez [this message]
2026-04-22 22:16 ` [PATCH 6/8] gen_hosts: make the linux workflow node name follow bootlinux_builder Daniel Gomez
2026-04-22 22:16 ` [PATCH 7/8] defconfigs/nixos: name NIXOS hosts with the "nixos" prefix Daniel Gomez
2026-04-22 22:16 ` [PATCH 8/8] gen_hosts: drop sudo become on inventory owner refresh Daniel Gomez
2026-04-23 13:50 ` [PATCH 0/8] kdevops: small NIXOS and gen_hosts fixes Chuck Lever
2026-04-23 19:20   ` Daniel Gomez

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260423-kdevops-series-a-fixes-v1-5-69a82d0e1631@samsung.com \
    --to=da.gomez@kernel.org \
    --cc=chuck.lever@oracle.com \
    --cc=da.gomez@samsung.com \
    --cc=kdevops@lists.linux.dev \
    --cc=mcgrof@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox