1066 Commits

Author SHA1 Message Date
Pēteris Caune
0ff4bd01e0
Improved UI to invite users from account's other projects. Fixes #258.
The team size limit is applied to the number of distinct users across all projects. Fixes #332.
2020-02-14 13:05:21 +02:00
Pēteris Caune
82d61335b0
The "render_docs" command checks if markdown and pygments is installed. cc: #329 2020-02-14 10:14:29 +02:00
Pēteris Caune
15b9611c5a
Show a warning in project's top navigation if the project has no configured integrations. Fixes #327 2020-02-13 10:29:01 +02:00
Pēteris Caune
c8ccd89af2
In hc.front.views.ping_details, if a ping does not exist, return a friendly message 2020-02-11 09:55:30 +02:00
Pēteris Caune
b0b6ee3149
In hc.front.views.ping_details, if a ping does not exist, return 404 instead of 500 2020-02-11 09:44:02 +02:00
Pēteris Caune
ccd30ac239
Stricter cron validation, reject schedules like "At midnight of February 31" 2020-02-07 11:38:50 +02:00
Pēteris Caune
4f6f1d9f66
Fix sendalerts crash loop when encountering a bad cron schedule 2020-02-07 10:36:45 +02:00
Pēteris Caune
ac4f1ca059
Log slow sendalerts.notify runs to stdout 2020-02-06 11:21:28 +02:00
Pēteris Caune
4a7074418a
Track the time spent sending notifications for each flip 2020-02-06 11:11:12 +02:00
Pēteris Caune
9f2638bf72
The sendalerts commands measures notification dwell time and reports it over statsd protocol. Experimental, may go away in a future commit. 2020-02-05 11:25:06 +02:00
Pēteris Caune
5d9944873c
Don't trigger "down" notifications when changing schedule interactively in web UI 2020-02-05 10:31:20 +02:00
Pēteris Caune
6bc4948d00
Removing obsolete comment: the index is defined in hc.api.models.Check.Meta 2020-02-04 15:32:25 +02:00
Pēteris Caune
f51a0a257e
Don't delete customer data in braintree when closing account.
Need customer data to stay in braintree until the end of each month for tax reports.
2020-02-03 11:11:21 +02:00
Pēteris Caune
e2fe2edcc1
Title tags for documentation pages. 2020-01-29 13:54:54 +02:00
Pēteris Caune
dbd21c325d
Docs: "HTTP API" page 2020-01-29 12:43:35 +02:00
Pēteris Caune
a276c24dd3
Docs overhaul WIP 2020-01-28 14:07:06 +02:00
Pēteris Caune
f41c78e40f
Serve the introduction page at /docs/ 2020-01-23 16:58:28 +02:00
Pēteris Caune
50c8c153ea
Documentation in Markdown. 2020-01-23 16:04:15 +02:00
Pēteris Caune
7cf324872c
Replace the gear icon with three horizontal dots icon. Fixes #322.
Add a Pause button in the checks list. Fixes #312
2020-01-21 11:57:17 +02:00
Pēteris Caune
cdad632082
Show sub-second durations with higher precision, 2 digits after decimal point. Fixes #321 2020-01-17 14:41:41 +02:00
Pēteris Caune
77033760f9
Make sure Check.last_ping and Ping.created timestamps match exactly 2020-01-17 14:30:32 +02:00
Pēteris Caune
58a118c494
Make Ping.body size limit configurable. Fixes #301 2020-01-17 12:44:39 +02:00
John Kristensen
819aa227e9 Increase allowable length of Matrix room alias
The existing 40 character limit prevents using the integration will
Matrix servers that might have a fairly lengthy hostname (ie.
'matrix.internal.example.com' would only allow 12 characters for the
room name or ID, and room IDs are 19 characters long).

Increasing the `max_length` to `100` is still fairly arbitrary but it
does match up with the `max_length` of the `name` field of the `Channel`
model and should cover most instances.
2020-01-16 13:38:47 +11:00
Pēteris Caune
b8108906f4
hc.api.views.bounce updates Channel.last_error 2020-01-08 11:14:34 +02:00
Pēteris Caune
c521b44d20
hc.api.views.bounce handles transient email bounces (logs error, does not disable the integration) 2020-01-08 10:50:29 +02:00
Pēteris Caune
c4edb415a2
Removing debug statement. 2020-01-07 11:47:53 +02:00
Pēteris Caune
012ad88bb3
createsuperuser management command requires an unique email address (#318) 2020-01-07 11:46:50 +02:00
Pēteris Caune
4ee2646539
Show a red "!" in project's top navigation if any integration is not working 2020-01-03 13:15:24 +02:00
Pēteris Caune
3649c500d2
Don't allow adding email integrations with both "up" and "down" unchecked 2019-12-27 17:25:37 +02:00
Pēteris Caune
38ed309a3c
Don't allow adding webhook integrations with both URLs blank 2019-12-27 17:13:44 +02:00
Pēteris Caune
84a4de32cc
Remove legacy webhook formats (newline-separated fields and the post_data key) from the Channel model 2019-12-27 15:07:15 +02:00
Pēteris Caune
6ebae33579
Fix "Send Test Notification" for webhooks that only fire on checks going up 2019-12-27 14:36:32 +02:00
Pēteris Caune
be286518b7
For webhook integration, validate each header line separately 2019-12-27 13:56:33 +02:00
Pēteris Caune
830681d8f8
Specify encoding when reading CHANGELOG.md. Fixes #314 2019-12-19 09:59:10 +02:00
Pēteris Caune
0d2c6217d3
Auto-submit the unsubscribe confirmation form only if signature is more than 5 minutes old. Idea from https://stackoverflow.com/questions/59281750/strategies-to-prevent-email-scanners-from-activating-unsubscribe-links/59381066#59381066 2019-12-18 16:10:30 +02:00
Pēteris Caune
bffb51357e
Add desc to hc.api.schemas.check 2019-12-18 09:11:34 +02:00
Bram Daams
1b3d7e8c0a being able to set/update the description of a check when creating/updating using the api 2019-12-17 15:47:13 +01:00
Pēteris Caune
d6be955fa7
Silence stdout output from management commands during tests 2019-12-11 15:35:23 +02:00
Pēteris Caune
15ba415298
senddeletionnotices command skips profiles with recent last_active_date 2019-12-11 15:24:51 +02:00
Pēteris Caune
2a8e7ee766
Django 3.0 2019-12-11 13:05:25 +02:00
Pēteris Caune
f7496fb8cf
Add List-Unsubscribe-Post email header 2019-12-10 09:44:51 +02:00
Pēteris Caune
8d81d27af3
Unsubscribe links serve a form, and require HTTP POST to actually unsubscribe 2019-12-10 09:14:54 +02:00
Pēteris Caune
4ee92a44ff
Unsubscribe is CSRF exempt. 2019-12-09 16:14:50 +02:00
Pēteris Caune
f9c61dad23
Fix List-Unsubscribe email header value: add angle brackets 2019-12-09 14:04:14 +02:00
Pēteris Caune
1cdb6e6d1d
Don't set CSRF cookie on first visit. Signup is exempt from CSRF protection. 2019-12-06 08:58:32 +02:00
Pēteris Caune
22d4d55340
Added support for Shields.io badges. cc: #304, #305 2019-12-05 12:27:37 +02:00
Pēteris Caune
838aee6bdd
Show Healthchecks version in Django admin header cc: #306 2019-12-03 17:41:58 +02:00
Pēteris Caune
3f19181028
"Filtering Rules" dialog, an option to require HTTP POST. Fixes #297 2019-11-27 16:33:36 +02:00
Pēteris Caune
0349a3997b
PagerDuty event payload does not need the "vendor" key. 2019-11-22 11:29:09 +02:00
Pēteris Caune
f6d36b3491
Alternate flow for setting up PagerDuty integration, without using PD Connect 2019-11-22 11:17:14 +02:00