2017-05-27 19:19:03 +02:00
|
|
|
[uwsgi]
|
|
|
|
auto-procname = true
|
|
|
|
procname-prefix-spaced = chrono
|
2020-07-24 13:58:28 +02:00
|
|
|
strict = true
|
2017-05-27 19:19:03 +02:00
|
|
|
|
2019-08-20 20:39:15 +02:00
|
|
|
plugin = python3
|
2020-07-24 13:58:28 +02:00
|
|
|
single-interpreter = true
|
2017-05-27 19:19:03 +02:00
|
|
|
module = chrono.wsgi:application
|
2020-07-24 13:58:28 +02:00
|
|
|
need-app = true
|
2017-05-27 19:19:03 +02:00
|
|
|
|
|
|
|
http-socket = /run/chrono/chrono.sock
|
|
|
|
chmod-socket = 666
|
|
|
|
vacuum = true
|
|
|
|
|
2021-02-09 10:07:52 +01:00
|
|
|
spooler-processes = 3
|
|
|
|
spooler-python-import = chrono.utils.spooler
|
2021-08-31 12:31:09 +02:00
|
|
|
spooler-python-import = hobo.provisionning.spooler
|
2021-06-07 15:30:02 +02:00
|
|
|
spooler-max-tasks = 20
|
|
|
|
|
2021-01-18 15:34:46 +01:00
|
|
|
# every five minutes
|
2022-04-22 13:43:31 +02:00
|
|
|
cron2 = minute=-5,unique=1 /usr/bin/chrono-manage tenant_command cancel_events --all-tenants -v0
|
|
|
|
cron2 = minute=-5,unique=1 /usr/bin/chrono-manage tenant_command send_email_notifications --all-tenants -v0
|
|
|
|
cron2 = minute=-5,unique=1 /usr/bin/chrono-manage tenant_command update_event_recurrences --all-tenants -v0
|
implement locking for meeting's agendas (#17685)
* add a Lease model to associate a lock_code to a booking,
* add a new command "clean_leases" run by cron every 5 minutes to clean
expired leases,
* add new parameter lock_code to get_all_slots() and exclude conflicting
booking linked to this lock_code if provided,
* accept new lock_code query string parameter in the datetimes endpoints
(to see available slot minus the locked ones, if the user want to
change the chosen slot)
* add new parameters lock_code and confirm_after_lock to the fillslot
endpoint:
- when lock_code is used without confirm_after_lock:
1. look for available slots excluding events/booking pairs associated with the given lock_code, by passing lock_code to get_all_slots
2. before creating the new event/booking pair, clean existing pairs
associated to the lock code,
3. after creating the new pair, create a new Lease object with the
lock code
- when lock_code is used with confirm_after_lock do all previous steps
but 3., making a normal meeting booking.
* add tests with lock_code on meeting's datetimes and fillslot use,
checking exclusion by resources or user_id works with lock_code
2021-03-16 14:29:41 +01:00
|
|
|
cron2 = minute=-5,unique=1 /usr/bin/chrono-manage tenant_command clean_leases --all-tenants -v0
|
2023-04-05 15:48:01 +02:00
|
|
|
# every fifteen minutes
|
|
|
|
cron2 = minute=-15,unique=1 /usr/bin/chrono-manage tenant_command sync-ants-hub --all-tenants
|
2021-01-18 15:34:46 +01:00
|
|
|
# hourly
|
2022-04-22 13:43:31 +02:00
|
|
|
cron2 = minute=3,unique=1 /usr/bin/chrono-manage tenant_command clearsessions --all-tenants
|
|
|
|
cron2 = minute=13,unique=1 /usr/bin/chrono-manage tenant_command send_booking_reminders --all-tenants
|
|
|
|
cron2 = minute=23,unique=1 /usr/bin/chrono-manage tenant_command sync_desks_timeperiod_exceptions --all-tenants
|
2021-01-18 15:34:46 +01:00
|
|
|
# daily
|
2022-04-22 13:43:31 +02:00
|
|
|
cron2 = minute=33,hour=4,unique=1 /usr/bin/chrono-manage tenant_command anonymize_bookings --all-tenants
|
2022-03-29 16:28:39 +02:00
|
|
|
# monthly
|
2022-04-22 13:43:31 +02:00
|
|
|
cron2 = minute=43,hour=1,day=1,unique=1 /usr/bin/chrono-manage tenant_command update_shared_custody_holiday_rules --all-tenants
|
|
|
|
# yearly (1th january)
|
|
|
|
cron2 = minute=53,hour=2,day=1,month=1,unique=1 /usr/bin/chrono-manage tenant_command sync_desks_timeperiod_exceptions_from_settings --all-tenants -v0
|
2021-01-18 15:34:46 +01:00
|
|
|
|
2017-05-27 19:19:03 +02:00
|
|
|
master = true
|
|
|
|
enable-threads = true
|
2020-07-24 13:58:28 +02:00
|
|
|
harakiri = 120
|
|
|
|
|
|
|
|
processes = 500
|
|
|
|
|
|
|
|
plugin = cheaper_busyness
|
|
|
|
cheaper-algo = busyness
|
|
|
|
cheaper = 5
|
|
|
|
cheaper-initial = 10
|
2022-07-21 10:24:32 +02:00
|
|
|
cheaper-overload = 20
|
|
|
|
cheaper-step = 2
|
|
|
|
cheaper-busyness-multiplier = 10
|
2020-07-24 13:58:28 +02:00
|
|
|
cheaper-busyness-min = 20
|
|
|
|
cheaper-busyness-max = 70
|
|
|
|
cheaper-busyness-backlog-alert = 16
|
|
|
|
cheaper-busyness-backlog-step = 2
|
|
|
|
|
2022-07-21 10:24:32 +02:00
|
|
|
listen = 1024
|
|
|
|
|
2020-07-24 13:58:28 +02:00
|
|
|
max-requests = 500
|
|
|
|
max-worker-lifetime = 7200
|
2017-05-27 19:19:03 +02:00
|
|
|
|
|
|
|
buffer-size = 32768
|
|
|
|
|
|
|
|
py-tracebacker = /run/chrono/py-tracebacker.sock.
|
|
|
|
stats = /run/chrono/stats.sock
|
2023-11-13 11:32:52 +01:00
|
|
|
memory-report = true
|
2017-05-27 19:19:03 +02:00
|
|
|
|
|
|
|
ignore-sigpipe = true
|
|
|
|
|
|
|
|
if-file = /etc/chrono/uwsgi-local.ini
|
|
|
|
include = /etc/chrono/uwsgi-local.ini
|
|
|
|
endif =
|