From patchwork Mon Feb 3 12:35:59 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Gomez X-Patchwork-Id: 13957385 Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) (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 D2DE41FFC69 for ; Mon, 3 Feb 2025 12:36:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=210.118.77.12 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738586179; cv=none; b=ChtkR46sbaQQQ0QzWxg6d9lBXGwI2MlNLDNYseuYpfyNDqRIXQojUzUGHmUT/7d0jFbBoRTP4HaZQ3UIFL9CmaFn9DX0F26lUp5XqcxXjKPgKRG4V3VT2ycZ6ukYiBQrXkJm5AcIZ9gB+t5A7p4mDscOcyrt8DqE0PwP5Np+7UY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738586179; c=relaxed/simple; bh=HklsnwgXxDk7YS9GswaB972iR9KYH2sj6bYlGy3S1KE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID: In-Reply-To:To:CC:References; b=W+DBKCVL2EYxf687UTlxTFTp7RjAjc7qk/KEQyMgLWJECkavUs9q4MFDUealHO0yM09zfvEz4LaeyD4lAdQmZ0NTBS+X7IZGytZpEHpxjhHZXnvi57lgOVr769YFG8ZrIyus4VKapkauwd5/lRM1BLSIuYWDcID7oUZIXCmOGls= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com; spf=pass smtp.mailfrom=samsung.com; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b=PonnI4Ij; arc=none smtp.client-ip=210.118.77.12 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=samsung.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b="PonnI4Ij" Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id 20250203123615euoutp0223e6bd36cb78961b7d4d9ad2febf596c~gsuovXnYz3057130571euoutp02R for ; Mon, 3 Feb 2025 12:36:15 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20250203123615euoutp0223e6bd36cb78961b7d4d9ad2febf596c~gsuovXnYz3057130571euoutp02R DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1738586175; bh=qTqRPnnB+mwTx7mO55LZfG/5YYB0oHkJqk7iUw0BrSA=; h=From:Date:Subject:In-Reply-To:To:CC:References:From; b=PonnI4IjbifiHmH3kSYYQg3Ewg/yWWEgcwL5oAY6GqRha/NOUegasYRS7+tkkMn7Z t+pu+6rX0+Dk2f4Cg5ohAMl5xwIlgozlDgliGlArMMAaVcnPlQDp/QbRsxX72C2ALX bT2zg7dM6ARGchFbM4S7KO58TJQb1HfnZHRA+z0g= Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20250203123614eucas1p2a0e4d436b8ea122471f1f075f0eefb28~gsuolcEi61307213072eucas1p2C; Mon, 3 Feb 2025 12:36:14 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges1new.samsung.com (EUCPMTA) with SMTP id E9.B6.20821.E38B0A76; Mon, 3 Feb 2025 12:36:14 +0000 (GMT) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p2.samsung.com (KnoxPortal) with ESMTPA id 20250203123614eucas1p26112e69a26aaecf2ea5b425b13c8379b~gsuoQMjRb2202922029eucas1p2K; Mon, 3 Feb 2025 12:36:14 +0000 (GMT) Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20250203123614eusmtrp289775cc11cc2751340db81d18465ce5a~gsuoPxBXI2301223012eusmtrp2D; Mon, 3 Feb 2025 12:36:14 +0000 (GMT) X-AuditID: cbfec7f2-b11c470000005155-3a-67a0b83e3f6a Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms2.samsung.com (EUCPMTA) with SMTP id 8E.7B.19654.E38B0A76; Mon, 3 Feb 2025 12:36:14 +0000 (GMT) Received: from CAMSPWEXC02.scsc.local (unknown [106.1.227.4]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20250203123614eusmtip2faa21303cc1517092045457c5daec0b0~gsuoE41u91439214392eusmtip2y; Mon, 3 Feb 2025 12:36:14 +0000 (GMT) Received: from localhost (106.110.32.87) by CAMSPWEXC02.scsc.local (106.1.227.4) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.2.1118.40; Mon, 3 Feb 2025 12:36:13 +0000 From: Daniel Gomez Date: Mon, 3 Feb 2025 13:35:59 +0100 Subject: [PATCH 3/3] ansible.Makefile: enhance ansible verbosity Precedence: bulk X-Mailing-List: kdevops@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-ID: <20250203-fix-dbg-v1-3-3575fb40f2bc@samsung.com> In-Reply-To: <20250203-fix-dbg-v1-0-3575fb40f2bc@samsung.com> To: Luis Chamberlain CC: , Daniel Gomez X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1738586171; l=4433; i=da.gomez@samsung.com; s=20240621; h=from:subject:message-id; bh=HklsnwgXxDk7YS9GswaB972iR9KYH2sj6bYlGy3S1KE=; b=/LF96WW9Bcq/vUepBljq4ZiLQSHZjhvmaaql/rsx07K0Hb9Ocxud+r81bbsl9vnYaBP9ATzW2 fxBwp/PO9fvBiXltULKcR7MntaJ+pqMsyCMjwku3iW2vynwjfxfBLgc X-Developer-Key: i=da.gomez@samsung.com; a=ed25519; pk=BqYk31UHkmv0WZShES6pIZcdmPPGay5LbzifAdZ2Ia4= X-ClientProxiedBy: CAMSVWEXC01.scsc.local (106.1.227.71) To CAMSPWEXC02.scsc.local (106.1.227.4) X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrJIsWRmVeSWpSXmKPExsWy7djPc7p2OxakG6z8om/xc81LZosbE54y OjB5bFrVyebxYvNMxgCmKC6blNSczLLUIn27BK6MK/+XMxdcVqrYdeE3WwPjYpkuRk4OCQET ibfLjzB2MXJxCAmsYJS41neaBcL5wiixuHUeG4TzmVFix4qPjDAt7zYfhapaziixv/kYVNUn Ron+p4uZIJwHjBJHOk8xg7SwCWhK7Du5iR3EZhFQkfjQuRGonYNDWMBB4tQCWZAwr4CgxMmZ T8DCzEDl63fpg4SZBeQltr+dwwwS5hWwkfj2shYkzClgK7G84ykbiC0ioCGxb0IvE0S5k8TJ SVfZIO4Ulfg9eRfYnRIC+5kkJjZfYYVIpEqseHSHGcJWlJgxcSXYWgmBJInGF6kQ4TMcEm9f x0HYLhJzfx6C+l1Y4tXxLewQtozE/53zmSDsbImz3/dA1ZRI/PvwiwXCtpb4v/YuVNxR4uSM HYwQq/gkbrwVnMCoNgvJ77MQfp+F5PcFjMyrGMVTS4tz01OLDfNSy/WKE3OLS/PS9ZLzczcx AlPD6X/HP+1gnPvqo94hRiYOxkOMEhzMSiK8HIfnpAvxpiRWVqUW5ccXleakFh9ilOZgURLn XbS/NV1IID2xJDU7NbUgtQgmy8TBKdXAxHTs3k3+vcpfJm85lPl+kdRrqzsiv/kPb0vpY/6x +ZbGofJ/rN8r7XoLKu/tSj/eVKvxia/l+ZHkRy/VeG5e/sz7Q8fL7eRZD3flW/w8Sg4FSlM0 zOPZ33V3iApcYtYwfiSi9Kvs+OdnWhHJDz6VXb/GvHeLcs7caMdtv3tjnj7WX/J5OWevYMup qRxnNaJdLM9Oigi88ohh9nOrH6HdqhUT4jt+X2T5uv9E7JLs75Hrqur2X3x241fM9odp8Q+b psX81Xum0K2xZ+3R1q/mylbCm8QZbcqv/5gsvtOL3ejMiSyZKWVNX9pPbffrLu34uDov4vid a37+ou8KEvxnneaev9QtKeOx/kl105yEd0osxRmJhlrMRcWJAEyO/MB8AwAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrNIsWRmVeSWpSXmKPExsVy+t/xe7p2OxakG2yfI2Pxc81LZosbE54y OjB5bFrVyebxYvNMxgCmKD2bovzSklSFjPziElulaEMLIz1DSws9IxNLPUNj81grI1MlfTub lNSczLLUIn27BL2MK/+XMxdcVqrYdeE3WwPjYpkuRk4OCQETiXebj7J0MXJxCAksZZT42reP DSIhI7Hxy1VWCFtY4s+1LjaIog+MEg8uHGWHcB4wSnx+dZodpIpNQFNi38lNYDaLgIrEh86N QGM5OIQFHCROLZAFCfMKCEqcnPkELMwMVL5+lz5ImFlAXmL72znMIGFeARuJby9rQcJCQObU f91g53AK2Eos73gKZosIaEjsm9DLBNHqJHFy0lWok0Ulfk/eBfaLhMB+JontryayQyRSJbZf WQJVpCgxY+JKFgg7SeJo8zzWCYxis5BcNwvhullIrlvAyLyKUSS1tDg3PbfYSK84Mbe4NC9d Lzk/dxMjMNa2Hfu5ZQfjylcf9Q4xMnEwHmKU4GBWEuHlODwnXYg3JbGyKrUoP76oNCe1+BCj KTCAJjJLiSbnA6M9ryTe0MzA1NDEzNLA1NLMWEmcl+3K+TQhgfTEktTs1NSC1CKYPiYOTqkG pvLiHZF1zjmzj5Q/NlYtOVsmlVPX4dewUdC4Y5eWsYfxrjDeIxEN+Tfr3Ha9axKO+O/kNof9 7GaRA080Zl/cMO2/0znnaffqtd9cEBb223z7z65Z8884pX7uWTLdYuqL9A1hD5wSDuuufCLd tDQjxcH/rT+z8dbLa58cW/LrU6PJzjWMZboGDjNrp9iFr63MmDn7Eb/ZzOjy+J57cYqT/fpS yh0ONFXkzVwt4X6Bz+P+4hfBXqfyUt8a3jf67nZ4wg6Bn18zEr0jZHdNn6xe7/0hPn7B1Wlv D+17LqF6cqJD93b3xFvbit+XyYjf6je79kFjvl/ytew3k9cL9L0IFc4Jd7vRoSR/xGreCk7R f0osxRmJhlrMRcWJAG34nJM+AwAA X-CMS-MailID: 20250203123614eucas1p26112e69a26aaecf2ea5b425b13c8379b X-Msg-Generator: CA X-RootMTR: 20250203123614eucas1p26112e69a26aaecf2ea5b425b13c8379b X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20250203123614eucas1p26112e69a26aaecf2ea5b425b13c8379b References: <20250203-fix-dbg-v1-0-3575fb40f2bc@samsung.com> Ansible verbosity is controlled via V=2 parameter/value. This however has a limited configuration as it hardcodes the output of the -v, --verbose command of ansible-playbook to level 3 (-vvv). Drop support for V=2 mode in favor of AV= where indicates the level of verbosity from 0 (empty string) to max 6 (-vvvvvv). Add a helper script in python to handle the new AV parameter. This makes it easier to check for corner cases. Also, restore verbosity help from commit 6539f3f ("Merge commit '6539f3f6b5cf1393cb63f9ad9aac51877f088734'") and adapt V=2 to the new AV= parameter. Add a maintainer entry for this new Ansible wrapper. A reason to add a specific entry here is to extend the new ansible.Makefile with all Ansible calls across kdevops and make it easier to maintain in the long term. Signed-off-by: Daniel Gomez --- MAINTAINERS | 8 ++++++++ Makefile | 6 ++---- scripts/ansible.Makefile | 4 ++++ scripts/kconfig/Makefile | 4 ++++ scripts/validate_av.py | 28 ++++++++++++++++++++++++++++ 5 files changed, 46 insertions(+), 4 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index b2b81a9e5b18a46fe1b34d5137a817cce5526d34..045d8c96208ef8f3f1c5d74d023a5117529511cf 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -67,6 +67,14 @@ Maintainers List first. When adding to this list, please keep the entries in alphabetical order. +ANSIBLE WRAPPER +M: Daniel Gomez +L: kdevops@lists.linux.dev +S: Maintained +T: git https://github.com/linux-kdevops/kdevops.git +F: scripts/ansible_av.py +F: scripts/ansible.Makefile + GITREF M: Daniel Gomez L: kdevops@lists.linux.dev diff --git a/Makefile b/Makefile index 56a6905fa11795625ab1912ceb54a6847ecad656..14e647dcd45190ff51dd42627f58826998f07781 100644 --- a/Makefile +++ b/Makefile @@ -46,10 +46,6 @@ export Q=@ export NQ=echo endif -ifneq ($(findstring 2, $(V)),) - export ANSIBLE_VERBOSE := '-vvv' -endif - include Makefile.min_deps DEFAULT_DEPS += $(KDEVOPS_DEPCHECK) @@ -62,6 +58,8 @@ ANSIBLE_EXTRA_ARGS_SEPARATED := ANSIBLE_EXTRA_ARGS_DIRECT := include Makefile.extra_vars +include scripts/ansible.Makefile + LIMIT_HOSTS := ifneq (,$(HOSTS)) LIMIT_HOSTS := '-l $(subst ${space},$(comma),$(HOSTS))' diff --git a/scripts/ansible.Makefile b/scripts/ansible.Makefile new file mode 100644 index 0000000000000000000000000000000000000000..b0d2a8c12ee74a13e0b95e349565a8c55d538b79 --- /dev/null +++ b/scripts/ansible.Makefile @@ -0,0 +1,4 @@ +# SPDX-License-Identifier: copyleft-next-0.3.1 + +AV ?= 0 +export ANSIBLE_VERBOSE := $(shell scripts/validate_av.py --av "$(AV)") diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile index e3694365bf98281a00fb56d76d3400d236776476..76e4f5c36a4bb11653e93fdc874d4ba73db7a848 100644 --- a/scripts/kconfig/Makefile +++ b/scripts/kconfig/Makefile @@ -70,6 +70,10 @@ help: @echo "allnoconfig - disables all bells and whistles" @echo "randconfig - random configuration" @echo "defconfig-* - If you have files in the defconfig directory use default config from there" + @echo + @echo "Variable options:" + @echo "make V=n [targets] 1: verbose build (Makefile)" + @echo "make AV=n [targets] 0-6: verbose build (Ansible)" .PHONY: clean clean: diff --git a/scripts/validate_av.py b/scripts/validate_av.py new file mode 100755 index 0000000000000000000000000000000000000000..fffb836f593bc284adc3c9104deea0aea97814aa --- /dev/null +++ b/scripts/validate_av.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: copyleft-next-0.3.1 + +import argparse + + +def get_ansible_verbosity(av: str, max_level: int = 6) -> str: + """Return Ansible verbosity flag (e.g. -vv or emtpy).""" + try: + av = int(av) + except ValueError: + return "" + av = max(0, min(av, max_level)) + return "-" + "v" * av if av > 0 else "" + + +def main(): + parser = argparse.ArgumentParser( + description="Validate and return Ansible verbosity level." + ) + parser.add_argument("--av", type=str, default="0", help="Verbosity level (0-6)") + + args = parser.parse_args() + print(get_ansible_verbosity(args.av)) + + +if __name__ == "__main__": + main()