Commit Graph

50 Commits

Author SHA1 Message Date
Quentin Gliech
d64509e9cd Serve static files live from disk in dev mode 2022-04-28 16:08:50 +02:00
Quentin Gliech
dc66765d1b Remove some unnecessary dependencies 2022-04-08 09:10:33 +02:00
Quentin Gliech
119074496c Add CORS headers to API-like routes 2022-04-07 16:25:42 +02:00
Quentin Gliech
a1acdce74d Attach remote and local address to HTTP server/client spans 2022-04-07 11:52:43 +02:00
Quentin Gliech
7b5798776e Get rid of warp 2022-04-06 17:35:29 +02:00
Quentin Gliech
1ad2e97d17 Make the ServerLayer work properly with axum 2022-04-06 17:35:29 +02:00
Quentin Gliech
bbbe6d1d0a Axum migration: signed cookies, errors, CSRF tokens, sessions 2022-04-06 17:35:29 +02:00
Quentin Gliech
1dd1efed65 Start migrating to Axum
Now with the homepage and the static files
2022-04-06 17:35:29 +02:00
Quentin Gliech
eea9623e65 Load multiple config files specified in the MAS_CONFIG env variable 2022-03-14 17:46:18 +01:00
Quentin Gliech
f05b4eda11 Load the config file from a environment variable 2022-03-11 17:03:28 +01:00
Quentin Gliech
f243624f45 Move clients to the database 2022-03-08 19:07:46 +01:00
Quentin Gliech
650bfa86b3 Better OpenTelemetry tracer 2022-02-24 16:03:37 +01:00
Quentin Gliech
342c64b5d9 Many improvements to the mas-http crate
- make `mas_http::client` implement Service directly instead of being
   an async function
 - a Get layer that makes a Service<Uri>
 - better error sources in the JSON layer
 - make the client have a proper error type
2022-02-15 08:28:25 +01:00
Quentin Gliech
718cac3fb5 Implement a JSON tower layer
This will help requesting JSON APIs
2022-02-11 14:15:31 +01:00
Quentin Gliech
d92415d419 Proper HTTP client 2022-02-10 16:38:17 +01:00
Quentin Gliech
90a63d593a Dedicated HTTP server/client crate
Also have better names for the HTTP routes
2022-02-10 16:38:16 +01:00
Quentin Gliech
81a9a00ec7 Bump dependencies 2022-02-04 10:18:01 +01:00
Quentin Gliech
55670b39d3 Reorganise CLI crate 2022-02-01 18:49:55 +01:00
Quentin Gliech
ccf17d1551 Loads of docs & enabling more clippy lints 2022-02-01 12:02:32 +01:00
Quentin Gliech
70f2d1d480 Move secrets and oauth2 clients config 2022-02-01 09:34:55 +01:00
Quentin Gliech
08a375bdcd Improve the configuration schema 2022-01-28 11:51:14 +01:00
Quentin Gliech
5de0dc30d1 Allow loading private keys from files 2022-01-26 18:29:11 +01:00
Quentin Gliech
b410f129d4 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
02300f9fdc Fix traces not being created for requests 2022-01-25 11:46:14 +01:00
Quentin Gliech
02a763455b Add AWS SES backend to send email 2022-01-24 16:31:53 +01:00
Quentin Gliech
b0b64a60c6 Actually send emails 2022-01-19 18:00:45 +01:00
Quentin Gliech
8128a6ca65 CLI subcommand to mark emails as verified 2022-01-18 18:33:05 +01:00
Quentin Gliech
072a21663b New JWT/JOSE crate
Still WIP, needs to handle time related claims
2022-01-04 22:28:00 +01:00
Quentin Gliech
8f723815b9 Split the core crate 2021-12-17 18:04:30 +01:00
Quentin Gliech
98540cc235 Move storage module to its own crate 2021-12-17 12:15:07 +01:00
Quentin Gliech
8bb7038858 Fix user registration from CLI 2021-12-15 11:14:34 +01:00
Quentin Gliech
4ed47f26b6 Soft-fail if .env fails to load 2021-12-14 16:27:18 +01:00
Quentin Gliech
19b9965eb9 Better error context on startup 2021-12-14 11:52:19 +01:00
Quentin Gliech
adbdcfdb6c Refactor templates loading & implement templates hot-reload 2021-12-09 14:07:09 +01:00
Quentin Gliech
a8cdf552f9 Tweak items visibility in the core crate 2021-11-25 17:11:23 +01:00
Quentin Gliech
180093dbcf Graceful shutdown of the server 2021-11-22 18:30:17 +01:00
Quentin Gliech
410f25ce35 Upgrade all dependencies 2021-10-18 17:45:45 +02:00
Quentin Gliech
e1c12ce473 Move templates to their own crate 2021-10-18 17:40:25 +02:00
Quentin Gliech
3209e46964 Zipkin and Jaeger support 2021-10-14 19:38:57 +02:00
Quentin Gliech
4cb07b0e54 Make the OTEL propagator configurable 2021-10-14 18:55:47 +02:00
Quentin Gliech
31ba3448b9 Better CORS filter to allow OTEL propagator headers 2021-10-14 18:47:38 +02:00
Quentin Gliech
49bf5287b3 Propagate parent trace context 2021-10-14 17:39:49 +02:00
Quentin Gliech
acac9fb1b8 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
48f4c7f498 Initial OpenTelemetry tracing support 2021-10-13 13:56:42 +02:00
Quentin Gliech
98c68d6b8e Simplify template render check logic
Also documents a bunch of things in mas_core::templates
2021-09-24 11:45:25 +02:00
Quentin Gliech
fc8e18c781 Templates config 2021-09-23 23:51:17 +02:00
Quentin Gliech
dc70aa7999 Allow loading multiple configuration files 2021-09-17 12:22:03 +02:00
Quentin Gliech
0b3fd63748 Ability to run migrations on startup
Also adds a bunch of logging information on startup
2021-09-17 11:27:06 +02:00
Quentin Gliech
bade8cd8bf Embed templates in binary & add command to export them 2021-09-16 23:39:07 +02:00
Quentin Gliech
7681f5131a Split the service in multiple crates 2021-09-16 14:43:56 +02:00