theforeman/foreman · error

Unable to create anonymous API user: #{SeedHelper.format_err

Error message

Unable to create anonymous API user: #{SeedHelper.format_errors user}

What it means

Error "Unable to create anonymous API user: #{SeedHelper.format_errors user}" thrown in theforeman/foreman.

Source

Thrown at db/seeds.d/035-admin.rb:39

  User.without_auditing do
    user = User.new(:login => User::ANONYMOUS_CONSOLE_ADMIN, :firstname => "Console", :lastname => "Admin")
    user.admin = true
    user.auth_source = src_hidden
    original_user, User.current = User.current, user
    raise "Unable to create anonymous console admin user: #{SeedHelper.format_errors user}" unless user.save
    User.current = original_user
  end
end

# Anonymous API user is used for API access when oauth_map_users is disabled
# It should be removed and replaced by per-user OAuth tokens (#1301)
unless User.unscoped.find_by_login(User::ANONYMOUS_API_ADMIN).present?
  User.without_auditing do
    user = User.new(:login => User::ANONYMOUS_API_ADMIN, :firstname => "API", :lastname => "Admin")
    user.admin = true
    user.auth_source = src_hidden
    original_user, User.current = User.current, user
    raise "Unable to create anonymous API user: #{SeedHelper.format_errors user}" unless user.save
    User.current = original_user
  end
end

# First real admin user account
admin_login = ENV['SEED_ADMIN_USER'].presence || 'admin'
if User.unscoped.find_by_login(admin_login).present?
  puts "User with login #{admin_login} already exists, not seeding as admin."
elsif User.unscoped.only_admin.except_hidden.none?
  User.without_auditing do
    User.as_anonymous_admin do
      user = User.new(:login => admin_login,
        :firstname => ENV['SEED_ADMIN_FIRST_NAME'] || "Admin",
        :lastname  => ENV['SEED_ADMIN_LAST_NAME'] || "User",
        :mail      => (ENV['SEED_ADMIN_EMAIL'] || Setting[:administrator]).try(:dup))
      user.admin = true
      user.auth_source = src_internal
      user.locale = ENV['SEED_ADMIN_LOCALE'] if ENV['SEED_ADMIN_LOCALE'].present?

View on GitHub (pinned to 6b05625475)

When it happens

Trigger: Thrown at db/seeds.d/035-admin.rb:39 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of theforeman/foreman@6b05625475 (2026-08-23). Data as JSON: /api/errors/fa0e26914182e188. Report an issue: GitHub.