puppetlabs/puppet · error · Puppet::Error
Forcelocal set for user resource '#{resource[:name]}', but #
Error message
Forcelocal set for user resource '#{resource[:name]}', but #{passwd_file} does not exist What it means
Error "Forcelocal set for user resource '#{resource[:name]}', but #{passwd_file} does not exist" thrown in puppetlabs/puppet.
Source
Thrown at lib/puppet/provider/user/useradd.rb:105
def home
return localhome if @resource.forcelocal?
get(:home)
end
def groups
return localgroups if @resource.forcelocal?
super
end
def finduser(key, value)
passwd_file = '/etc/passwd'
passwd_keys = [:account, :password, :uid, :gid, :gecos, :directory, :shell]
unless @users
unless Puppet::FileSystem.exist?(passwd_file)
raise Puppet::Error, "Forcelocal set for user resource '#{resource[:name]}', but #{passwd_file} does not exist"
end
@users = []
Puppet::FileSystem.each_line(passwd_file) do |line|
user = line.chomp.split(':')
@users << passwd_keys.zip(user).to_h
end
end
@users.find { |param| param[key] == value } || false
end
def local_username
finduser(:uid, @resource.uid)
end
def localuid
user = finduser(:account, resource[:name])
return user[:uid] if userView on GitHub (pinned to e227c27540)
When it happens
Trigger: Thrown at lib/puppet/provider/user/useradd.rb:105 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/6833fe3c1c0d0e60.
Report an issue: GitHub.