puppetlabs/puppet · error · Puppet::Error

Forcelocal set for user resource '#{user}', but #{group_file

Error message

Forcelocal set for user resource '#{user}', but #{group_file} does not exist

What it means

Error "Forcelocal set for user resource '#{user}', but #{group_file} does not exist" thrown in puppetlabs/puppet.

Source

Thrown at lib/puppet/provider/user/useradd.rb:166

    user[:shell]
  end

  def localhome
    user = finduser(:account, resource[:name])
    user[:directory]
  end

  def localgroups
    @groups_of ||= {}
    group_file = '/etc/group'
    user = resource[:name]

    return @groups_of[user] if @groups_of[user]

    @groups_of[user] = []

    unless Puppet::FileSystem.exist?(group_file)
      raise Puppet::Error, "Forcelocal set for user resource '#{user}', but #{group_file} does not exist"
    end

    Puppet::FileSystem.each_line(group_file) do |line|
      data = line.chomp.split(':')
      if !data.empty? && data.last.split(',').include?(user)
        @groups_of[user] << data.first
      end
    end

    @groups_of[user]
  end

  def shell=(value)
    check_valid_shell
    set(:shell, value)
  end

  def groups=(value)

View on GitHub (pinned to e227c27540)

When it happens

Trigger: Thrown at lib/puppet/provider/user/useradd.rb:166 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of puppetlabs/puppet@e227c27540 (2026-08-21). Data as JSON: /api/errors/642ccdb018b25f49. Report an issue: GitHub.