c86d890c2c
feat: enable configuration of a webhook for receiving notifications
2024-07-23 20:38:29 +01:00
1690e1bff6
docs: document Notifications to user
2024-07-23 20:37:08 +01:00
8f95ae0058
refactor: extract messages and handlers modules from webhook-actor
2024-07-19 07:48:55 +01:00
ba67b1ebcb
refactor: flag internally that dev not based on main will require used intervention
...
Preparation for when we will be sending user notifications
2024-07-16 20:00:29 +01:00
92ebd45307
refactor: Reduce cognitive complexity of 'validate_position'
...
Closes kemitix/git-next#83
2024-07-16 19:59:11 +01:00
c104dfedc1
refactor: Reduce cognitive complexity of WebhookNotification
handler. 2/2
...
Closes kemitix/git-next#49
2024-07-16 18:33:45 +01:00
06292c2711
refactor: Reduce cognitive complexity of WebhookNotification
handler. 1/2
...
Closes kemitix/git-next#49
2024-07-16 18:14:32 +01:00
33907a1d32
feat: reload server config when file is touched
...
Closes kemitix/git-next#84
2024-07-16 07:14:57 +01:00
f44865fa92
docs: add UnRegisterWebhook from RepoActor
2024-07-15 07:53:14 +01:00
b715755b91
feat: unregister webhooks form forge during shutdown
...
Closes kemitix/git-next#46
2024-07-15 07:39:06 +01:00
6c92f64f8b
docs: add readmes to each crate to direct users to main crate
...
Closes kemitix/git-next#106
2024-07-14 20:58:58 +01:00
6981a7b5e3
docs: move main README into cli crate
2024-07-14 20:54:17 +01:00
69211a87a3
build: add more metadata for crates.io
2024-07-14 20:47:19 +01:00
e2b545ae39
fix: move default.toml inside crate that uses it
2024-07-14 20:22:32 +01:00
639e561be6
fix: move server-default.toml inside crate that uses it
2024-07-14 20:22:32 +01:00
adf56c1b38
revert: fix: explicitly specify version in each crate
...
This reverts commit cd93d047cb
.
2024-07-14 16:39:17 +01:00
cd93d047cb
fix: explicitly specify version in each crate
...
crates.io doesn't appear to like taking the version from the workspace
crate
2024-07-14 14:24:41 +01:00
c289617ba9
fix: typo and missing repository entry in Cargo.toml files
2024-07-14 13:32:07 +01:00
e410cfc4f1
chore: add license and descriptions for each crate
2024-07-14 10:40:34 +01:00
10e63894c2
docs: server-actor: add readme showing message paths
2024-07-13 08:16:24 +01:00
57a614bad3
fix: don't modify config of external repos
...
The git config files of external repos are read-only.
This is the only place where we make reference to a remote named
'origin', so this also closes kemitix/git-next#85 .
Closes kemitix/git-next#85
2024-07-12 18:52:57 +01:00
5f36282667
feat: recheck failed status
...
Should a status check for a transient reason and is re-run, this will
allow that to be detected without the need to restart the git-next
server or force a spurious rebase.
Closes kemitix/git-next#88
2024-07-12 08:05:41 +01:00
fd762e2bd2
feat: perform controlled shutdown on ctrl-c
...
Closes kemitix/git-next#94
Controlled shutdown includes attempting to unregister webhooks.
2024-07-11 19:19:04 +01:00
681b2c4c10
refactor: split messages and handlers for server-actor
2024-07-11 19:19:01 +01:00
7578ab3144
feat: log as an error when webhook url ends with a slash
...
Closes kemitix/git-next#87
2024-07-11 19:18:58 +01:00
7212154037
refactor: split ReceiveServerConfig handler
...
First handler, with original name, validates the server config.
The new second handler, ReceiveValidServerConfig, can then (re)start the
server without needing to validate the settings.
2024-07-11 19:18:55 +01:00
4276964f4d
refactor: split server storage creation out from startup
...
Closes kemitix/git-next#75
2024-07-11 19:18:50 +01:00
9c20e780d0
feat: update auth of interal repos when changed in config
...
Closes kemitix/git-next#100
2024-07-10 09:05:36 +01:00
df352443b7
feat: GitDir tracks when repo is cloned by git-next
2024-07-06 15:08:13 +01:00
4e60be61f7
refactor: extract git::repository::factory module
2024-07-05 20:31:16 +01:00
5ab075c181
refactor: split git::repository::tests module
2024-07-05 20:12:17 +01:00
d9feaeaa7b
chore: remove unused FakeOpenRepository
2024-07-05 20:12:17 +01:00
2e374d317a
refactor: split git::repository::open::tests module
2024-07-05 20:12:17 +01:00
694135a10b
fix: default log level is info
...
When RUST_LOG isn't set, the default log level is INFO rather than
ERROR.
Closes kemitix/git-next#104
2024-07-05 07:23:40 +01:00
c2953adba5
chore: remove unused token from github tests
2024-07-05 07:04:27 +01:00
7b19f3b66f
chore: directly re-export function and type
2024-07-05 06:59:54 +01:00
12849d5a69
refactor: server no longer depends directly on git crate
2024-07-03 07:42:11 +01:00
3dec12de20
refactor: cli don't depend directly on git crate
2024-07-03 07:35:01 +01:00
83ce95776e
fix: messages should always get delivered
...
Remove the async wrapper for sending messages as they were never being
delivered.
2024-07-02 18:51:40 +01:00
dfc0c1dc80
refactor: only start actor system when server starts
2024-07-01 06:54:07 +01:00
77d35e8a09
feat: load log levels from env RUST_LOG
2024-06-30 20:12:47 +01:00
c85eee85e9
refactor: file-watcher doesn't debug log on each loop
2024-06-30 20:12:35 +01:00
40c61fa9ff
test: add more debug tracing
2024-06-30 19:42:09 +01:00
73ab149aba
fix: github commit should use common headers
2024-06-30 19:30:22 +01:00
ae7933c79e
fix: don't retry validation when non-retryable error
...
Closes kemitix/git-next#90
2024-06-30 18:48:49 +01:00
c9efbb9936
fix: ReceiveRepoConfig tries to send two messages
...
Similar to CloneRepo the handler tries to send two messages one after
the other. Leave it to WebhookRegistered handler to kick off the
ValidateRepo. Also update the README with the correct message sequence.
2024-06-30 16:59:24 +01:00
68005d757d
fix: start validating repo after registering webhook
...
Clone Repo wasn't sending the second message, so workaround: have it be
sent after registering the webhook.
2024-06-30 16:54:26 +01:00
55d8ccb0bd
feat: ignore github ping webhook messages
...
Closes kemitix/git-next#101
2024-06-30 15:20:00 +01:00
8fceafc3e1
refactor: repo-actor: replace Mutex with RwLock
2024-06-30 13:17:33 +01:00
73b416e3a0
refactor: git: replace Mutex with RwLock in Repository
2024-06-30 13:14:50 +01:00