Quentin Gliech
88de377b42
Rename ShutdownManager to LifecycleManager
2025-01-28 14:29:33 +01:00
Quentin Gliech
f2221d309e
Report version from git describe in metrics & CLI
2024-12-12 17:59:35 +01:00
Quentin Gliech
773c4d656d
Move all the OTEL meters to crate-level statics
2024-12-12 16:04:48 +01:00
Quentin Gliech
14948c35cb
Replace all the manual HTTP clients with reqwest
2024-10-28 13:46:38 +01:00
Quentin Gliech
685b27d594
Use CancellationToken and a TaskTracker to handle graceful shutdowns
2024-10-10 10:49:41 +02:00
Quentin Gliech
ed4b6c42a7
Remove (C)
2024-09-10 14:28:55 +02:00
Quentin Gliech
f6bb100c0a
License headers change
2024-09-05 13:25:42 +02:00
reivilibre
fbc360d1a9
Backend work to support minimum password complexity ( #2965 )
...
* config: Add minimum password complexity option
* PasswordManager: add function for checking if complexity is sufficient
* Enforce password complexity on registration, change and recovery
* cli: Use exit code 1 for weak passwords
This seems preferable to exit code 0, but ideally we should choose one
and document it.
* Expose minimum password complexity score over GraphQL
2024-07-11 10:17:39 +01:00
Quentin Gliech
798ca90241
Fix mas-cli
...
This does a few things:
- move `bytes` to workspace dependencies
- write an hyper-based transport for Sentry
- ignore OTEL errors related to propagations
- fix everything else in mas-cli
2024-07-05 10:07:40 +02:00
Quentin Gliech
1cf283337b
Load the configuration from a common Figment instance
...
This should avoid loading the same files multiple times.
It should also make it easier to do post-processing on the
configuration, like validation.
This does deprecate one undocumented feature: the ability to override
some fields during the configuration generation using environment
variables.
2024-03-22 13:33:09 +01:00
Quentin Gliech
6eb6209bd8
Use rustls-platform-verifier for cert validation
...
This simplifies by removing the mutually exclusive `native-roots` and
`webpki-roots` features with something that is suitable for all
platforms.
2024-03-06 14:03:59 +01:00
Quentin Gliech
c0a9d27e34
Automatically sync the configuration on server startup
2024-03-01 18:14:05 +01:00
Quentin Gliech
a0f5f3c642
Enable clippy lints on a workspace level
...
This enables a lot more lints than before in some crates, so this fixed a lot of warnings as well.
2023-12-05 17:20:42 +01:00
Quentin Gliech
5ab0e880ff
Upgrade opentelemetry to 0.21.0
2023-11-08 11:49:03 +01:00
Quentin Gliech
f20c8d8ef3
Infer client IP address from the peer address and the X-Forwarded-Proxy header
2023-09-20 20:24:30 +02:00
Quentin Gliech
21964cbeab
Setup cargo-deny
...
Also try to remove a bunch of duplicate crates
2023-08-14 11:22:52 +02:00
Quentin Gliech
699dfba55f
OpenTelemetry upgrade
2023-08-11 16:12:58 +02:00
Quentin Gliech
e79da4a949
Bump Rust dependencies and remove unused ones
2023-07-27 17:23:08 +02:00
Quentin Gliech
c9e9130cdf
Sentry transport based on hyper to get rid of reqwest
2023-04-18 23:01:43 +02:00
Quentin Gliech
09270b2493
Better tracing attributes in the HTTP client
2023-04-18 14:45:43 +02:00
Quentin Gliech
f4fff72b22
Properly propagate trace contexts
...
This also fixes a long-running issue where the OTEL context was not properly set in the tracing spans.
2023-04-14 10:22:22 +02:00
Quentin Gliech
87914cbcb3
Capture better errors in Sentry
2023-01-31 16:25:15 +01:00
Quentin Gliech
875025467e
Log more errors and setup Sentry integration
2023-01-30 18:04:44 +01:00
Quentin Gliech
533cabe005
Use the new password manager
2022-12-14 16:04:36 +01:00
Quentin Gliech
a86798d2b3
Switch to camino's Utf8Path* instead of std::path::Path*
2022-11-18 19:02:26 +01:00
Quentin Gliech
c548417752
Refactor listeners building
2022-10-17 11:39:45 +02:00
Quentin Gliech
f5e3aa0404
Migrate to clap v4
2022-09-29 14:33:40 +02:00
Quentin Gliech
3901829ccd
Prometheus exporter & other stuff
2022-09-28 11:13:53 +02:00
Quentin Gliech
7dd84a6584
WIP: bump OTEL
2022-09-28 11:13:53 +02:00
Quentin Gliech
c1ed726dc8
Enable the clippy::str_to_string lint
2022-08-08 10:06:20 +02:00
Quentin Gliech
c3ddc088ab
Reorganise CLI crate
2022-02-01 18:49:55 +01:00
Quentin Gliech
a45381828c
Loads of docs & enabling more clippy lints
2022-02-01 12:02:32 +01:00
Quentin Gliech
c7a243a3a1
Minor logging improvements
...
- only have colors if the output terminal is a tty
- log in a non-blocking fashion
2022-01-26 17:21:54 +01:00
Quentin Gliech
95bde28ebe
Soft-fail if .env fails to load
2021-12-14 16:27:18 +01:00
Quentin Gliech
7341f0dccf
Better error context on startup
2021-12-14 11:52:19 +01:00
Quentin Gliech
617ab83ab2
Upgrade all dependencies
2021-10-18 17:45:45 +02:00
Quentin Gliech
f9036aecd4
Make telemetry configurable
...
Also allows opting-out of the OTLP exporter to remove the dependency to
protoc when building.
2021-10-13 16:48:16 +02:00
Quentin Gliech
27ae6a5167
Initial OpenTelemetry tracing support
2021-10-13 13:56:42 +02:00
Quentin Gliech
3159a9972f
Allow loading multiple configuration files
2021-09-17 12:22:03 +02:00
Quentin Gliech
76c69485e9
Embed templates in binary & add command to export them
2021-09-16 23:39:07 +02:00
Quentin Gliech
a44e33931c
Split the service in multiple crates
2021-09-16 14:43:56 +02:00