Commit graph

3074 commits

Author SHA1 Message Date
Pēteris Caune
5715ac9f24
Simplify Signal response parsing 2024-03-04 12:31:18 +02:00
Pēteris Caune
5c82b2e9ac
Add handling for Signal messages with null recipient number
If the recipient has set up an username, the responses
from Signal will return "number": null.

Example scenario:

* Alice sets up a Signal integration
* Alice sets up an username for their Signal account
* Alice deletes their Signal account
* Healthchecks sends a message to Alice's Signal account
* Signal responds with UNREGISTERED_FAILURE, but the
  number field in the response is null

The fix is to:

* Allow null in the "number" field as a valid value
* Ignore the value of the "number" field when reading Signal responses
2024-03-04 12:26:56 +02:00
Pēteris Caune
d7b683e9d1
Update more notification templates to handle Check.last_ping == None 2024-03-01 16:25:05 +02:00
Pēteris Caune
4d2a3227f3
Update more notification templates to handle Check.last_ping == None 2024-03-01 16:07:13 +02:00
Pēteris Caune
b0c0c1d8c3
Fix top nav in the badges page 2024-03-01 12:36:29 +02:00
Pēteris Caune
4c97068776
Update notification templates to handle Check.last_ping == None 2024-02-29 14:38:35 +02:00
Pēteris Caune
8955c1d7cd
Remove "Last ping was <time interval> ago." from WhatsApp messages
In some rare cases the last ping can be None (i.e., there was no
last ping). In these cases we would need to omit the
"Last ping was <time interval> ago." part from the message.
To avoid creating a *third* WhatsApp content template, remove
the "Last ping was <time interval> ago." part from the message
altogether.

What are the cases when last ping could be None? Here's one:

* User creates a check
* User sends a "/start" signal
* The grace time passes, the check goes down. There's no
  previous "success" or "fail" signal, so the check's
  "last_ping" field will be None.
2024-02-29 11:42:44 +02:00
Pēteris Caune
af6731a24f
Fix code to use project.check_set instead of Check.objects.filter(...)
No functional difference, just cleaner.
2024-02-28 10:01:52 +02:00
Pēteris Caune
dbc8ebb73a
Tweak the badges page 2024-02-27 13:06:31 +02:00
Pēteris Caune
1322bb1123
Add support for per-check status badges
Fixes: #853
2024-02-27 12:55:51 +02:00
Pēteris Caune
5eb21a6919
Fix HTML snippet in the Status Badges page 2024-02-26 17:47:43 +02:00
Pēteris Caune
4959856e58
Redesign the "Status Badges" page 2024-02-26 12:34:26 +02:00
Pēteris Caune
6686147cb1
Update CHANGELOG 2024-02-23 11:43:02 +02:00
Michael Boateng
9770bc1ea0
Add auto-refresh functionality to log page (#963)
Add auto-refresh functionality to log page

Fixes: #957

---------

Co-authored-by: Pēteris Caune <cuu508@gmail.com>
2024-02-23 11:36:31 +02:00
Pēteris Caune
51977e185b
Bump pydantic version to 2.6.1 2024-02-21 18:49:39 +02:00
Pēteris Caune
86930d1fba
Update MS Teams onboarding instructions 2024-02-20 12:49:40 +02:00
Pēteris Caune
f6378fc26b
Fix Gotify integration to handle Gotify server URLs with paths
Fixes: #964
2024-02-20 10:12:54 +02:00
Pēteris Caune
52a8df4dbf
Fix naturaltime usage in the WhatsApp integration
When preparing WhatsApp payload we call naturaltime() and
serialize its output as JSON. naturaltime can return a lazy object
which causes an exception during JSON serialization. The fix
is to wrap naturaltime in str() to force its output to be a string.
2024-02-17 10:05:59 +02:00
Pēteris Caune
12b5c36897
Add a system check that warns about WhatsApp misconfiguration 2024-02-16 12:58:48 +02:00
Pēteris Caune
4ef470730f
Fix tests 2024-02-16 12:45:10 +02:00
Pēteris Caune
db31cacc86
Fix syntax 2024-02-16 12:37:59 +02:00
Pēteris Caune
ec0791b4ee
Update the WhatsApp integration to use Twilio Content Templates 2024-02-16 12:37:11 +02:00
Pēteris Caune
0d5c139348
Tweak wording 2024-02-15 13:22:35 +02:00
Pēteris Caune
aefc0d36c6
Improve email docs 2024-02-15 13:17:24 +02:00
Pēteris Caune
1ec4fbc0c9
Add a note about flip retention in docs 2024-02-15 11:16:01 +02:00
Pēteris Caune
1250195e3e
Add support for $NAME_JSON and $BODY_JSON placeholders 2024-02-14 11:52:35 +02:00
Pēteris Caune
b1cd529532
Fix type annotation 2024-02-12 11:34:27 +02:00
mmomjian
3728231132
Update filtering_rules_modal.html (#956)
whoops!
2024-02-12 11:17:29 +02:00
Pēteris Caune
c99b644a22
Update CHANGELOG for v3.2 release 2024-02-09 14:09:45 +02:00
Pēteris Caune
33284bd93f
Fix MariaDB version check
Naively comparing with string "10.7" does not quite work for
versions 10.10 and 10.11 :-)
2024-02-09 14:01:48 +02:00
Pēteris Caune
d881afa3f0
Add a system check to warn about a required MariaDB UUID migration
cc: #929
2024-02-09 11:32:30 +02:00
Pēteris Caune
d37f830be9
Tweak the sizing of grace time input groups some more 2024-02-08 16:13:50 +02:00
Pēteris Caune
97442e9d2d
Tweak the sizing of grace time input groups 2024-02-08 16:10:54 +02:00
Pēteris Caune
56f8bd93e3
Update CHANGELOG 2024-02-08 15:44:27 +02:00
Michael Boateng
6bfd9c901c
Make grace time editable when job is created (#953)
Fixes: #945
2024-02-08 15:34:52 +02:00
dependabot[bot]
1b36f3a6f6
Bump django from 5.0.1 to 5.0.2 (#955)
Bumps [django](https://github.com/django/django) from 5.0.1 to 5.0.2.
- [Commits](https://github.com/django/django/compare/5.0.1...5.0.2)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-08 11:22:24 +02:00
Pēteris Caune
4d0cf7fb80
Remove @nolog decorator
The purpose of @nolog was to disable logging in certain
test cases to avoid console spam during tests. But with the
current logging configuration console is clean even without it.
2024-02-06 17:30:24 +02:00
Pēteris Caune
2923a39a46
Add logging for "signal-cli call failed (<error_code>)" errors 2024-02-06 17:20:29 +02:00
Pēteris Caune
6919202a8f
Add missing space 2024-02-06 15:26:43 +02:00
Pēteris Caune
2ea7ff5950
Improve copy in email.md 2024-02-06 10:09:25 +02:00
mmomjian
00c5b767d4
Update filtering rules to specify that they are case sensitive (#944)
* Update filtering_rules_modal.html

We should specify that the keywords are case sensitive - this isn't obvious to the user.

* Update filtering_rules_modal.html

* Update email.html-fragment

* Update email.md
2024-02-06 09:48:47 +02:00
Pēteris Caune
79382ca82e
Fix systemd expression in a testcase to work after 2024-02-01 2024-02-02 13:00:29 +02:00
Pēteris Caune
7ba2374616
Add API docs for /api/v3/status/
Fixes #949
2024-01-29 11:31:05 +02:00
Pēteris Caune
08eb279574
Bump pydantic version from 2.5.2 to 2.5.3 2024-01-23 19:26:07 +02:00
Pēteris Caune
7cb47188b9
Remove redundant cast 2024-01-22 16:09:20 +02:00
Pēteris Caune
16450a66c7
Add tooltips to tag buttons in the checks list screen
Fixes: #911
2024-01-22 15:20:09 +02:00
Pēteris Caune
42f88f4fb0
Add S3_SECURE setting
It controls whether to use secure (TLS) connection to S3 or not.
2024-01-10 12:19:45 +02:00
Pēteris Caune
ae94648efd
Fix minio-related mypy warnings
A few warnings remain, I think these should be fixed in minio-py:

https://github.com/minio/minio-py/pull/1389
2024-01-04 16:01:34 +02:00
Pēteris Caune
40742bba1d
Bump Django from 5.0 to 5.0.1 2024-01-04 15:29:05 +02:00
Pēteris Caune
492d031341
Update Third-Party Resources page
* remove projects that have not been updated in years
* add hc-monitor and danidelvalle/healthchecks-decorator
2024-01-04 15:15:51 +02:00