From: cel@kernel.org
To: Daniel Gomez <da.gomez@kernel.org>
Cc: <kdevops@lists.linux.dev>, Chuck Lever <chuck.lever@oracle.com>
Subject: [PATCH v2 2/2] Add the stable release candidate repo to the Linux git repos menu
Date: Thu, 13 Mar 2025 17:00:10 -0400 [thread overview]
Message-ID: <20250313210010.1633624-3-cel@kernel.org> (raw)
In-Reply-To: <20250313210010.1633624-1-cel@kernel.org>
From: Chuck Lever <chuck.lever@oracle.com>
I have several nightly test runners that pull LTS release candidates
for testing. I have to hand-edit the Kconfig for each test runner
when switching from the master repo to a local mirror.
I would like to get those to switch automatically over
to using a local mirror, when one is available.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
---
kconfigs/workflows/Kconfig.bootlinux | 4 ++
scripts/gen-refs-default.Makefile | 4 +-
scripts/gen-refs-user.Makefile | 20 ++++++-
workflows/linux/Kconfig | 9 +++
workflows/linux/Kconfig.stable_rc | 31 ++++++++++
.../linux/refs/default/Kconfig.stable_rc | 56 +++++++++++++++++++
workflows/linux/refs/static/stable_rc.yaml | 30 ++++++++++
7 files changed, 149 insertions(+), 5 deletions(-)
create mode 100644 workflows/linux/Kconfig.stable_rc
create mode 100644 workflows/linux/refs/default/Kconfig.stable_rc
create mode 100644 workflows/linux/refs/static/stable_rc.yaml
diff --git a/kconfigs/workflows/Kconfig.bootlinux b/kconfigs/workflows/Kconfig.bootlinux
index 25bbe4ea7e47..a66e44ee8cb7 100644
--- a/kconfigs/workflows/Kconfig.bootlinux
+++ b/kconfigs/workflows/Kconfig.bootlinux
@@ -12,6 +12,10 @@ config HAVE_BOOTLINUX_TREE_STABLE_USER_REFS
bool
default $(shell, scripts/check_file_empty.sh workflows/linux/refs/user/Kconfig.stable)
+config HAVE_BOOTLINUX_TREE_STABLE_RC_USER_REFS
+ bool
+ default $(shell, scripts/check_file_empty.sh workflows/linux/refs/user/Kconfig.stable_rc)
+
config HAVE_BOOTLINUX_TREE_MCGROF_LINUS_USER_REFS
bool
default $(shell, scripts/check_file_empty.sh workflows/linux/refs/user/Kconfig.mcgrof-linus)
diff --git a/scripts/gen-refs-default.Makefile b/scripts/gen-refs-default.Makefile
index c5d12e152cb4..0ef1d67cbfd3 100644
--- a/scripts/gen-refs-default.Makefile
+++ b/scripts/gen-refs-default.Makefile
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: copyleft-next-0.3.1
-REF_DEF_OBJS := $(addprefix $(TOPDIR)/workflows/linux/refs/default/, Kconfig.linus Kconfig.next Kconfig.stable)
-REF_DEF_SRC := $(addprefix $(TOPDIR)/workflows/linux/refs/static/, linus.yaml next.yaml stable.yaml)
+REF_DEF_OBJS := $(addprefix $(TOPDIR)/workflows/linux/refs/default/, Kconfig.linus Kconfig.next Kconfig.stable Kconfig.stable_rc)
+REF_DEF_SRC := $(addprefix $(TOPDIR)/workflows/linux/refs/static/, linus.yaml next.yaml stable.yaml stable_rc.yaml)
KRELEASES_FORCE := $(if $(filter --force,$(KRELEASES_FORCE)),--force,)
diff --git a/scripts/gen-refs-user.Makefile b/scripts/gen-refs-user.Makefile
index 5c5df2f5417e..ab2e622f0234 100644
--- a/scripts/gen-refs-user.Makefile
+++ b/scripts/gen-refs-user.Makefile
@@ -3,6 +3,7 @@
SRC_URI_HTTPS_LINUS = https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
SRC_URI_HTTPS_NEXT = https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
SRC_URI_HTTPS_STABLE = https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
+SRC_URI_HTTPS_STABLE_RC = https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
SRC_URI_HTTPS_MCGROF_LINUS = https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git
SRC_URI_HTTPS_MCGROF_NEXT = https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git
@@ -17,6 +18,7 @@ SRC_URI_HTTPS_XFS = https://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git
REFS_TARGET_LINUS := gen_refs_linus
REFS_TARGET_NEXT := gen_refs_next
REFS_TARGET_STABLE := gen_refs_stable
+REFS_TARGET_STABLE_RC := gen_refs_stable_rc
REFS_TARGET_DEVELOPMENT := gen_refs_mcgrof_linus
REFS_TARGET_DEVELOPMENT += gen_refs_mcgrof_next
@@ -68,6 +70,18 @@ gen_refs_stable:
--repo $(SRC_URI_HTTPS_STABLE) \
--refs $(REFS_COUNT)
+PHONY += gen_refs_stable_rc
+gen_refs_stable_rc:
+ $(Q)$(E) "Generating refs/$(REFS_DIR)/Kconfig.$(subst _,-,$(patsubst gen_refs_%,%,$@)) ($(REFS_COUNT) refs)..."
+ $(Q)./scripts/generate_refs.py \
+ --prefix BOOTLINUX_TREE_STABLE_RC \
+ --output workflows/linux/refs/$(REFS_DIR)/Kconfig.stable_rc \
+ --extra workflows/linux/refs/static/stable_rc.yaml \
+ --force \
+ gitref \
+ --repo $(SRC_URI_HTTPS_STABLE_RC) \
+ --refs $(REFS_COUNT)
+
PHONY += gen_refs_mcgrof_linus
gen_refs_mcgrof_linus:
$(Q)$(E) "Generating refs/$(REFS_DIR)/Kconfig.$(subst _,-,$(patsubst gen_refs_%,%,$@)) ($(REFS_COUNT) refs)..."
@@ -183,14 +197,14 @@ refs-user-clean:
fi
_gen-user-refs:
- $(Q)$(E) "Generating refs/user/Kconfig.{linus,next,stable,mcgrof-linus,mcgrof-next,btrfs-devel,cel-linux-jlayton-linux-kdevops-linus} files..."
- $(Q)$(MAKE) REFS_COUNT=15 REFS_DIR="user" $(REFS_TARGET_LINUS) $(REFS_TARGET_NEXT) $(REFS_TARGET_STABLE) $(REFS_TARGET_DEVELOPMENT)
+ $(Q)$(E) "Generating refs/user/Kconfig.{linus,next,stable,stable_rc,mcgrof-linus,mcgrof-next,btrfs-devel,cel-linux,jlayton-linux,kdevops-linus} files..."
+ $(Q)$(MAKE) REFS_COUNT=15 REFS_DIR="user" $(REFS_TARGET_LINUS) $(REFS_TARGET_NEXT) $(REFS_TARGET_STABLE) $(REFS_TARGET_STABLE_RC) $(REFS_TARGET_DEVELOPMENT)
PHONY += refs-user
refs-user: _gen-user-refs
_gen-default-refs-development:
- $(Q)$(E) "Generating refs/default/Kconfig-{mcgrof-linus,mcgrof-next,btrfs-devel,cel-linux-jlayton-linux-kdevops-linus} files..."
+ $(Q)$(E) "Generating refs/default/Kconfig-{mcgrof-linus,mcgrof-next,btrfs-devel,cel-linux,jlayton-linux,kdevops-linus,stable_rc} files..."
$(Q)$(MAKE) REFS_COUNT=0 REFS_DIR="default" $(REFS_TARGET_DEVELOPMENT)
.PHONY: $(PHONY)
diff --git a/workflows/linux/Kconfig b/workflows/linux/Kconfig
index 6b496c56c762..8c4de4cc8ee2 100644
--- a/workflows/linux/Kconfig
+++ b/workflows/linux/Kconfig
@@ -126,6 +126,11 @@ config BOOTLINUX_STABLE
help
This will let you choose from stable Linux trees only.
+config BOOTLINUX_STABLE_RC
+ bool "Stable Linux release candidates"
+ help
+ This will let you choose from stable Linux release candidates only.
+
config BOOTLINUX_DEV
bool "Development Linux releases"
help
@@ -141,6 +146,7 @@ endchoice
source "workflows/linux/Kconfig.linus"
source "workflows/linux/Kconfig.stable"
+source "workflows/linux/Kconfig.stable_rc"
source "workflows/linux/Kconfig.dev"
source "workflows/linux/Kconfig.modules"
source "workflows/linux/Kconfig.next"
@@ -185,6 +191,7 @@ config BOOTLINUX_TREE_NAME
string
default BOOTLINUX_TREE_LINUS_NAME if BOOTLINUX_TREE_LINUS
default BOOTLINUX_TREE_STABLE_NAME if BOOTLINUX_TREE_STABLE
+ default BOOTLINUX_TREE_STABLE_RC_NAME if BOOTLINUX_TREE_STABLE_RC
default BOOTLINUX_TREE_NEXT_NAME if BOOTLINUX_TREE_NEXT
default BOOTLINUX_TREE_BTRFS_DEVEL_NAME if BOOTLINUX_TREE_BTRFS_DEVEL
default BOOTLINUX_TREE_KDEVOPS_NAME if BOOTLINUX_TREE_KDEVOPS_LINUS
@@ -200,6 +207,7 @@ config BOOTLINUX_TREE
string
default BOOTLINUX_TREE_LINUS_URL if BOOTLINUX_TREE_LINUS
default BOOTLINUX_TREE_STABLE_URL if BOOTLINUX_TREE_STABLE
+ default BOOTLINUX_TREE_STABLE_RC_URL if BOOTLINUX_TREE_STABLE_RC
default BOOTLINUX_TREE_NEXT_URL if BOOTLINUX_TREE_NEXT
default BOOTLINUX_TREE_MCGROF_URL if BOOTLINUX_TREE_MCGROF
default BOOTLINUX_TREE_MODULES_URL if BOOTLINUX_TREE_MODULES
@@ -248,6 +256,7 @@ config BOOTLINUX_TREE_REF
string
default BOOTLINUX_TREE_LINUS_REF if BOOTLINUX_TREE_LINUS
default BOOTLINUX_TREE_STABLE_REF if BOOTLINUX_STABLE
+ default BOOTLINUX_TREE_STABLE_RC_REF if BOOTLINUX_STABLE_RC
default BOOTLINUX_TREE_NEXT_REF if BOOTLINUX_TREE_NEXT
default BOOTLINUX_TREE_VFS_REF if BOOTLINUX_TREE_VFS
default BOOTLINUX_TREE_XFS_REF if BOOTLINUX_TREE_XFS
diff --git a/workflows/linux/Kconfig.stable_rc b/workflows/linux/Kconfig.stable_rc
new file mode 100644
index 000000000000..8bcb7a2fba61
--- /dev/null
+++ b/workflows/linux/Kconfig.stable_rc
@@ -0,0 +1,31 @@
+if BOOTLINUX_STABLE_RC
+
+choice
+ prompt "Linux stable release candidate tree to use"
+ default BOOTLINUX_TREE_STABLE_RC
+
+config BOOTLINUX_TREE_STABLE_RC
+ bool "linux-stable-rc"
+ help
+ Use the linux-stable release candidate tree.
+
+endchoice
+
+if BOOTLINUX_TREE_STABLE_RC
+
+source "workflows/linux/refs/default/Kconfig.stable_rc"
+source "workflows/linux/refs/user/Kconfig.stable_rc"
+
+endif # BOOTLINUX_TREE_STABLE_RC
+
+config BOOTLINUX_TREE_STABLE_RC_NAME
+ string
+ default "linux-stable-rc" if BOOTLINUX_TREE_STABLE_RC
+
+config BOOTLINUX_TREE_STABLE_RC_URL
+ string
+ default DEFAULT_STABLE_RC_HTTPS_URL if !USE_LOCAL_LINUX_MIRROR
+ default $(shell, scripts/append-makefile-vars.sh git:// $(KDEVOPS_DEFAULT_BRIDGE_IP_GUESTFS) /mirror/linux-stable-rc.git) if USE_LIBVIRT_MIRROR && !BOOTLINUX_9P && GUESTFS
+ default "/mirror/linux-stable-rc.git" if USE_LIBVIRT_MIRROR && BOOTLINUX_9P
+
+endif # BOOTLINUX_STABLE_RC
diff --git a/workflows/linux/refs/default/Kconfig.stable_rc b/workflows/linux/refs/default/Kconfig.stable_rc
new file mode 100644
index 000000000000..84495567d280
--- /dev/null
+++ b/workflows/linux/refs/default/Kconfig.stable_rc
@@ -0,0 +1,56 @@
+# SPDX-License-Identifier: copyleft-next-0.3.1
+# Automatically generated file
+
+if !HAVE_BOOTLINUX_TREE_STABLE_RC_USER_REFS
+
+choice
+ prompt "Tag or branch to use"
+
+config BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_54
+ bool "queue/5.4"
+ help
+ Pull the queue/5.4 branch.
+
+config BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_510
+ bool "queue/5.10"
+ help
+ Pull the queue/5.10 branch.
+
+config BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_515
+ bool "queue/5.15"
+ help
+ Pull the queue/5.15 branch.
+
+config BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_61
+ bool "queue/6.1"
+ help
+ Pull the queue/6.1 branch.
+
+config BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_66
+ bool "queue/6.6"
+ help
+ Pull the queue/6.6 branch.
+
+config BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_612
+ bool "queue/6.12"
+ help
+ Pull the queue/6.12 branch.
+
+config BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_613
+ bool "queue/6.13"
+ help
+ Pull the queue/6.13 branch.
+
+endchoice
+
+config BOOTLINUX_TREE_STABLE_RC_REF
+ string
+ default "queue/5.4" if BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_54
+ default "queue/5.10" if BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_510
+ default "queue/5.15" if BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_515
+ default "queue/6.1" if BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_61
+ default "queue/6.6" if BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_66
+ default "queue/6.12" if BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_612
+ default "queue/6.13" if BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_613
+
+endif # !HAVE_BOOTLINUX_TREE_STABLE_RC_USER_REFS
diff --git a/workflows/linux/refs/static/stable_rc.yaml b/workflows/linux/refs/static/stable_rc.yaml
new file mode 100644
index 000000000000..a7d82977a04a
--- /dev/null
+++ b/workflows/linux/refs/static/stable_rc.yaml
@@ -0,0 +1,30 @@
+---
+configs:
+ - queue-5.4:
+ config: BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_54
+ ref: "queue/5.4"
+ help: "Pull the queue/5.4 branch."
+ - queue-5.10:
+ config: BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_510
+ ref: "queue/5.10"
+ help: "Pull the queue/5.10 branch."
+ - queue-5.15:
+ config: BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_515
+ ref: "queue/5.15"
+ help: "Pull the queue/5.15 branch."
+ - queue-6.1:
+ config: BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_61
+ ref: "queue/6.1"
+ help: "Pull the queue/6.1 branch."
+ - queue-6.6:
+ config: BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_66
+ ref: "queue/6.6"
+ help: "Pull the queue/6.6 branch."
+ - queue-6.12:
+ config: BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_612
+ ref: "queue/6.12"
+ help: "Pull the queue/6.12 branch."
+ - queue-6.13:
+ config: BOOTLINUX_TREE_STABLE_RC_REF_QUEUE_613
+ ref: "queue/6.13"
+ help: "Pull the queue/6.13 branch."
--
2.48.1
next prev parent reply other threads:[~2025-03-13 21:00 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-13 21:00 [PATCH v2 0/2] Add defaults refs for linux-stable-rc cel
2025-03-13 21:00 ` [PATCH v2 1/2] linux-mirror: Enable choice of clone protocol for stable-rc tree cel
2025-03-13 21:00 ` cel [this message]
2025-03-14 8:49 ` [PATCH v2 2/2] Add the stable release candidate repo to the Linux git repos menu Daniel Gomez
2025-03-13 23:00 ` [PATCH v2 0/2] Add defaults refs for linux-stable-rc Luis Chamberlain
2025-03-14 8:51 ` Daniel Gomez
2025-03-14 12:42 ` Chuck Lever
2025-03-14 14:02 ` 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=20250313210010.1633624-3-cel@kernel.org \
--to=cel@kernel.org \
--cc=chuck.lever@oracle.com \
--cc=da.gomez@kernel.org \
--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