kanbanworkflowstimelinescrumrubyroadmapproject-planningproject-managementopenprojectangularissue-trackerifcgantt-chartganttbug-trackerboardsbcf
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
140 lines
5.6 KiB
140 lines
5.6 KiB
#-- encoding: UTF-8
|
|
#-- copyright
|
|
# OpenProject is a project management system.
|
|
# Copyright (C) 2012-2018 the OpenProject Foundation (OPF)
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License version 3.
|
|
#
|
|
# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows:
|
|
# Copyright (C) 2006-2017 Jean-Philippe Lang
|
|
# Copyright (C) 2010-2013 the ChiliProject Team
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License
|
|
# as published by the Free Software Foundation; either version 2
|
|
# of the License, or (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
#
|
|
# See docs/COPYRIGHT.rdoc for more details.
|
|
#++
|
|
|
|
OpenProject::Application.configure do
|
|
# Settings specified here will take precedence over those in config/application.rb.
|
|
|
|
# Code is not reloaded between requests.
|
|
config.cache_classes = true
|
|
|
|
# Eager load code on boot. This eager loads most of Rails and
|
|
# your application in memory, allowing both thread web servers
|
|
# and those relying on copy on write to perform better.
|
|
#
|
|
# Rake tasks automatically ignore this option for performance.
|
|
# We force some rake tasks to use eager_load through enhancing with environment:eager_load
|
|
# DISABLE those when you change this setting!
|
|
config.eager_load = true
|
|
|
|
# Full error reports are disabled and caching is turned on.
|
|
config.consider_all_requests_local = false
|
|
config.action_controller.perform_caching = true
|
|
|
|
# Ensures that a master key has been made available in either ENV["RAILS_MASTER_KEY"]
|
|
# or in config/master.key. This key is used to decrypt credentials (and other encrypted files).
|
|
# config.require_master_key = true
|
|
|
|
# Enable Rails's static asset server when requested
|
|
# Disable serving static files from the `/public` folder by default since
|
|
# Apache or NGINX already handles this.
|
|
config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?
|
|
|
|
# Compress JavaScripts and CSS.
|
|
config.assets.js_compressor = nil
|
|
# config.assets.css_compressor = :sass
|
|
|
|
# Do not fallback to assets pipeline if a precompiled asset is missed.
|
|
config.assets.compile = false
|
|
|
|
# Generate digests for assets URLs.
|
|
config.assets.digest = true
|
|
|
|
# Version of your assets, change this if you want to expire all your assets.
|
|
config.assets.version = '1.0'
|
|
|
|
# Specifies the header that your server uses for sending files.
|
|
# config.action_dispatch.x_sendfile_header = "X-Sendfile" # for apache
|
|
# config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for nginx
|
|
|
|
# Store uploaded files on the local file system (see config/storage.yml for options)
|
|
# config.active_storage.service = :local
|
|
|
|
# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
|
|
config.force_ssl = ActiveModel::Type::Boolean.new.cast(OpenProject::Configuration['rails_force_ssl'])
|
|
config.ssl_options = {
|
|
# Disable redirect on the internal SYS API
|
|
redirect: {
|
|
exclude: ->(request) do
|
|
# Respect the relative URL
|
|
relative_url = Regexp.escape(OpenProject::Configuration['rails_relative_url_root'])
|
|
# When we match SYS controller API, allow non-https access
|
|
request.path =~ /#{relative_url}\/sys\// || request.path =~ /#{relative_url}\/health_checks/
|
|
end
|
|
},
|
|
secure_cookies: true
|
|
}
|
|
|
|
# Set to :debug to see everything in the log.
|
|
config.log_level = OpenProject::Configuration['log_level'].to_sym
|
|
|
|
# Prepend all log lines with the following tags.
|
|
# config.log_tags = [ :subdomain, :uuid ]
|
|
|
|
# Use a different logger for distributed setups.
|
|
# config.logger = ActiveSupport::TaggedLogging.new(SyslogLogger.new)
|
|
|
|
# Use a different cache store in production.
|
|
# config.cache_store = :mem_cache_store
|
|
|
|
# Ignore bad email addresses and do not raise email delivery errors.
|
|
# Set this to true and configure the email server for immediate delivery to raise delivery errors.
|
|
# config.action_mailer.raise_delivery_errors = false
|
|
|
|
# Enable locale fallbacks for I18n (makes lookups for any locale fall back to
|
|
# the I18n.default_locale when a translation can not be found).
|
|
config.i18n.fallbacks = true
|
|
|
|
# Send deprecation notices to registered listeners.
|
|
config.active_support.deprecation = :notify
|
|
|
|
# Disable automatic flushing of the log to improve performance.
|
|
config.autoflush_log = false
|
|
|
|
# Use default logging formatter so that PID and timestamp are not suppressed.
|
|
config.log_formatter = ::Logger::Formatter.new
|
|
|
|
if ENV["RAILS_LOG_TO_STDOUT"].present?
|
|
logger = ActiveSupport::Logger.new(STDOUT)
|
|
logger.formatter = config.log_formatter
|
|
config.logger = ActiveSupport::TaggedLogging.new(logger)
|
|
end
|
|
|
|
|
|
config.active_record.dump_schema_after_migration = false
|
|
|
|
if OpenProject::Configuration.enable_internal_assets_server?
|
|
config.public_file_server.enabled = true
|
|
config.public_file_server.headers = {
|
|
'Access-Control-Allow-Origin' => '*',
|
|
'Access-Control-Allow-Methods' => 'GET, OPTIONS, HEAD',
|
|
'Cache-Control' => 'public, s-maxage=31536000, max-age=15552000',
|
|
'Expires' => "#{1.year.from_now.to_formatted_s(:rfc822)}"
|
|
}
|
|
end
|
|
end
|
|
|