* [PATCH 1/5] Makefile: add support for selective yamlconfig
2024-09-04 23:30 [PATCH 0/5] kdevops: embrace kconfig selective yaml output Luis Chamberlain
@ 2024-09-04 23:30 ` Luis Chamberlain
2024-09-04 23:30 ` [PATCH 2/5] scripts/guestfs.Makefile: use output yaml for GUESTFS_REQUIRES_UEFI Luis Chamberlain
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Luis Chamberlain @ 2024-09-04 23:30 UTC (permalink / raw)
To: kdevops, chuck.lever, da.gomez, jlayton; +Cc: mcgrof
Leverage support for selective yaml config support, this will let us
start removing the requirement to use Makefiles to append variables
into extra_vars.yaml, all we need to do is use the "output yaml" on
the symbols we want converted over.
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
---
Makefile | 3 ++-
| 11 +++++------
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/Makefile b/Makefile
index 9d4e954811ab..f9f2b04c6586 100644
--- a/Makefile
+++ b/Makefile
@@ -9,6 +9,7 @@ EXTRAVERSION =
all: deps
export KCONFIG_DIR=$(CURDIR)/scripts/kconfig
+export KCONFIG_YAMLCFG=$(CURDIR)/.extra_vars_auto.yaml
include $(KCONFIG_DIR)/kconfig.Makefile
include Makefile.subtrees
@@ -250,7 +251,7 @@ mrproper:
$(Q)rm -f terraform/*/terraform.tfvars
$(Q)rm -f $(KDEVOPS_NODES)
$(Q)rm -f $(KDEVOPS_HOSTFILE) $(KDEVOPS_MRPROPER)
- $(Q)rm -f .config .config.old extra_vars.yaml
+ $(Q)rm -f .config .config.old extra_vars.yaml $(KCONFIG_YAMLCFG)
$(Q)rm -f playbooks/secret.yml $(KDEVOPS_EXTRA_ADDON_DEST)
$(Q)rm -rf include
--git a/Makefile.extra_vars b/Makefile.extra_vars
index 1fbacb3441fe..d77ea67c20d4 100644
--- a/Makefile.extra_vars
+++ b/Makefile.extra_vars
@@ -45,13 +45,12 @@ endef
#$(patsubst $(firstword $(subst =, ,$(1)))=%,$(firstword $(subst =, ,$(1))):%,$(1))
#$(patsubst $(firstword $(subst =, ,$(1))=)%,$(firstword $(subst =, , $(1):)%,$(1)),$(1))
-# We can transform most of .config things we need to using
-# looping on ANSIBLE_EXTRA_ARGS and converting those with
-# this target. If you need to do more complex fancy stuff
-# extend the EXTRA_VAR_INPUTS variable in your workflow with
-# your custom stuff.
+# extra_vars.yaml first gets the selective yaml entries which kconfig writes
+# to for us in KCONFIG_YAMLCFG, then we expand on it with more dynamic data.
+# We use awk NF to just remove empty lines.
most_extra_vars:
- @echo --- > $(KDEVOPS_EXTRA_VARS)
+ @awk NF $(KCONFIG_YAMLCFG) > $(KDEVOPS_EXTRA_VARS)
+ @echo "# end of of yamlconfig auto output yaml variables " >> $(KDEVOPS_EXTRA_VARS)
@$(foreach exp,$(ANSIBLE_EXTRA_ARGS),echo $(call YAML_ENTRY,$(subst =,: ,$(exp)) >> $(KDEVOPS_EXTRA_VARS)))
# ANSIBLE_EXTRA_ARGS_SEPARATED is to be used for variables in .config
--
2.43.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 2/5] scripts/guestfs.Makefile: use output yaml for GUESTFS_REQUIRES_UEFI
2024-09-04 23:30 [PATCH 0/5] kdevops: embrace kconfig selective yaml output Luis Chamberlain
2024-09-04 23:30 ` [PATCH 1/5] Makefile: add support for selective yamlconfig Luis Chamberlain
@ 2024-09-04 23:30 ` Luis Chamberlain
2024-09-04 23:30 ` [PATCH 3/5] scripts/ssh.Makefile: remove Makefile appending of KDEVOPS_HOSTS_PREFIX Luis Chamberlain
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Luis Chamberlain @ 2024-09-04 23:30 UTC (permalink / raw)
To: kdevops, chuck.lever, da.gomez, jlayton; +Cc: mcgrof
Since the kconfig symbol name GUESTFS_REQUIRES_UEFI and the ansible
variable match exactly we can now just use "output yaml" on the
GUESTFS_REQUIRES_UEFI symbol, and so we don't need the Makefile
hack to ensure the variable gets converted over. This simplifies our
Makefiles considerably.
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
---
kconfigs/Kconfig.guestfs | 1 +
scripts/guestfs.Makefile | 4 ----
2 files changed, 1 insertion(+), 4 deletions(-)
diff --git a/kconfigs/Kconfig.guestfs b/kconfigs/Kconfig.guestfs
index 5e77704f4027..742781abcddc 100644
--- a/kconfigs/Kconfig.guestfs
+++ b/kconfigs/Kconfig.guestfs
@@ -8,6 +8,7 @@ config GUESTFS_HAS_CUSTOM_RAW_IMAGE_URL
config GUESTFS_REQUIRES_UEFI
bool
+ output yaml
config GUESTFS_CUSTOM_RAW_IMAGE_URL
depends on GUESTFS_HAS_CUSTOM_RAW_IMAGE
diff --git a/scripts/guestfs.Makefile b/scripts/guestfs.Makefile
index e4591ab446e3..af901b8ddaa0 100644
--- a/scripts/guestfs.Makefile
+++ b/scripts/guestfs.Makefile
@@ -7,10 +7,6 @@ KDEVOPS_NODES := guestfs/kdevops_nodes.yaml
export KDEVOPS_PROVISIONED_SSH := $(KDEVOPS_PROVISIONED_SSH_DEFAULT_GUARD)
-ifeq (y,$(CONFIG_GUESTFS_REQUIRES_UEFI))
-GUESTFS_ARGS += guestfs_requires_uefi=True
-endif
-
GUESTFS_ARGS += kdevops_enable_guestfs=True
GUESTFS_ARGS += guestfs_path='$(TOPDIR_PATH)/guestfs'
GUESTFS_ARGS += data_home_dir=/home/kdevops
--
2.43.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 3/5] scripts/ssh.Makefile: remove Makefile appending of KDEVOPS_HOSTS_PREFIX
2024-09-04 23:30 [PATCH 0/5] kdevops: embrace kconfig selective yaml output Luis Chamberlain
2024-09-04 23:30 ` [PATCH 1/5] Makefile: add support for selective yamlconfig Luis Chamberlain
2024-09-04 23:30 ` [PATCH 2/5] scripts/guestfs.Makefile: use output yaml for GUESTFS_REQUIRES_UEFI Luis Chamberlain
@ 2024-09-04 23:30 ` Luis Chamberlain
2024-09-04 23:30 ` [PATCH 4/5] workflows/Makefile: replace direct named entries with output yaml Luis Chamberlain
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Luis Chamberlain @ 2024-09-04 23:30 UTC (permalink / raw)
To: kdevops, chuck.lever, da.gomez, jlayton; +Cc: mcgrof
We have CONFIG_KDEVOPS_HOSTS_PREFIX but have two respective ansible
variable:
* kdevops_host_prefix
* kdevops_hosts_prefix
We need to keep these for now to ensure old configs work and so existing
extra_vars.yaml continue to work. We at least annotate these for future
unification into a release where folks are not going to use the old
symbols on existing running environments.
We can later look for these with:
git grep ^"# old-yamlconfig-compat"
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
---
kconfigs/Kconfig.kdevops | 7 +++++++
scripts/gen-hosts.Makefile | 1 -
scripts/ssh.Makefile | 3 ---
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/kconfigs/Kconfig.kdevops b/kconfigs/Kconfig.kdevops
index 80434b2b97ad..c613ff20c193 100644
--- a/kconfigs/Kconfig.kdevops
+++ b/kconfigs/Kconfig.kdevops
@@ -57,6 +57,7 @@ config KDEVOPS_HOSTS_PREFIX_SET_BY_CLI
config KDEVOPS_HOSTS_PREFIX
string "The hostname prefix to use for nodes"
+ output yaml
default $(shell, ./scripts/append-makefile-vars.sh $(KDEVOPS_HOSTS_PREFIX)) if KDEVOPS_HOSTS_PREFIX_SET_BY_CLI
default "kdevops" if !KDEVOPS_USE_DISTRO_HOSTS_PREFIX && !KDEVOPS_HOSTS_PREFIX_SET_BY_CLI
default CUSTOM_DISTRO_HOST_PREFIX if KDEVOPS_USE_DISTRO_HOSTS_PREFIX && !KDEVOPS_HOSTS_PREFIX_SET_BY_CLI
@@ -65,6 +66,12 @@ config KDEVOPS_HOSTS_PREFIX
help distinguish projects / goals for a set of nodes. You can use
this to override the hostname prefix used.
+# old-yamlconfig-compat
+config KDEVOPS_HOST_PREFIX
+ string
+ output yaml
+ default KDEVOPS_HOSTS_PREFIX
+
config KDEVOPS_CUSTOM_SSH_KEXALGORITHMS
string "The custom ssh config KexAlgorithms string to use"
depends on HAVE_DISTRO_REQUIRES_CUSTOM_SSH_KEXALGORITHMS
diff --git a/scripts/gen-hosts.Makefile b/scripts/gen-hosts.Makefile
index b4f7b730b3e8..0b8e4261069c 100644
--- a/scripts/gen-hosts.Makefile
+++ b/scripts/gen-hosts.Makefile
@@ -17,7 +17,6 @@ GENHOSTS_EXTRA_ARGS += kdevops_hosts_template_full_path='$(KDEVOPS_HOSTS_TEMPLAT
GENHOSTS_EXTRA_ARGS += kdevops_playbooks_dir_full_path='$(KDEVOPS_PLAYBOOKS_DIR_FULL_PATH)'
GENHOSTS_EXTRA_ARGS += kdevops_genhosts_templates_dir='$(KDEVOPS_HOSTS_TEMPLATE_DIR)'
-GENHOSTS_EXTRA_ARGS += kdevops_hosts_prefix='$(CONFIG_KDEVOPS_HOSTS_PREFIX)'
GENHOSTS_EXTRA_ARGS += kdevops_python_interpreter='$(CONFIG_KDEVOPS_PYTHON_INTERPRETER)'
GENHOSTS_EXTRA_ARGS += kdevops_python_old_interpreter='$(CONFIG_KDEVOPS_PYTHON_OLD_INTERPRETER)'
ifeq (y,$(CONFIG_KDEVOPS_BASELINE_AND_DEV))
diff --git a/scripts/ssh.Makefile b/scripts/ssh.Makefile
index 6265752d77d5..3ee9437b1b4c 100644
--- a/scripts/ssh.Makefile
+++ b/scripts/ssh.Makefile
@@ -11,9 +11,6 @@ SSH_CONFIG_FILE:=$(subst ",,$(CONFIG_KDEVOPS_SSH_CONFIG))
ANSIBLE_EXTRA_ARGS += sshconfig=$(CONFIG_KDEVOPS_SSH_CONFIG)
endif
-KDEVOPS_HOSTS_PREFIX:=$(subst ",,$(CONFIG_KDEVOPS_HOSTS_PREFIX))
-ANSIBLE_EXTRA_ARGS += kdevops_host_prefix=$(KDEVOPS_HOSTS_PREFIX)
-
PHONY += remove-ssh-key
remove-ssh-key:
$(NQ) Removing key pair for $(KDEVOPS_SSH_PRIVKEY)
--
2.43.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 4/5] workflows/Makefile: replace direct named entries with output yaml
2024-09-04 23:30 [PATCH 0/5] kdevops: embrace kconfig selective yaml output Luis Chamberlain
` (2 preceding siblings ...)
2024-09-04 23:30 ` [PATCH 3/5] scripts/ssh.Makefile: remove Makefile appending of KDEVOPS_HOSTS_PREFIX Luis Chamberlain
@ 2024-09-04 23:30 ` Luis Chamberlain
2024-09-04 23:30 ` [PATCH 5/5] fstests: use selective yaml output on a slew of different variables Luis Chamberlain
2024-09-05 8:03 ` [PATCH 0/5] kdevops: embrace kconfig selective yaml output Luis Chamberlain
5 siblings, 0 replies; 7+ messages in thread
From: Luis Chamberlain @ 2024-09-04 23:30 UTC (permalink / raw)
To: kdevops, chuck.lever, da.gomez, jlayton; +Cc: mcgrof
There are workflow variables which have an exact respective ansible
variable, just use the new "output yaml" so we can aggregate these
automatically directly from kconfig.
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
---
kconfigs/workflows/Kconfig | 8 ++++++++
workflows/Makefile | 8 --------
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/kconfigs/workflows/Kconfig b/kconfigs/workflows/Kconfig
index 28262741e792..6530ce3cf50e 100644
--- a/kconfigs/workflows/Kconfig
+++ b/kconfigs/workflows/Kconfig
@@ -260,6 +260,7 @@ endif # !WORKFLOWS_DEDICATED_WORKFLOW
config KDEVOPS_WORKFLOW_ENABLE_FSTESTS
bool
+ output yaml
default y if KDEVOPS_WORKFLOW_NOT_DEDICATED_ENABLE_FSTESTS || KDEVOPS_WORKFLOW_DEDICATE_FSTESTS
if KDEVOPS_WORKFLOW_ENABLE_FSTESTS
@@ -270,6 +271,7 @@ endif # KDEVOPS_WORKFLOW_ENABLE_FSTESTS
config KDEVOPS_WORKFLOW_ENABLE_BLKTESTS
bool
+ output yaml
default y if KDEVOPS_WORKFLOW_NOT_DEDICATED_ENABLE_BLKTESTS || KDEVOPS_WORKFLOW_DEDICATE_BLKTESTS
if KDEVOPS_WORKFLOW_ENABLE_BLKTESTS
@@ -280,6 +282,7 @@ endif # KDEVOPS_WORKFLOW_ENABLE_BLKTESTS
config KDEVOPS_WORKFLOW_ENABLE_CXL
bool
+ output yaml
default y if KDEVOPS_WORKFLOW_NOT_DEDICATED_ENABLE_CXL || KDEVOPS_WORKFLOW_DEDICATE_CXL
if KDEVOPS_WORKFLOW_ENABLE_CXL
@@ -290,6 +293,7 @@ endif # KDEVOPS_WORKFLOW_ENABLE_CXL
config KDEVOPS_WORKFLOW_ENABLE_PYNFS
bool
+ output yaml
default y if KDEVOPS_WORKFLOW_NOT_DEDICATED_ENABLE_PYNFS || KDEVOPS_WORKFLOW_DEDICATE_PYNFS
select KDEVOPS_SETUP_NFSD
@@ -301,6 +305,7 @@ endif # KDEVOPS_WORKFLOW_ENABLE_PYNFS
config KDEVOPS_WORKFLOW_ENABLE_SELFTESTS
bool
+ output yaml
default y if KDEVOPS_WORKFLOW_NOT_DEDICATED_ENABLE_SELFTESTS || KDEVOPS_WORKFLOW_DEDICATE_SELFTESTS
if KDEVOPS_WORKFLOW_ENABLE_SELFTESTS
@@ -311,6 +316,7 @@ endif # KDEVOPS_WORKFLOW_ENABLE_SELFTESTS
config KDEVOPS_WORKFLOW_ENABLE_GITR
bool
+ output yaml
default y if KDEVOPS_WORKFLOW_NOT_DEDICATED_ENABLE_GITR || KDEVOPS_WORKFLOW_DEDICATE_GITR
if KDEVOPS_WORKFLOW_ENABLE_GITR
@@ -321,6 +327,7 @@ endif # KDEVOPS_WORKFLOW_ENABLE_GITR
config KDEVOPS_WORKFLOW_ENABLE_LTP
bool
+ output yaml
default y if KDEVOPS_WORKFLOW_NOT_DEDICATED_ENABLE_LTP || KDEVOPS_WORKFLOW_DEDICATE_LTP
if KDEVOPS_WORKFLOW_ENABLE_LTP
@@ -331,6 +338,7 @@ endif # KDEVOPS_WORKFLOW_ENABLE_GITR
config KDEVOPS_WORKFLOW_ENABLE_NFSTEST
bool
+ output yaml
default y if KDEVOPS_WORKFLOW_NOT_DEDICATED_ENABLE_NFSTEST || KDEVOPS_WORKFLOW_DEDICATE_NFSTEST
if KDEVOPS_WORKFLOW_ENABLE_NFSTEST
diff --git a/workflows/Makefile b/workflows/Makefile
index e305f2629abf..34afb9af3f9b 100644
--- a/workflows/Makefile
+++ b/workflows/Makefile
@@ -15,27 +15,22 @@ WORKFLOW_ARGS += kdevops_bootlinux='False'
endif
ifeq (y,$(CONFIG_KDEVOPS_WORKFLOW_ENABLE_FSTESTS))
-WORKFLOW_ARGS += kdevops_workflow_enable_fstests='True'
include workflows/fstests/Makefile
endif # CONFIG_KDEVOPS_WORKFLOW_ENABLE_FSTESTS == y
ifeq (y,$(CONFIG_KDEVOPS_WORKFLOW_ENABLE_BLKTESTS))
-WORKFLOW_ARGS += kdevops_workflow_enable_blktests='True'
include workflows/blktests/Makefile
endif # CONFIG_KDEVOPS_WORKFLOW_ENABLE_BLKTESTS == y
ifeq (y,$(CONFIG_KDEVOPS_WORKFLOW_ENABLE_CXL))
-WORKFLOW_ARGS += kdevops_workflow_enable_cxl='True'
include workflows/cxl/Makefile
endif # CONFIG_KDEVOPS_WORKFLOW_ENABLE_CXL == y
ifeq (y,$(CONFIG_KDEVOPS_WORKFLOW_ENABLE_PYNFS))
-WORKFLOW_ARGS += kdevops_workflow_enable_pynfs='True'
include workflows/pynfs/Makefile
endif # CONFIG_KDEVOPS_WORKFLOW_ENABLE_PYNFS == y
ifeq (y,$(CONFIG_KDEVOPS_WORKFLOW_ENABLE_SELFTESTS))
-WORKFLOW_ARGS += kdevops_workflow_enable_selftests='True'
include workflows/selftests/Makefile
endif # CONFIG_KDEVOPS_WORKFLOW_ENABLE_SELFTESTS
@@ -44,17 +39,14 @@ include workflows/demos/reboot-limit/Makefile
endif # CONFIG_WORKFLOWS_REBOOT_LIMIT == y
ifeq (y,$(CONFIG_KDEVOPS_WORKFLOW_ENABLE_GITR))
-WORKFLOW_ARGS += kdevops_workflow_enable_gitr='True'
include workflows/gitr/Makefile
endif # CONFIG_KDEVOPS_WORKFLOW_ENABLE_GITR == y
ifeq (y,$(CONFIG_KDEVOPS_WORKFLOW_ENABLE_LTP))
-WORKFLOW_ARGS += kdevops_workflow_enable_ltp='True'
include workflows/ltp/Makefile
endif # CONFIG_KDEVOPS_WORKFLOW_ENABLE_LTP == y
ifeq (y,$(CONFIG_KDEVOPS_WORKFLOW_ENABLE_NFSTEST))
-WORKFLOW_ARGS += kdevops_workflow_enable_nfstest='True'
include workflows/nfstest/Makefile
endif # CONFIG_KDEVOPS_WORKFLOW_ENABLE_NFSTEST == y
--
2.43.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 5/5] fstests: use selective yaml output on a slew of different variables
2024-09-04 23:30 [PATCH 0/5] kdevops: embrace kconfig selective yaml output Luis Chamberlain
` (3 preceding siblings ...)
2024-09-04 23:30 ` [PATCH 4/5] workflows/Makefile: replace direct named entries with output yaml Luis Chamberlain
@ 2024-09-04 23:30 ` Luis Chamberlain
2024-09-05 8:03 ` [PATCH 0/5] kdevops: embrace kconfig selective yaml output Luis Chamberlain
5 siblings, 0 replies; 7+ messages in thread
From: Luis Chamberlain @ 2024-09-04 23:30 UTC (permalink / raw)
To: kdevops, chuck.lever, da.gomez, jlayton; +Cc: mcgrof
These are the first set of obvious candidate variables which we can
convert over to just using the selective yaml output so we don't have
to do the Makefile variable conversion ourselves.
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
---
workflows/fstests/Kconfig | 11 +++++++++
workflows/fstests/Makefile | 46 --------------------------------------
2 files changed, 11 insertions(+), 46 deletions(-)
diff --git a/workflows/fstests/Kconfig b/workflows/fstests/Kconfig
index 8f09f8f3bec9..0e7e5d5787a3 100644
--- a/workflows/fstests/Kconfig
+++ b/workflows/fstests/Kconfig
@@ -35,12 +35,15 @@ config FSTESTS_CIFS_ENABLE
config FSTESTS_USES_NO_DEVICES
bool
+ output yaml
config FSTESTS_GENERATE_SIMPLE_CONFIG_ENABLE
bool
+ output yaml
config FSTESTS_GENERATE_NVME_LIVE_CONFIG_ENABLE
bool
+ output yaml
choice
prompt "Target filesystem to test"
@@ -305,6 +308,7 @@ config HAVE_MIRROR_KDEVOPS_FSTESTS
config FSTESTS_GIT
string "The fstests git tree to clone"
+ output yaml
default DEFAULT_FSTESTS_HTTPS_URL if !GIT_ALTERNATIVES && !HAVE_MIRROR_FSTESTS
default $(shell, scripts/append-makefile-vars.sh git:// $(KDEVOPS_DEFAULT_BRIDGE_IP_VAGRANT) /mirror/fstests.git) if !GIT_ALTERNATIVES && HAVE_MIRROR_FSTESTS && VAGRANT
default $(shell, scripts/append-makefile-vars.sh git:// $(KDEVOPS_DEFAULT_BRIDGE_IP_GUESTFS) /mirror/fstests.git) if !GIT_ALTERNATIVES && HAVE_MIRROR_FSTESTS && GUESTFS
@@ -318,6 +322,7 @@ config FSTESTS_GIT
config FSTESTS_DATA
string "Where to clone the fstests git tree to"
+ output yaml
default "{{data_path}}/fstests"
help
This is the target location of where to clone the above git tree.
@@ -326,12 +331,14 @@ config FSTESTS_DATA
config FSTESTS_GIT_VERSION
string "The fstests git tree version(branch/tag/commit)"
+ output yaml
default "HEAD"
help
The fstests git tree version.
config FSTESTS_DATA_TARGET
string "The target fstests install directory"
+ output yaml
default "/var/lib/xfstests"
help
The directory where fstests will be installed. Modifying this probably
@@ -404,6 +411,7 @@ config FSTESTS_TESTDEV_SPARSEFILE_GENERATION
config FSTESTS_TESTDEV_NVME_PARTITION_EUIS
bool "Use first real NVMe drive and create partitions"
+ output yaml
select EXTRA_STORAGE_SUPPORTS_512
select EXTRA_STORAGE_SUPPORTS_1K
select EXTRA_STORAGE_SUPPORTS_2K
@@ -493,6 +501,7 @@ endif # FSTESTS_TMPFS
config FSTESTS_TESTDEV_NVME_FALLBACK_MODEL_SERIAL
bool "Fallback to using NVMe model an serial"
+ output yaml
depends on FSTESTS_TESTDEV_NVME_PARTITION_EUIS || FSTESTS_TESTDEV_NVME_EUIS
default y
help
@@ -626,6 +635,7 @@ config FSTESTS_TEST_DEV_ZNS
config FSTESTS_TEST_DIR
string "The path to use for the fstests TEST_DIR variable"
+ output yaml
default "/media/test"
help
To test with fstests one must set the TEST_DEV variable, this sets
@@ -648,6 +658,7 @@ config FSTESTS_SCRATCH_DEV_POOL_ZNS
config FSTESTS_SCRATCH_MNT
string "The path to use for the fstests SCRATCH_MNT variable"
+ output yaml
default "/media/scratch"
help
This sets the SCRATCH_MNT variable.
diff --git a/workflows/fstests/Makefile b/workflows/fstests/Makefile
index bc57b3190ab0..f58d2771fe94 100644
--- a/workflows/fstests/Makefile
+++ b/workflows/fstests/Makefile
@@ -1,9 +1,5 @@
# SPDX-License-Identifier: copyleft-next-0.3.1
-FSTESTS=$(subst ",,$(CONFIG_FSTESTS_DATA_TARGET))
-FSTESTS_SETUP_SYSTEM=$(subst ",,$(CONFIG_FSTESTS_SETUP_SYSTEM))
-FSTESTS_TEST_DEV=$(subst ",,$(CONFIG_FSTESTS_TEST_DEV))
-
FSTESTS_ARGS :=
FSTESTS_ARGS_SEPARATED :=
FSTESTS_ARGS_DIRECT :=
@@ -16,36 +12,14 @@ ifeq (y,$(CONFIG_WORKFLOWS_DEDICATED_WORKFLOW))
export KDEVOPS_HOSTS_TEMPLATE := fstests.j2
endif
-FSTESTS_GIT:=$(subst ",,$(CONFIG_FSTESTS_GIT))
-FSTESTS_DATA:=$(subst ",,$(CONFIG_FSTESTS_DATA))
-FSTESTS_GIT_VERSION:=$(subst ",,$(CONFIG_FSTESTS_GIT_VERSION))
-FSTESTS_DATA_TARGET:=$(subst ",,$(CONFIG_FSTESTS_DATA_TARGET))
-
-FSTESTS_ARGS += fstests_git=$(FSTESTS_GIT)
-FSTESTS_ARGS += fstests_git_version=$(FSTESTS_GIT_VERSION)
FSTESTS_ARGS += fstests_fstyp='$(FSTYP)'
FS_CONFIG='$(FSTYP)/$(FSTYP).config'
FSTESTS_ARGS += fs_config_role_path='roles/fstests/templates/$(FS_CONFIG)'
-FSTESTS_ARGS += fstests_data=\"$(FSTESTS_DATA)\"
-FSTESTS_ARGS += fstests_setup_system='$(FSTESTS_SETUP_SYSTEM)'
-FSTESTS_ARGS += fstests_data_target='$(FSTESTS_DATA_TARGET)'
ifeq (y,$(CONFIG_FSTESTS_TFB_COPY_ENABLE))
FSTESTS_ARGS += fstests_tfp_copy_enable='True'
endif
-ifeq (y,$(CONFIG_FSTESTS_USES_NO_DEVICES))
-FSTESTS_ARGS += fstests_uses_no_devices='True'
-endif
-
-ifeq (y,$(CONFIG_FSTESTS_GENERATE_SIMPLE_CONFIG_ENABLE))
-FSTESTS_ARGS += fstests_generate_simple_config_enable='True'
-endif
-
-ifeq (y,$(CONFIG_FSTESTS_GENERATE_NVME_LIVE_CONFIG_ENABLE))
-FSTESTS_ARGS += fstests_generate_nvme_live_config_enable='True'
-endif
-
ifeq (y,$(CONFIG_FSTESTS_XFS))
include $(TOPDIR)/workflows/fstests/Makefile.xfs
endif
@@ -78,26 +52,6 @@ export FSTESTS_SPARSE_FILENAME_PREFIX:=
export FSTESTS_SCRATCH_MNT:=
export FSTESTS_LOGWRITES_DEV:=
-FSTESTS_TEST_DIR:=$(subst ",,$(CONFIG_FSTESTS_TEST_DIR))
-FSTESTS_ARGS += fstests_test_dir='$(FSTESTS_TEST_DIR)'
-
-FSTESTS_SCRATCH_MNT:=$(subst ",,$(CONFIG_FSTESTS_SCRATCH_MNT))
-FSTESTS_ARGS += fstests_scratch_mnt='$(FSTESTS_SCRATCH_MNT)'
-
-# Only 1 real NVMe drive is required use PCIe passthrough with make dynconfig
-ifeq (y,$(CONFIG_FSTESTS_TESTDEV_NVME_PARTITION_EUIS))
-FSTESTS_ARGS += fstests_testdev_nvme_partition_euis='True'
-endif
-
-# 7 drives are needed, use PCIe passthrough onto the guest with make dynconfig
-ifeq (y,$(CONFIG_FSTESTS_TESTDEV_NVME_EUIS))
-FSTESTS_ARGS += fstests_testdev_nvme_euis='True'
-endif
-
-ifeq (y,$(CONFIG_FSTESTS_TESTDEV_NVME_FALLBACK_MODEL_SERIAL))
-FSTESTS_ARGS += fstests_testdev_nvme_fallback_model_serial='True'
-endif
-
ifeq (y,$(CONFIG_CONFIG_BOOTLINUX))
TREE_REF:=$(subst ",,$(CONFIG_BOOTLINUX_TREE_REF))
FSTESTS_ARGS += fstests_perf_config='$(PROJECTRELEASE)-kernel-$(TREE_REF)'
--
2.43.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH 0/5] kdevops: embrace kconfig selective yaml output
2024-09-04 23:30 [PATCH 0/5] kdevops: embrace kconfig selective yaml output Luis Chamberlain
` (4 preceding siblings ...)
2024-09-04 23:30 ` [PATCH 5/5] fstests: use selective yaml output on a slew of different variables Luis Chamberlain
@ 2024-09-05 8:03 ` Luis Chamberlain
5 siblings, 0 replies; 7+ messages in thread
From: Luis Chamberlain @ 2024-09-05 8:03 UTC (permalink / raw)
To: kdevops, chuck.lever, da.gomez, jlayton
On Wed, Sep 04, 2024 at 04:30:35PM -0700, Luis Chamberlain wrote:
> PS. nconfig doesn't yet have yamlconfig support, I can add it easily
> if this approach is agreeable.
I was wrong, I just forgot to add nconf to the clean targets, so just
removing scripts/kconfig/nconf scripts/kconfig/nconf.o and trying again
made it work.
And so I guess this is pretty much ready if we agree to go forward.
Luis
^ permalink raw reply [flat|nested] 7+ messages in thread