# vim:ft=perl # travelynx.conf must be a valid perl hash reference. String values must be # quoted and hash items must end with a comma. You can access environment # variables via $ENV, e.g. by writing $ENV{TRAVELYNX_DB_HOST} instead of # 'localhost'. You can validate via 'perl -c travelynx.conf'. { # Base URL of this travelynx installation, e.g. "https://travelynx.de" for # travelynx.de. Used to identify this travelynx instance when performing API # requests (so API providers know whom to contact case of issues) and for # imprint and other links in travelynx E-Mails. Note that this entry is # only used when travelynx is performing requests or sending E-mails from # a "work", "worker", or "maintenance" job. Otherwise, it will infer the # base URL from the HTTP request. If your travelynx instance is reachable # via multiple URLs, use any one of them. base_url => Mojo::URL->new('https://FIXME.local'), # Cache directories for schedule and realtime data. Mandatory. The parent # directory ('/var/cache/travelynx' in this case) must already exist. cache => { schedule => '/var/cache/travelynx/iris', realtime => '/var/cache/travelynx/iris-rt', }, # Database configuration. host and port are optional # (defaulting to localhost:5432), the rest is mandatory. db => { host => 'localhost', port => 5432, database => 'travelynx', user => 'travelynx', password => die("Changeme!"), }, # These settings control the amount and (re)spawn behaviour of travelynx # worker processes as well as IP, port, and PID file. They are suitable for # up to a few dozen concurrent users. If your site has more traffic, you # may want to increase the number of worker processes. # See the Mojo::Server::Hypnotoad manual for details. hypnotoad => { accepts => 100, clients => 10, listen => [ 'http://127.0.0.1:8093' ], pid_file => '/tmp/travelynx.pid', workers => 2, spare => 2, }, influxdb => { # travelynx can log statistics and performance attributes to InfluxDB. # To do so, create a travelynx database in your InfluxDB, and point url # (below) to the corresponding write URL. The URL may use anything from # plain HTTP to HTTPS with password authentication. ## url => 'https://user:password@host/write?db=travelynx', }, mail => { # To disable outgoing mail for development purposes, uncomment the # following line. Mails will instead be logged as Mojolicious "info" # messages, causing their content to be printed on stdout. ## disabled => 1, # Otherwise, specify the sender ("From" field) for mail sent by travelynx # here. E.g. 'Travelynx ' from => die("Changeme!"), }, registration => { # To disable registration for your instance, uncomment the following # line. ## disabled => 1, # To block registration from certain IPs, uncomment the following line # and point it to a file containing one IPv4 or IPv6 address per line. # Blocking IP ranges is not supported. ## denylist => "denylist.txt", }, # Links to source code and issue tracker shown on the about page. # Please change them if you are using a fork. ref => { # Optional issues => 'https://github.com/derf/travelynx/issues', # Mandatory source => 'https://github.com/derf/travelynx', }, # Secrets used for cookie signing and verification. Must contain at least # one random string. If you specify several strings, the first one will # be used for signing new cookies, and the remaining ones will still be # accepted for cookie validation. secrets => [ die("Changeme!"), ], version => qx{git describe --dirty} // 'experimental', };