From patchwork Mon Feb 24 19:12:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chuck Lever X-Patchwork-Id: 13988832 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9FA1D1F03C1 for ; Mon, 24 Feb 2025 19:12:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740424340; cv=none; b=gQ2RZhj67+xjatX0JSzUAHE2tXELlOexGoHg9FuyWrbSYqD41E1hwZ9coxrQhYTaaLEAKAR4R0zAMS3pgq1LyF2fSP/wbsqipN54HaygnJHA+bBjxfJ0k1ONo4yTfl7dVf72+UW1RLPj8KnrRBK1ADrdyt3taxJrLyNlyVW2LL4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740424340; c=relaxed/simple; bh=9sGhrVtCNx7LNtTKhgTggdmolpVi8w80/tkuopl7sHU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rBBr+/A5YqVbTeF8qRjRTKxncIHWIRFB2ucQuYyz7IIjWyHv6xz7eQPBB80lUSZ0j9ZFnyL8EOlttzwirFbWqCWXrlBLohsChsXl45rD/djwgXRHD7TQ0xuxR5Ebm5sypu7QqLVnC1rAuZYpCKzJg9TOkqjtZzaEInxclcOstIo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Df76Hbls; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Df76Hbls" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5E3A3C4CEEC; Mon, 24 Feb 2025 19:12:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1740424339; bh=9sGhrVtCNx7LNtTKhgTggdmolpVi8w80/tkuopl7sHU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Df76HblstnCsR1TXcMTm6z2y3DejavAqwUc0d0b+yvh4cWeQqPje0usCkjt3YyKGY T8DtaxhWcAiiOz7yx+sGJwP0KglRd3qt4gMvNSAU0KCVLnxV75oSY7SM88gN0nd579 FMIIGqKl1PAldbgij61NN2pQ4WnmfMgnNWxoEg4fvKra4ghKiR5GqmY0kchdDn8CYh j75DGisnaolYmvyx1sJV092vnCSMz7/GzxSKc12gASb4Rog7711+HfFNcGMFq6lKxK O/faxKbt3uzHKIIn14D26Ls3cT/s8+z8LZ/rYeXMSqbYNS+t7AK0jOO6oEp63ZOcPK qZDkAi6hAwJ6w== From: cel@kernel.org To: Cc: Chuck Lever Subject: [PATCH v3 2/6] ssh.Makefile: Define a kdevops_ssh_config variable Date: Mon, 24 Feb 2025 14:12:11 -0500 Message-ID: <20250224191215.637818-3-cel@kernel.org> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250224191215.637818-1-cel@kernel.org> References: <20250224191215.637818-1-cel@kernel.org> Precedence: bulk X-Mailing-List: kdevops@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 From: Chuck Lever Ensure that all provisioning scripts use the same pathname for the ssh config file that stores ssh entries for kdevops target nodes (which I'm referring to as the "ephemeral ssh config file"). Signed-off-by: Chuck Lever --- kconfigs/Kconfig.ssh | 19 ++++++++++++++++--- scripts/ssh.Makefile | 10 +++++++++- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/kconfigs/Kconfig.ssh b/kconfigs/Kconfig.ssh index 66ab3ce6f6ea..3b85568e19b4 100644 --- a/kconfigs/Kconfig.ssh +++ b/kconfigs/Kconfig.ssh @@ -18,11 +18,24 @@ config KDEVOPS_SSH_CONFIG_UPDATE if KDEVOPS_SSH_CONFIG_UPDATE config KDEVOPS_SSH_CONFIG - string "The ssh configuration file to update for systems created" + string "The controller's ssh configuration file" default "~/.ssh/config" help - The ssh configuration file we should update, for each of the systems - created. + The pathname of the Ansible controller's ssh configuration file. + kdevops may add an Include directive to this file that refers to a + separate file where target node ssh configuration is managed. + +config KDEVOPS_SSH_CONFIG_PREFIX + string "Pathname prefix to an Ansible-managed ssh config file" + output yaml + default "~/.ssh/config_kdevops_" + help + The pathname of a file into which Ansible inserts ssh configuration + information for the target nodes during the "make bringup" step. On + "make destroy" this file is destroyed. + + This file is kept in the controller's .ssh directory by default, + but can be moved to other locations if desired. config KDEVOPS_SSH_CONFIG_UPDATE_STRICT bool "Use strict configuration settings when adding each host" diff --git a/scripts/ssh.Makefile b/scripts/ssh.Makefile index 3ee9437b1b4c..d18a03e094ee 100644 --- a/scripts/ssh.Makefile +++ b/scripts/ssh.Makefile @@ -8,8 +8,16 @@ endif ifeq (y,$(CONFIG_KDEVOPS_SSH_CONFIG_UPDATE)) SSH_CONFIG_FILE:=$(subst ",,$(CONFIG_KDEVOPS_SSH_CONFIG)) -ANSIBLE_EXTRA_ARGS += sshconfig=$(CONFIG_KDEVOPS_SSH_CONFIG) +ANSIBLE_EXTRA_ARGS += sshconfig=$(shell realpath $(SSH_CONFIG_FILE)) + +ifeq (y,$(CONFIG_TOPDIR_PATH_HAS_SHA256SUM)) +SSH_CONFIG_SUFFIX:=$(CONFIG_TOPDIR_PATH_SHA256SUM) +else +SSH_CONFIG_SUFFIX:=$(CONFIG_KDEVOPS_HOST_PREFIX) endif +ANSIBLE_EXTRA_ARGS += kdevops_ssh_config=$(shell scripts/append-makefile-vars.sh $(CONFIG_KDEVOPS_SSH_CONFIG_PREFIX) $(SSH_CONFIG_SUFFIX)) + +endif # CONFIG_KDEVOPS_SSH_CONFIG_UPDATE PHONY += remove-ssh-key remove-ssh-key: