Skip to content

Commit

Permalink
netbsd: implement create_group
Browse files Browse the repository at this point in the history
  • Loading branch information
goneri committed Dec 24, 2019
1 parent 3cf75bd commit 8069556
Showing 1 changed file with 19 additions and 18 deletions.
37 changes: 19 additions & 18 deletions cloudinit/distros/netbsd.py
Expand Up @@ -42,30 +42,31 @@ def _write_hostname(self, hostname, filename):
bsd_util.set_rc_config_value('hostname', hostname,
fn='/etc/rc.conf')

def create_group(self, name, members):
group_add_cmd = ['pw', '-n', name]
if util.is_group(name):
LOG.warning("Skipping creation of existing group '%s'", name)
def create_group(self, group, members):
group_add_cmd = ['groupadd', group]
if util.is_group(group):
LOG.warning("Skipping creation of existing group '%s'", group)
else:
try:
util.subp(group_add_cmd)
LOG.info("Created new group %s", name)
LOG.info("Created new group %s", group)
except Exception as e:
util.logexc(LOG, "Failed to create group %s", name)
util.logexc(LOG, "Failed to create group %s", group)
raise e

if len(members) > 0:
for member in members:
if not util.is_user(member):
LOG.warning("Unable to add group member '%s' to group '%s'"
"; user does not exist.", member, name)
continue
try:
util.subp(['pw', 'usermod', '-n', name, '-G', member])
LOG.info("Added user '%s' to group '%s'", member, name)
except Exception:
util.logexc(LOG, "Failed to add user '%s' to group '%s'",
member, name)
if not members:
members = []
for member in members:
if not util.is_user(member):
LOG.warning("Unable to add group member '%s' to group '%s'"
"; user does not exist.", member, group)
continue
try:
util.subp(['usermod', '-G', group, member])
LOG.info("Added user '%s' to group '%s'", member, group)
except Exception:
util.logexc(LOG, "Failed to add user '%s' to group '%s'",
member, group)

def add_user(self, name, **kwargs):
if util.is_user(name):
Expand Down

0 comments on commit 8069556

Please sign in to comment.