The Chicago Boss API is mostly stable, but still might change before 1.0.
All configuration takes place in boss.config in your project directory. Valid configuration options are:
assume_locale - The presumed locale of translatable strings. Defaults to "en".cache_adapter - The cache adapter to use. Currently the only valid value is memcached_bin.cache_servers - A list of cache servers ({Host, Port, PoolSize}). Defaults to [{"localhost", 11211, 1}].
cache_exp_time - The maximum time to keep a cache entry, in seconds. Defaults to 60.db_host - The hostname of the database. Defaults to "localhost".db_port - The port of the database. Defaults to 1978.db_username - The username used for connecting to the database (if needed).db_password - The password used for connecting to the database (if needed).db_database - The name of the database to connect to (if needed).db_adapter - The database adapter to use. Valid values are:
mock - In-memory (non-persistent) database, useful for testingmnesia - Mnesiamysql - MySQLpgsql - PostgreSQLtyrant - Tokyo Tyrantdb_shards - A list of proplists with per-shard database configuration. The proplists override the above options, and should contain an additional option:
db_shard_models - A list of models (atoms) which are stored on the shard.log_dir - Directory in which to keep log files. Location is relative to the project directory. Defaults to "log".mail_driver - The email delivery driver to use. Valid values are:
boss_mail_driver_smtp - SMTP delivery. If mail_relay is present, it is used as a relay, otherwise direct delivery is attempted.boss_mail_driver_mock - A black hole, useful for testing.mail_relay_host - The relay server for SMTP mail deliveries.mail_relay_username - The username used for connecting to the SMTP relay (if needed).mail_relay_password - The password used for connecting to the SMTP relay (if needed).master_node - For distributed configurations, the name of the master node. The master node runs global services (incoming mail, message queue, events, sessions). Should be an atom, e.g. somenode@somehost. The node name is specified in the -sname or -name argument in the startup script.port - The port to run the HTTP server on. Defaults to 8001.server - The HTTP server to use. Valid values are:
base_urlSets the base_url passed to the views (for deployments on suburl's)session_adapter Selects the session driver to use. Valid values:cache - Store sessions in the configured cache servers. Requires cache_enable to be set to true.mnesia - Mnesia sessions. Note that old sessions are not deleted.mock - In-memory sessions (default)session_enable - Whether to enable sessions. Defaults to true.session_key - Cookie key for sessions. Defaults to "_boss_session"session_exp_time - Expiration time for the session cookie. Defaults to 1440session_mnesia_nodes (optional, Mnesia sessions only) - List of Mnesia nodes, defaults to node()smart_exceptions - Enable smart_exceptions, which provide the line numbers of run-time errors. Defaults to true in development, false in production.smtp_server_enable - Enable the SMTP server for incoming mailsmtp_server_address - The address that the SMTP server should bind to. Defaults to {0, 0, 0, 0} (all interfaces).smtp_server_domain - The domain name of the SMTP serversmtp_server_port - The port that the SMTP server should listen on. Defaults to 25.smtp_server_protocol - The protocol that the SMTP server should use. Valid values are:tcp (default)sslssl_enable - Enable HTTP over SSLssl_options - SSL options; see ssl(3erl)Warning: From 0.5.2, the frontpage, default_action and default_actions configuration options has been moved to the new routing system