From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6617812835611181056 X-Received: by 2002:a1c:8f94:: with SMTP id r142-v6mr34038wmd.5.1541596812497; Wed, 07 Nov 2018 05:20:12 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a5d:5651:: with SMTP id j17-v6ls3218362wrw.28.gmail; Wed, 07 Nov 2018 05:20:12 -0800 (PST) X-Google-Smtp-Source: AJdET5f3QN9WiqJPceCuGHsc6NpKg6jZ6I4YRmRqc/+beodDHmW2l5dJF/OdmP1OyVugtFXPCz72 X-Received: by 2002:a5d:4a89:: with SMTP id o9-v6mr42465wrq.32.1541596811990; Wed, 07 Nov 2018 05:20:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541596811; cv=none; d=google.com; s=arc-20160816; b=RLlFLcuOS9PP0ZtH2CfG4kyCRWaosaz35gt5B82evWWEqlqScg/1V8BLj9qWkQFHvJ 1jElM8MzZRIDmCEAUlbFBVPZc+GqdQmu2Z8MkB1IcAzsRzdvv9DtETYJnb5gdwp3ZYDT uP/WE8gFW/Md+1cBlBXvHMe01tf2577q6QIWR7dIyJIc99XrAw9QnS7YfuIy4QqExEZL 3VvB2OkOOWFrmJIJQNNa2BsnEDS3AJ6OpOWoFkI2RvO5PHBzjE948/nF2XRRVgcXfBv3 U9nEjJQ48ybXoCfU4OObU5SAC8MB6EicgHw3bf3HzgKG8AbPwUWlqyGtoFHaPU8EKftN Be+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:content-language:in-reply-to:mime-version :user-agent:date:message-id:from:cc:references:to:subject; bh=7CzCKhBoqaAECvjPoz4d8cRyrqPAnqo5FwqaJaPhpSs=; b=NBgSEk9KwWrQFsLffPMeHUbMzkO+rxS0aMeiYS6MCUjp5QpHASQ9qX/3BiWM9FjpYB 0b2XF0Xi6/Km9HPOraYQQz/76i+LCvU4GupwCHD+7zQ+iB166wTNAxe0Shv6qWu+ba24 0cc/8330GCmdyPx5j8WzvvnaHDFAKD6uljijuDqsyryd8/JzK2BdFhEC5QeQYGFWpq0j ocayILtNE1NqcTFr9YUfD2r59vNjnVgp11+eFaspS8YHHEH0DAnP2xCrNTqS95fHgyLg 1/vua+FYiB7wmLBRfXNhqUbGPqJYBhdQmxCw7+0PpcQuhw/3zlrCAjtHkGeQ9K8EfQSC BAkw== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 192.35.17.2 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com Return-Path: Received: from thoth.sbs.de (thoth.sbs.de. [192.35.17.2]) by gmr-mx.google.com with ESMTPS id z139-v6si24728wmc.0.2018.11.07.05.20.11 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 05:20:11 -0800 (PST) Received-SPF: pass (google.com: domain of jan.kiszka@siemens.com designates 192.35.17.2 as permitted sender) client-ip=192.35.17.2; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 192.35.17.2 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com Received: from mail1.sbs.de (mail1.sbs.de [192.129.41.35]) by thoth.sbs.de (8.15.2/8.15.2) with ESMTPS id wA7DKBOe011944 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 7 Nov 2018 14:20:11 +0100 Received: from [139.25.68.37] (md1q0hnc.ad001.siemens.net [139.25.68.37] (may be forged)) by mail1.sbs.de (8.15.2/8.15.2) with ESMTP id wA7DKBHs024832; Wed, 7 Nov 2018 14:20:11 +0100 Subject: Re: [PATCH v3 2/2] isar-image: refactor do_rootfs() To: Cedric Hombourger , isar-users@googlegroups.com References: <57847f7a-9b85-65ef-b11e-8952bf532e0f@siemens.com> <20181101101302.8674-1-Cedric_Hombourger@mentor.com> <20181101101302.8674-2-Cedric_Hombourger@mentor.com> Cc: Maksim Osipov From: Jan Kiszka Message-ID: Date: Wed, 7 Nov 2018 14:20:10 +0100 User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 MIME-Version: 1.0 In-Reply-To: <20181101101302.8674-2-Cedric_Hombourger@mentor.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-TUID: EhCKvceYsJ+X On 01.11.18 11:13, Cedric Hombourger wrote: > Split the do_rootfs() shell function into four (smaller) shell functions to > generate the fstab file (isar_image_gen_fstab), populate the root file-system > (isar_image_gen_rootfs), configure it (isar_image_conf_rootfs) and perform > some house-keeping (isar_image_cleanup). do_rootfs is now a python function > and sequentially calls the helper functions listed above. > > Signed-off-by: Cedric Hombourger > --- > meta/classes/isar-image.bbclass | 15 ++++++++++++++- > 1 file changed, 14 insertions(+), 1 deletion(-) > > diff --git a/meta/classes/isar-image.bbclass b/meta/classes/isar-image.bbclass > index ec2b9e3..e0508be 100644 > --- a/meta/classes/isar-image.bbclass > +++ b/meta/classes/isar-image.bbclass > @@ -21,7 +21,7 @@ ISAR_RELEASE_CMD ?= "${ISAR_RELEASE_CMD_DEFAULT}" > do_rootfs[root_cleandirs] = "${IMAGE_ROOTFS} \ > ${IMAGE_ROOTFS}/isar-apt" > > -do_rootfs() { > +isar_image_gen_fstab() { > cat > ${WORKDIR}/fstab << EOF > # Begin /etc/fstab > /dev/root / auto defaults 0 0 > @@ -33,11 +33,15 @@ devtmpfs /dev devtmpfs mode=0755,nosuid 0 0 > > # End /etc/fstab > EOF > +} > > +isar_image_gen_rootfs() { > setup_root_file_system --clean --keep-apt-cache \ > --fstab "${WORKDIR}/fstab" \ > "${IMAGE_ROOTFS}" ${IMAGE_PREINSTALL} ${IMAGE_INSTALL} > +} > > +isar_image_conf_rootfs() { > # Configure root filesystem > if [ -n "${DISTRO_CONFIG_SCRIPT}" ]; then > sudo install -m 755 "${WORKDIR}/${DISTRO_CONFIG_SCRIPT}" "${IMAGE_ROOTFS}" > @@ -45,7 +49,9 @@ EOF > "${BAUDRATE_TTY}" > sudo rm "${IMAGE_ROOTFS}/${DISTRO_CONFIG_SCRIPT}" > fi > +} > > +isar_image_cleanup() { > # Cleanup > sudo rm "${IMAGE_ROOTFS}/etc/apt/sources.list.d/isar-apt.list" > test ! -e "${IMAGE_ROOTFS}/usr/share/doc/qemu-user-static" && \ > @@ -57,3 +63,10 @@ EOF > sudo umount -l ${IMAGE_ROOTFS}/proc > sudo rm -f "${IMAGE_ROOTFS}/etc/apt/apt.conf.d/55isar-fallback.conf" > } > + > +python do_rootfs() { > + bb.build.exec_func("isar_image_gen_fstab", d) > + bb.build.exec_func("isar_image_gen_rootfs", d) > + bb.build.exec_func("isar_image_conf_rootfs", d) > + bb.build.exec_func("isar_image_cleanup", d) > +} > Why making this a python function? What is the reasoning for the chosen split-up? These are all recipe APIs, so we must be more careful with such declarations. Jan -- Siemens AG, Corporate Technology, CT RDA IOT SES-DE Corporate Competence Center Embedded Linux