On Sun, Mar 27, 2022 at 04:37:10PM -0700, Matt Turner wrote:
> From: Patrice Clement
> 
> * stage4/groups: create a a list of groups.
> * stage4/users: create a list of users. users can also be added to
>   groups using the "foo.bar=wheel,audio,baz" format.
> * stage4/ssh_public_keys: copy an SSH public key into the stage4 user's home
>   (.ssh/authorized_keys) and set the file permission to 0644.
> 
> Bug: https://bugs.gentoo.org/236905
> ---
>  catalyst/base/stagebase.py | 70 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 70 insertions(+)
> 
> diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
> index de1e30ef..76feb5f0 100644
> --- a/catalyst/base/stagebase.py
> +++ b/catalyst/base/stagebase.py
> @@ -201,6 +201,9 @@ class StageBase(TargetBase, ClearBase, GenBase):
>          self.set_packages()
>          self.set_rm()
>          self.set_linuxrc()
> +        self.set_groups()
> +        self.set_users()
> +        self.set_ssh_public_keys()
>          self.set_busybox_config()
>          self.set_overlay()
>          self.set_repos()
> @@ -583,6 +586,39 @@ class StageBase(TargetBase, ClearBase, GenBase):
>                      self.settings[self.settings["spec_prefix"] + "/linuxrc"]
>                  del self.settings[self.settings["spec_prefix"] + "/linuxrc"]
>  
> +    def set_groups(self):
> +        groups = self.settings["spec_prefix"] + "/groups"
> +        if groups in self.settings:
> +            if isinstance(self.settings[groups], str):
> +                self.settings["groups"] = self.settings[groups].split(",")
> +            self.settings["groups"] = self.settings[groups]
> +            del self.settings[groups]
> +        else:
> +            self.settings["groups"] = []
> +        log.info('groups to create: %s' % self.settings["groups"])
> +
> +     def set_users(self):

Traceback (most recent call last):
...
  File "/catalyst/base/stagebase.py", line 600
    def set_users(self):
TabError: inconsistent use of tabs and spaces in indentation

> +        users = self.settings["spec_prefix"] + "/users"
> +        if users in self.settings:
> +            if isinstance(self.settings[users], str):
> +                self.settings["users"] = self.settings[users].split(",")
> +            self.settings["users"] = self.settings[users]
> +            del self.settings[users]
> +        else:
> +            self.settings["users"] = []
> +        log.info('users to create: %s' % self.settings["users"])
> +

Reply via email to