public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: "'Clara Kowalsky' via isar-users" <isar-users@googlegroups.com>
To: isar-users@googlegroups.com
Cc: adriaan.schmidt@siemens.com, felix.moessbauer@siemens.com
Subject: Re: [RFC PATCH v2] fix: rebuild rootfs on change of USERS
Date: Fri, 11 Apr 2025 12:18:51 +0200	[thread overview]
Message-ID: <76c8caa7-57d1-44ef-ba89-1dd4b57e9b11@siemens.com> (raw)
In-Reply-To: <20250411101602.1656234-1-clara.kowalsky@siemens.com>



On 11.04.25 12:16, Clara Kowalsky wrote:
> In case a change to the Isar created users is done, this currently
> only re-triggers the do_rootfs_postprocess task. This task changes the
> rootfs (e.g. home dirs are moved) and by that needs to operate on a
> clean one. Otherwise old homedirs might still remain in the final rootfs
> or move operations are not possible.
> 
> We fix this by ensuring that the do_rootfs_install task is executed
> whenever a change to USERS is done. By that, we enter the
> do_rootfs_postinstall with a clean rootfs.
> 
> Signed-off-by: Clara Kowalsky <clara.kowalsky@siemens.com>
> ---
>   meta/classes/image-account-extension.bbclass | 14 +++++++++-----
>   1 file changed, 9 insertions(+), 5 deletions(-)
> 
> diff --git a/meta/classes/image-account-extension.bbclass b/meta/classes/image-account-extension.bbclass
> index ea956cd5..1c664be0 100644
> --- a/meta/classes/image-account-extension.bbclass
> +++ b/meta/classes/image-account-extension.bbclass
> @@ -11,11 +11,11 @@ GROUPS ??= ""
>   python() {
>       for entry in (d.getVar("GROUPS") or "").split():
>           group_entry = "GROUP_{}".format(entry)
> -        d.appendVarFlag("image_postprocess_accounts", "vardeps", " {}".format(group_entry))
> +        d.appendVarFlag("image_postprocess_groups", "vardeps", " {}".format(group_entry))
>   
>       for entry in (d.getVar("USERS") or "").split():
>           user_entry = "USER_{}".format(entry)
> -        d.appendVarFlag("image_postprocess_accounts", "vardeps", " {}".format(user_entry))
> +        d.appendVarFlag("image_postprocess_users", "vardeps", " {}".format(user_entry))
>   }
>   
>   def image_create_groups(d: "DataSmart") -> None:
> @@ -137,10 +137,14 @@ def image_create_users(d: "DataSmart") -> None:
>           if "force-passwd-change" in flags:
>               bb.process.run([*chroot, "/usr/bin/passwd", "--expire", entry])
>   
> +ROOTFS_POSTPROCESS_COMMAND += "image_postprocess_groups"
> +ROOTFS_INSTALL_COMMAND += "image_postprocess_users"
> +image_postprocess_groups[vardeps] += "GROUPS"
> +image_postprocess_users[vardeps] += "USERS"
>   
> -ROOTFS_POSTPROCESS_COMMAND += "image_postprocess_accounts"
> -image_postprocess_accounts[vardeps] += "USERS GROUPS"
> -python image_postprocess_accounts() {
> +python image_postprocess_groups() {
>       image_create_groups(d)
> +}
> +python image_postprocess_users() {
>       image_create_users(d)
>   }

This is still not ideal, as old home directories are not removed when 
removing the create-home flag or setting another directory via 
USER_foo[home] = <x>.
BR,
Clara

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/76c8caa7-57d1-44ef-ba89-1dd4b57e9b11%40siemens.com.

  reply	other threads:[~2025-04-11 10:19 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-11 10:16 'Clara Kowalsky' via isar-users
2025-04-11 10:18 ` 'Clara Kowalsky' via isar-users [this message]
2025-04-11 11:04   ` 'MOESSBAUER, Felix' via isar-users

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=76c8caa7-57d1-44ef-ba89-1dd4b57e9b11@siemens.com \
    --to=isar-users@googlegroups.com \
    --cc=adriaan.schmidt@siemens.com \
    --cc=clara.kowalsky@siemens.com \
    --cc=felix.moessbauer@siemens.com \
    /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