Commit graph

55 commits

Author SHA1 Message Date
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
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
4276964f4d refactor: split server storage creation out from startup
Closes kemitix/git-next#75
2024-07-11 19:18:50 +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
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
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
0fd33739c1 refactor: server: collapse tests to base of crate 2024-06-29 11:16:46 +01:00
113192042b refactos: extract server-actor crate 2024-06-29 11:14:09 +01:00
52d442f2b0 refactor: extract file-watcher-actor crate 2024-06-29 10:57:18 +01:00
2008afa4dd refactor: extract actor-macros crate 2024-06-29 10:49:12 +01:00
eba00a112f refactor: extract webhook actor 2024-06-29 08:25:16 +01:00
ffab1986a7 refactor: repo-actor: rewrite tests using mockall 2024-06-27 18:58:47 +01:00
2cdaf39c0f refactor: git: use newtype 2024-06-20 19:06:24 +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
e29c274aaf refactor: server: use thiserror 2024-06-03 20:34:01 +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
f10dc25aeb refactor: merge git::validate module into git::validation 2024-05-26 09:20:08 +01:00
639223fcaa refactor: improve consistency of use of git types 2024-05-23 16:19:28 +01:00
f2af849d0b refactor(forge): rename gitforge crate as forge 2024-05-23 16:04:38 +01:00
ebbb655bfc feat(server): config file watcher will respond to touch
You can now trigger a server reload by `touch`ing the
`git-next-server.toml` file.
2024-05-23 09:01:57 +01:00
db9b4220ee refactor: extract repo-actor and gitforge crates 2024-05-22 19:57:48 +01:00
df8ebc6af7 refactor(server): collapse type module into gitforge module 2024-05-21 19:47:01 +01:00
341dc97a51 refactor(git): add mock repository and tests
Repository is now behind an enum to allow selection of a mock Repsitory
for use in tests.
2024-05-21 19:47:01 +01:00
e5744e85ad fix(server): invalid webhook authorisations
Parameters had been passed in wrong order. Added strong types to prevent
a repeat.
2024-05-21 09:01:44 +01:00
c6c8dcedc5 feat(server): display expected auth in logs in invalid request 2024-05-20 07:46:23 +01:00
4977619c70 fix(server): don't use gix in server 2024-05-20 07:46:23 +01:00
f398fb3b6a feat(server/webhook): warn when message is dropped 2024-05-18 22:36:54 +01:00
9d0f2d1ba1 feat(server): don't log validation ok 2024-05-18 22:29:57 +01:00
ee83def127 feat(server): don't log individual internal messages 2024-05-18 22:26:44 +01:00
76472fa74a chore: remove unused dependency tempfile 2024-05-18 22:23:18 +01:00
6c06d63c57 chore: remove dependency pretty_assertions 2024-05-18 22:21:10 +01:00
d6ca6ea3b2 chore: remove dependency test-log 2024-05-18 22:20:07 +01:00
f1a6d5089b chore: remove unused dependency anyhow 2024-05-18 22:18:36 +01:00
f56ac321f4 chore: remove dependency on terrors 2024-05-18 22:16:17 +01:00
58e991b2b7 test(git): make repository more testable
Adds a layer around Repository to allow the use of a mock.

Mock has still to be implemented.
2024-05-18 20:37:03 +01:00
6757723b77 feat(server/webhook): log errors in webhook requests 2024-05-18 20:26:44 +01:00
446300e786 refactor(git): rename reset as push 2024-05-16 14:45:25 +01:00
d87af324d6 refactor(server): more derive_more replacing boilerplate 2024-05-16 06:46:03 +01:00
f8375ed1fc refactor(server/config): rename RepoConfigValidationError as Error
It is never referenced directly outside of this module.
2024-05-15 20:46:29 +01:00
eb7d14bc33 refactor(git): more derive_more replacing boilerplate 2024-05-15 20:40:25 +01:00
d70baa4350 refactor(config): more derive_more replacing boilerplate 2024-05-15 07:55:05 +01:00
ac3e1be261 test: add some tests 2024-05-14 07:59:31 +01:00