Commit graph

1936 commits

Author SHA1 Message Date
Pēteris Caune
4adba44381
Add convenience functions in Profile model
* is_past_over_limit_grace(): Returns True if this profile is
over limits for 31 or more days.
* schedule_for_deletion(): Sets the deletion_scheduled_date
field to 31 days in the future.
2023-07-11 10:14:10 +03:00
Pēteris Caune
fb58a50301
Exclude "apiv2" from docs search 2023-07-08 10:54:55 +03:00
Pēteris Caune
7ecbe8fc4e
Make log output more compact 2023-07-08 10:39:47 +03:00
Pēteris Caune
89c26b46a4
Refactor sendalerts and Flip.send_alerts() for cleaner logs 2023-07-08 10:28:40 +03:00
Pēteris Caune
fc41af50f4
Fix sorting of NULLs when fetching a Flip in sendalerts 2023-07-07 18:21:26 +03:00
Pēteris Caune
68bcc5389f
Fix sendalerts to allow "handle_going_down()" to run more often 2023-07-07 17:58:55 +03:00
Pēteris Caune
368e76016d
Add Channel.last_notify_duration, use in sendalerts for prioritization 2023-07-07 16:40:23 +03:00
Pēteris Caune
9c00938516
Update email bounce handler to log diagnostic codes 2023-07-06 15:21:02 +03:00
Pēteris Caune
c69c1f5ec4
Add management command for sending "scheduled for deletion" warnings 2023-07-04 12:50:50 +03:00
Viktor Szépe
573b76a082
Fix typos (#855) 2023-07-02 15:14:13 +03:00
Pēteris Caune
011b97f75a
Fix signup tests to pass regardless of REGISTRATION_OPEN value 2023-06-28 15:26:39 +03:00
Pēteris Caune
68c42db58c
Add support for Telegram topics
Fixes: #852
2023-06-28 15:22:59 +03:00
Pēteris Caune
651aec4ac7
Add API support for filtering checks by slug
Fixes: #844
2023-06-27 12:41:31 +03:00
Pēteris Caune
58d317adc7
Make check auto-provisioning opt-in
cc: #849, #626
2023-06-27 09:45:38 +03:00
Pēteris Caune
e342f057df
Hopefully fix DB connection timeouts in manage.py smtpd
The smtpd management command runs a SMTP listener for receiving
ping signals as emails. If emails arrive infrequently, the
database connections can time out. A brute-force workaround for
this was to call `connections.close_all()` before making new
DB queries.

Code moved around while migrating to aiosmtpd, and looks like
the workaround did not work any more – #847. This commit
replaces `connections.close_all()` with `connection.close()` and
moves it to the `_process_message()` function, which *hopefully* fixes 
the problem.
2023-06-26 16:24:56 +03:00
Pēteris Caune
730d448c76
Fix pinging by slug to return 201 when a check is auto-created
cc: #849, #626
2023-06-26 13:06:20 +03:00
Pēteris Caune
b062caa2eb
Add support for the $EXITSTATUS placeholder in webhook payloads
Fixes: #826
2023-06-22 17:53:03 +03:00
Pēteris Caune
34530e0e91
Add Profile.over_limit_date DB field 2023-06-16 16:28:03 +03:00
Pēteris Caune
928f82e220
Add "Your account is currently over its check limit" notice 2023-06-16 15:00:33 +03:00
Pēteris Caune
3202eebbcf
Fix ping_by_slug to assign all channels to a newly created check 2023-06-15 15:53:33 +03:00
Pēteris Caune
fc09d4c084
Implement check auto-provisioning when pinging by slug
cc: #626
2023-06-15 15:36:16 +03:00
Pēteris Caune
45cccdecb0
Reduce code repetition 2023-06-15 14:36:32 +03:00
Pēteris Caune
20e8408f24
Update v2->v3 2023-06-15 10:29:25 +03:00
Pēteris Caune
ebcb060ece
Update slug validation rules to disallow uppercase 2023-06-15 09:05:26 +03:00
Pēteris Caune
4ccee09f73
Add /api/v3/ (adds ability to set slug when creating or updating checks) 2023-06-14 16:52:45 +03:00
Pēteris Caune
d7d9702ee0
Add support for regex validation in hc.lib.jsonschema
Also, switch to f-strings and add tests for validation
positive cases
2023-06-14 16:30:27 +03:00
Pēteris Caune
002bc9b083
Decouple check's name from slug, allow users to set hand-picked slugs 2023-06-14 15:06:37 +03:00
Pēteris Caune
db9fd529e2
Make hc.lib.emails raise exceptions when EMAIL_ settings are not set 2023-06-13 13:27:58 +03:00
Pēteris Caune
475cd574ee
Improve logging in hc.lib.s3._remove_objects 2023-06-12 11:25:58 +03:00
Pēteris Caune
fcf21c68a7
Reduce code repetition in Channel.transport() 2023-06-08 15:46:06 +03:00
Pēteris Caune
dec5d51e87
Configure logging to log exceptions to console even when DEBUG=False
Fixes: #835
2023-06-08 10:51:49 +03:00
Pēteris Caune
518dee4ae2
Update the login_webauthn view to return HTTP 404 when RP_ID is not set 2023-06-08 10:49:57 +03:00
Pēteris Caune
5cdc104a16
Update serve_doc and its tests to use pathlib 2023-06-07 17:04:03 +03:00
Pēteris Caune
c184f5ca42
Fix populate_searchdb to use ".html-fragment" file suffix
(and update it to use pathlib)
2023-06-07 16:43:12 +03:00
Pēteris Caune
4a72519c71
Update settings.BASE_DIR usage sites to use pathlib 2023-06-07 16:36:19 +03:00
Pēteris Caune
b9d016b799
Update settings.py to use pathlib 2023-06-07 16:16:18 +03:00
Max
19d05498ae
Fix smtpd service without stdin (#840)
Fixes: #839
2023-06-05 23:23:37 +03:00
Pēteris Caune
4bd305f4fe
Fix docs to display the ping body limit defined in settings 2023-06-04 19:32:11 +03:00
Pēteris Caune
c743b7a76e
Move "fix_asterisks" from template tags to transports.py 2023-06-04 15:01:18 +03:00
Pēteris Caune
628d2ca637
Add escaping for asterisks in MS Teams messages 2023-06-04 14:56:28 +03:00
Pēteris Caune
4afb1cfe23
Move MS Teams message preparation from template to Python
Also, remove Markdown escaping for the description field.
This is for consistency with Slack, Mattermost, Discord, and
Rocket.Chat -- none of them attempt to escape Markdown syntax.
2023-06-04 14:39:22 +03:00
Pēteris Caune
bc0b76cfaf
Remove duplicate code 2023-06-04 11:25:00 +03:00
Pēteris Caune
564d5cda31
Move Discord message preparation from template to Python 2023-06-04 11:16:48 +03:00
Pēteris Caune
5f710b4949
Move Mattermost message preparation from template to Python 2023-06-04 11:03:56 +03:00
Pēteris Caune
3e8a89bb7a
Move Slack message preparation from template to Python 2023-06-04 09:44:15 +03:00
Pēteris Caune
1d003da29d
Fix the display of ignored pings with non-zero exitstatus 2023-06-03 19:37:45 +03:00
Pēteris Caune
dd1569457e
Remove MD escaping because it is inconsistent between web and mobile 2023-06-03 19:02:45 +03:00
Pēteris Caune
91e5a8430b
Add Markdown escaping in Rocket.Chat messages 2023-06-03 18:56:55 +03:00
Pēteris Caune
81a3e3352b
Fix singular/plural in the "Last Ping Body" field 2023-06-03 18:32:02 +03:00
Pēteris Caune
0ecbe1bd1d
Move Rocket.Chat message preparation from template to Python
cc: #463
2023-06-03 18:15:29 +03:00