DatabaseCleaner/database_cleaner · error · DatabaseCleaner::Safeguard::Error::ProductionEnv
ENV['#{env}'] is set to production. Please refer to https://
Error message
ENV['#{env}'] is set to production. Please refer to https://github.com/DatabaseCleaner/database_cleaner#safeguards What it means
Error "ENV['#{env}'] is set to production. Please refer to https://github.com/DatabaseCleaner/database_cleaner#safeguards" thrown in DatabaseCleaner/database_cleaner.
Source
Thrown at lib/database_cleaner/safeguard.rb:76
host = parsed.host
return false if host.nil? || host.empty?
return false if LOCAL.include?(host)
return false if host.end_with? '.local'
true
end
def skip?
ENV['DATABASE_CLEANER_ALLOW_REMOTE_DATABASE_URL'] ||
DatabaseCleaner.allow_remote_database_url ||
DatabaseCleaner.url_allowlist
end
end
class Production
KEYS = %w(ENV APP_ENV RACK_ENV RAILS_ENV)
def run
raise Error::ProductionEnv.new(key) if !skip? && given?
end
private
def given?
!!key
end
def key
@key ||= KEYS.detect { |key| ENV[key] == 'production' }
end
def skip?
ENV['DATABASE_CLEANER_ALLOW_PRODUCTION'] ||
DatabaseCleaner.allow_production
end
end
View on GitHub (pinned to 09b47d03cc)
When it happens
Trigger: Thrown at lib/database_cleaner/safeguard.rb:76 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of DatabaseCleaner/database_cleaner@09b47d03cc (2026-08-23).
Data as JSON: /api/errors/7d7b76e119709d48.
Report an issue: GitHub.