Commit graph

544 commits

Author SHA1 Message Date
43c6e812dc chore: Release 0.9.0 2024-07-12 19:04:39 +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
425241196d chore: local dev used debug logging 2024-07-06 14:23:04 +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
56756cab70 chore: bacon treats clippy warnings as errors 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
6a8d1bf817 docs: add roadmap to readme 2024-07-05 18:55:36 +01:00
f61c556f5b chore: bump docker runtime os image 2024-07-05 07:58:53 +01:00
6bbc89490a build: pin versions for docker base images 2024-07-05 07:54:43 +01:00
cbf6c3b73c chore: lint fix for Dockerfile
>  2 warnings found (use --debug to expand):
> - FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 6)
> - FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line
11)
2024-07-05 07:46:45 +01:00
b0be0f636c chore: Release 0.8.1 2024-07-05 07:26:42 +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
2483e85196 docs: update installation instructions 2024-07-05 07:10:07 +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
6c24a36476 docs: minor updates to README 2024-07-04 19:04:02 +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
007a5bd13c chore: clean up footer of readme 2024-07-03 07:32:12 +01:00
209b29d217 fix: typos in mermaid diagram 2024-07-03 07:30:17 +01:00
99d8672f55 fix: mermaid diagram syntax 2024-07-03 07:29:02 +01:00
90420052cf docs: update crate interdependence graph 2024-07-03 07:16:08 +01:00
8beef49b3e chore: Release 0.8.0 2024-07-02 19:00:51 +01:00
d0c731fc01 chore: set default logging lever back to info 2024-07-02 18:53:05 +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
7fdea2913a chore: don't treat clippy warnings as errors 2024-07-02 18:29:52 +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
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
db90280641 fix: github: restarting server creates duplicate webhook for repo
The Github routine for registering a new webhook, wasn't removing any
existing matching webhooks. There is a test for this, but it doesn't
assert that the delete requests are made. (This is a limitation of
kxio).

Closes kemitix/git-next#102
2024-06-30 12:23:42 +01:00