module Roda::RodaPlugins::Environments

The environments plugin adds a environment class accessor to get the environment for the application, 3 predicate class methods to check for the current environment (development?, test? and production?), and a class configure method that takes environment(s) and yields to the block if the given environment(s) match the current environment.

The default environment for the application is based on ENV['RACK_ENV'].

Example:

class Roda
  plugin :environments

  environment  # => :development
  development? # => true
  test?        # => false
  production?  # => false

  # Set the environment for the application
  self.environment = :test 
  test?        # => true

  configure do
    # called, as no environments given
  end

  configure :development, :production do
    # not called, as no environments match
  end

  configure :test do
    # called, as environment given matches current environment
  end
end