class Chef::Provider::Group::Aix

Public Instance Methods

add_member(member) click to toggle source
# File lib/chef/provider/group/aix.rb, line 51
def add_member(member)
  shell_out!("chgrpmem", "-m", "+", member, new_resource.group_name)
end
create_group() click to toggle source
# File lib/chef/provider/group/aix.rb, line 34
def create_group
  shell_out!("mkgroup", set_options, new_resource.group_name)
  modify_group_members
end
manage_group() click to toggle source
# File lib/chef/provider/group/aix.rb, line 39
def manage_group
  options = set_options
  if options.size > 0
    shell_out!("chgroup", options, new_resource.group_name)
  end
  modify_group_members
end
remove_group() click to toggle source
# File lib/chef/provider/group/aix.rb, line 47
def remove_group
  shell_out!("rmgroup", new_resource.group_name)
end
remove_member(member) click to toggle source
# File lib/chef/provider/group/aix.rb, line 60
def remove_member(member)
  shell_out!("chgrpmem", "-m", "-", member, new_resource.group_name)
end
required_binaries() click to toggle source
# File lib/chef/provider/group/aix.rb, line 27
def required_binaries
  [ "/usr/bin/mkgroup",
    "/usr/bin/chgroup",
    "/usr/bin/chgrpmem",
    "/usr/sbin/rmgroup" ]
end
set_members(members) click to toggle source
# File lib/chef/provider/group/aix.rb, line 55
def set_members(members)
  return if members.empty?
  shell_out!("chgrpmem", "-m", "=", members.join(","), new_resource.group_name)
end
set_options() click to toggle source
# File lib/chef/provider/group/aix.rb, line 64
def set_options
  opts = []
  { gid: "id" }.sort_by { |a| a[0] }.each do |field, option|
    next unless current_resource.send(field) != new_resource.send(field)
    if new_resource.send(field)
      logger.trace("#{new_resource} setting #{field} to #{new_resource.send(field)}")
      opts << "#{option}=#{new_resource.send(field)}"
    end
  end
  opts
end