4978400ece
refactor: use Option<&T> over &Option<T>
2024-07-23 20:38:58 +01:00
bcf57bc728
feat: dispatch NotifyUser messages to server for user (1/2)
2024-07-23 20:38:54 +01:00
c86d890c2c
feat: enable configuration of a webhook for receiving notifications
2024-07-23 20:38:29 +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
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
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
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
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
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
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
40c61fa9ff
test: add more debug tracing
2024-06-30 19:42:09 +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
52df2114e5
refactor: tests: repo-actor: use methods on RepoActorLog
2024-06-30 13:12:12 +01:00
3e137c6480
refactor: repo-actor: RepoActorLog: replace Mutex with RwLock
2024-06-30 12:40:17 +01:00
975c9e315c
fix: where repo config is in server should register webhook
2024-06-30 08:09:10 +01:00
0796df00d4
docs: fix typo
2024-06-30 08:00:51 +01:00
c571e9ee8d
refactor: CloneRepo use actor::do_send to send LoadConfigFromRepo
2024-06-30 07:55:55 +01:00
717cc8b0bc
refactor: update macro signatures and add documentation support
2024-06-29 18:26:19 +01:00
2008afa4dd
refactor: extract actor-macros crate
2024-06-29 10:49:12 +01:00
e585b07f6b
tests: repo-actor: add more tests
2024-06-29 07:01:26 +01:00
ffab1986a7
refactor: repo-actor: rewrite tests using mockall
2024-06-27 18:58:47 +01:00
94ad2c441c
refactor: create a RepositoryFactory trait
2024-06-20 18:28:01 +01:00
ea20afee12
refactor: config: use newtype
2024-06-19 08:16:54 +01:00
588666ffe1
tests: add more tests to git crate
2024-06-13 19:50:19 +01:00
dcd94736a9
refactor: git::push::reset takes all params as refs
2024-06-09 09:49:54 +01:00
c6a1d2c21b
refactor: merge git::branch module into git::push
2024-06-09 09:49:54 +01:00
235aee8b11
chore: remove unused dependencies
...
Identified using: cargo +nightly udeps --all-targets
2024-06-02 20:30:35 +01:00
98839c8a00
test: add more tests to forge crate
2024-06-01 12:03:30 +01:00
46b6d8680c
feat: Add support for GitHub
...
This doesn't include GitHub Enterprise
Closes kemitix/git-next#86
2024-05-31 07:23:48 +01:00
206e64cd5b
feat: Webhook query paths include forge alias
...
This allows for more than one forge to be configured and for the webhook
to correctly route incoming messages.
2024-05-29 19:35:50 +01:00
012668dd0a
refactor: move git::remote_branches to git crate
2024-05-28 06:37:08 +01:00
f259179274
refactor: move git::read_file implementation to git crate
2024-05-26 18:22:15 +01:00
d0638fdbc4
refactor: move repo_clone implementation to git crate
2024-05-26 13:30:46 +01:00
f10dc25aeb
refactor: merge git::validate module into git::validation
2024-05-26 09:20:08 +01:00
dd5532d3a3
refactor: move validate_positions into git crate
2024-05-26 09:20:05 +01:00
9e37c073c2
refactor(repo_actor): consitent use of config crate
2024-05-23 17:56:47 +01:00