3f7624190b
Implement origin::fs
2024-05-30 23:46:05 +02:00
a04855a252
Redifine origin::mux to be actually usable
2024-05-30 23:46:01 +02:00
3a24e5649e
Don't automatically create directory at domain.store_dir_path
2024-05-29 22:08:19 +02:00
2e8ec9ff86
Define Descr::FS
2024-05-29 13:42:37 +02:00
4075b3e2cd
Remove git-specific error cases from origin errors
2024-05-29 11:43:52 +02:00
1a6f804289
Update hyper-reverse-proxy with fixes
...
- fixes forwarding to an ipv6 address
- fixes websocket forwarding, which was still buggy
2024-03-05 21:41:28 +01:00
71c9b8dbf5
Upgrade hyper-reverse-proxy to fix websocket forwarding
2024-03-05 21:00:02 +01:00
56796e91b8
create reverse proxy client on a per-http handler basis
2024-03-02 17:49:24 +01:00
e73a120655
Make http optional
2024-02-29 17:55:10 +01:00
fcc8b860fc
Handle TcpListener.accept errors more gracefully
2024-02-29 10:48:53 +01:00
c76d7318f0
Upgrade to hyper v1.2.0, potentially fix issues with graceful shutdown
2024-02-29 10:30:21 +01:00
f562b32edb
Upgrade to rust stable 1.76.0 and fix clippy errors
2024-02-27 11:30:28 +01:00
e416a76668
Cache tree objects in the git proxy
2024-02-18 20:31:51 +01:00
3651fd0f0c
Remove full gix project as a dependency
2024-02-17 20:02:32 +01:00
498a33533f
Remove old git implementation completely
2024-02-16 21:22:39 +01:00
1e8f970486
Get gix_proxy working completely
2024-02-15 11:00:59 +01:00
1667bac39c
Decompress objects from git server, refactor BoxByteStream in the process
2024-02-13 17:27:00 +01:00
b88f555390
Remove display prefix from unexpected errors, was causing redundancy in nested errors
2024-02-13 15:16:48 +01:00
2302e9ff64
Implement most of new git implementation's get_file method
...
This includes a refactoring of get_file to be completely async, as well
as to add a new error case.
2024-01-30 18:47:09 +01:00
142fc14916
Loosen up argument type on unexpected::Error::from
2024-01-25 02:01:17 +01:00
5f1f8ce1b7
Fixes from clippy
2024-01-22 16:58:03 +01:00
b60c849a73
Remove all_descrs method from origin store
2024-01-22 16:58:03 +01:00
98ddefad4f
Implemented sync method of new git_proxy module
...
This module is a WIP, intended to replace the existing git store with
one that doesn't require any locally managed state.
2024-01-22 04:04:19 +01:00
57ee5ff30e
Pass origin::Descr::Git url around in parsed form, perform stricter validation on it
2024-01-21 23:24:09 +01:00
ac66ebf6cc
Fixed how unexpected Option errors were being worded
2024-01-21 23:19:00 +01:00
78b67a02ad
Make origin::Store::sync async
...
In order for this method to make sense as an async, the returned box
must have its lifetime tied to the store. This did not jive well with
the mock implementation of origin::Store, so I ditched that, along with
the mux tests which depended on it. Oh well.
2024-01-21 16:18:31 +01:00
6dd53f96d8
Handle requested path being a directory correctly
2024-01-16 14:31:32 +01:00
6a611c371c
Retrieve domain settings within each service, rather than in domain manager
...
This allows for fewer dependencies when initializing the services, and
more precise handling of the different cases.
2024-01-15 18:07:49 +01:00
43502f82f9
Remove platform suffix from binary produced by default flake target
2024-01-15 17:07:55 +01:00
4009f0da48
Use hyper-reverse-proxy fork with fixed host header behavior:
2024-01-14 17:41:46 +01:00
658ac62347
Fix bug in http proxy where response headers would be deduplicated
...
The fix was, ultimately, to upgrade hyper-reverse-proxy to an unreleased
version.
2024-01-14 16:43:33 +01:00
92254047b2
Remove https requirement to use external_domains
2024-01-14 16:03:25 +01:00
c95f4b9b39
Split domain manager "sync all domains" task into separate ones
...
Each new task corresponds to syncing a particular kind of thing for each
domain, e.g. origins, https certs, etc...
2024-01-14 15:51:12 +01:00
70c78b823a
add task_stack.push_spawn_periodically, use for domain manager sync job
2024-01-14 14:40:14 +01:00
dbb8e442c8
Fixes from clippy
2024-01-10 10:42:48 +01:00
9c6e3c6240
Update README with release build instructions
2024-01-09 11:24:54 +01:00
7e5aeb5f28
Fix windows build, add release target
2024-01-09 11:17:52 +01:00
c65a201222
Update nix flake with a devShells (plus many other improvements)
...
A lot of improvements got imported into here based on my work on the
garage nix setup.
2024-01-08 20:31:16 +01:00
0ed265db6f
Add arm6vl (rpi) build
2023-11-15 20:39:15 +01:00
ada434032b
Got windows cross-compilation working
...
The resulting binary is still untested, but it _does_ compile!
This required re-jiggering basically everything about the nix flake,
including replacing the toolchain management to fenix.
2023-11-14 22:49:49 +01:00
4ded1c4ab4
Use builtin tokio ctrl-c rather than signal-hook-tokio
...
signal-hook-tokio does not support windows, and the builtin ctrl-c
function does everything domani really needs.
2023-11-11 21:39:40 +01:00
023dffe70c
Add support for i686-linux
2023-11-10 12:58:11 +01:00
dce01bd31b
Fix cross-compilation
2023-11-09 23:52:07 +01:00
ab2e5fb55a
Refactor nix flake to allow cross compiling
2023-11-08 21:40:25 +01:00
6cabb9b742
Honor proxied_domains' https_disabled when doing https redirects
2023-08-25 19:01:30 +02:00
0b5b2cb3f3
Refactor how the configuration is documented
2023-08-25 18:44:55 +02:00
0b02400f4e
Redirect HTTP requests when HTTPS is enabled
2023-08-25 13:21:46 +02:00
eadb53db0b
Implement external domain cert syncing
2023-08-22 20:37:10 +02:00
49ac208286
License under the AGPLv3
2023-08-21 17:18:12 +02:00
Brian Picciano
65933b5cb3
Fix color scheme for dark mode
2023-08-09 16:15:39 +02:00