From: Luis Chamberlain <mcgrof@kernel.org>
To: Chuck Lever <cel@kernel.org>, Daniel Gomez <da.gomez@kruces.com>,
kdevops@lists.linux.dev
Cc: Luis Chamberlain <mcgrof@kernel.org>
Subject: [PATCH 0/2] declared hosts support
Date: Fri, 29 Aug 2025 03:31:00 -0700 [thread overview]
Message-ID: <20250829103102.1270204-1-mcgrof@kernel.org> (raw)
It should be easy for us to add bare metal support because well, the
biggest pain is bring up. If bringup and ssh is already configured,
then all we have to do is just skip a bunch of things. So the question
to ask, is how do we generate the hosts file? The easiest interface
I could think of is to allow you to specify it at make menuconfig time
or defconfig time with a DECLARE_HOSTS= specifier with either a space
or comma separated lists of hosts.
I tested this with a new workflow I am testing, minio WARP testing, but I
also tested this simply with a random host I can ssh to with just:
make defconfig-xfs_reflink_4k DECLARE_HOSTS=foo ; make AV=2
make uname
And that works. For my other workflow I am testing I got full test
restults and mkfs'd a drive. And so each workflow needs a bit of love
for further DECLARE_HOSTS support. Things like the data partition, and
so on. I suspect we can just specify some of these in the command line
as CLI variables.
But this goes with just basic raw support. Maybe we only enable
workflows for KDEVOPS_USE_DECLARED_HOSTS if we declare the workflow
as supporting it (maybe select SUPPORTS_DECLARED_HOSTS)?
Luis Chamberlain (2):
gen_hosts: refactor monolithic hosts.j2 template into per-workflow
templates
declared_hosts: add support for pre-existing infrastructure
Makefile | 7 +
kconfigs/Kconfig.bringup | 7 +
kconfigs/Kconfig.declared_hosts | 65 +++++
playbooks/roles/devconfig/tasks/main.yml | 60 ++++
playbooks/roles/gen_hosts/tasks/main.yml | 40 ++-
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 +
.../templates/workflows/declared-hosts.j2 | 219 +++++++++++++++
.../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 ++++
playbooks/roles/gen_nodes/tasks/main.yml | 5 +
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 +-
35 files changed, 1143 insertions(+), 245 deletions(-)
create mode 100644 kconfigs/Kconfig.declared_hosts
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/declared-hosts.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
--
2.50.1
next reply other threads:[~2025-08-29 10:31 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-29 10:31 Luis Chamberlain [this message]
2025-08-29 10:31 ` [PATCH 1/2] gen_hosts: refactor monolithic hosts.j2 template into per-workflow templates Luis Chamberlain
2025-08-29 10:36 ` Luis Chamberlain
2025-08-29 10:31 ` [PATCH 2/2] declared_hosts: add support for pre-existing infrastructure Luis Chamberlain
-- strict thread matches above, loose matches on Subject: below --
2025-08-29 10:56 [PATCH 0/2] declared hosts support Luis Chamberlain
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=20250829103102.1270204-1-mcgrof@kernel.org \
--to=mcgrof@kernel.org \
--cc=cel@kernel.org \
--cc=da.gomez@kruces.com \
--cc=kdevops@lists.linux.dev \
/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