Commit graph

58 commits

Author SHA1 Message Date
58b047cdb5 WIP: feat: configure a webhook for receiving notifications
All checks were successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-07-19 07:48:55 +01:00
b715755b91 feat: unregister webhooks form forge during shutdown
All checks were successful
Rust / build (push) Successful in 1m31s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
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
All checks were successful
Rust / build (push) Successful in 1m38s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
Closes kemitix/git-next#106
2024-07-14 20:58:58 +01:00
639e561be6 fix: move server-default.toml inside crate that uses it
All checks were successful
Rust / build (push) Successful in 1m33s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-07-14 20:22:32 +01:00
adf56c1b38 revert: fix: explicitly specify version in each crate
All checks were successful
Rust / build (push) Successful in 1m24s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
This reverts commit cd93d047cb.
2024-07-14 16:39:17 +01:00
cd93d047cb fix: explicitly specify version in each crate
All checks were successful
Rust / build (push) Successful in 1m23s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
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
All checks were successful
Rust / build (push) Successful in 2m2s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-07-14 13:32:07 +01:00
e410cfc4f1 chore: add license and descriptions for each crate
All checks were successful
Rust / build (push) Successful in 1m23s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-07-14 10:40:34 +01:00
fd762e2bd2 feat: perform controlled shutdown on ctrl-c
All checks were successful
Rust / build (push) Successful in 1m50s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
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
All checks were successful
Rust / build (push) Successful in 1m34s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
Closes kemitix/git-next#75
2024-07-11 19:18:50 +01:00
694135a10b fix: default log level is info
All checks were successful
Rust / build (push) Successful in 1m5s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
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
All checks were successful
Rust / build (push) Successful in 1m10s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
2024-07-03 07:42:11 +01:00
3dec12de20 refactor: cli don't depend directly on git crate
All checks were successful
Rust / build (push) Successful in 1m10s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-07-03 07:35:01 +01:00
dfc0c1dc80 refactor: only start actor system when server starts
All checks were successful
Rust / build (push) Successful in 1m27s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
2024-07-01 06:54:07 +01:00
77d35e8a09 feat: load log levels from env RUST_LOG
All checks were successful
Rust / build (push) Successful in 1m24s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-30 20:12:47 +01:00
0fd33739c1 refactor: server: collapse tests to base of crate
All checks were successful
Rust / build (push) Successful in 1m40s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-29 11:16:46 +01:00
113192042b refactos: extract server-actor crate
All checks were successful
Rust / build (push) Successful in 1m31s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-29 11:14:09 +01:00
52d442f2b0 refactor: extract file-watcher-actor crate
All checks were successful
Rust / build (push) Successful in 1m29s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-29 10:57:18 +01:00
2008afa4dd refactor: extract actor-macros crate
All checks were successful
Rust / build (push) Successful in 1m24s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-29 10:49:12 +01:00
eba00a112f refactor: extract webhook actor
All checks were successful
Rust / build (push) Successful in 1m19s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-29 08:25:16 +01:00
ffab1986a7 refactor: repo-actor: rewrite tests using mockall
Some checks failed
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
Rust / build (push) Has been cancelled
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-27 18:58:47 +01:00
2cdaf39c0f refactor: git: use newtype
All checks were successful
Rust / build (push) Successful in 1m39s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-20 19:06:24 +01:00
94ad2c441c refactor: create a RepositoryFactory trait
All checks were successful
Rust / build (push) Successful in 1m14s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-06-20 18:28:01 +01:00
ea20afee12 refactor: config: use newtype
Some checks failed
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
Rust / build (push) Has been cancelled
2024-06-19 08:16:54 +01:00
e29c274aaf refactor: server: use thiserror
All checks were successful
Rust / build (push) Successful in 2m15s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
2024-06-03 20:34:01 +01:00
46b6d8680c feat: Add support for GitHub
All checks were successful
Rust / build (push) Successful in 1m47s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
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
Some checks failed
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
Rust / build (push) Has been cancelled
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
Some checks failed
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
Rust / build (push) Has been cancelled
2024-05-26 09:20:08 +01:00
639223fcaa refactor: improve consistency of use of git types
All checks were successful
Rust / build (push) Successful in 1m10s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-23 16:19:28 +01:00
f2af849d0b refactor(forge): rename gitforge crate as forge
All checks were successful
Rust / build (push) Successful in 1m8s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-23 16:04:38 +01:00
ebbb655bfc feat(server): config file watcher will respond to touch
All checks were successful
Rust / build (push) Successful in 1m16s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
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
All checks were successful
Rust / build (push) Successful in 2m1s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-22 19:57:48 +01:00
df8ebc6af7 refactor(server): collapse type module into gitforge module
Some checks failed
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
Rust / build (push) Has been cancelled
2024-05-21 19:47:01 +01:00
341dc97a51 refactor(git): add mock repository and tests
All checks were successful
Rust / build (push) Successful in 1m7s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
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
All checks were successful
ci/woodpecker/tag/cron-docker-builder Pipeline was successful
ci/woodpecker/tag/push-next Pipeline was successful
ci/woodpecker/tag/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
Rust / build (push) Successful in 2m5s
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
All checks were successful
Rust / build (push) Successful in 1m43s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-20 07:46:23 +01:00
4977619c70 fix(server): don't use gix in server
All checks were successful
Rust / build (push) Successful in 1m35s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-20 07:46:23 +01:00
f398fb3b6a feat(server/webhook): warn when message is dropped
All checks were successful
Rust / build (push) Successful in 2m7s
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-05-18 22:36:54 +01:00
9d0f2d1ba1 feat(server): don't log validation ok
All checks were successful
Rust / build (push) Successful in 1m16s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-18 22:29:57 +01:00
ee83def127 feat(server): don't log individual internal messages
All checks were successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
Rust / build (push) Successful in 1m9s
2024-05-18 22:26:44 +01:00
76472fa74a chore: remove unused dependency tempfile
All checks were successful
Rust / build (push) Successful in 1m10s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-18 22:23:18 +01:00
6c06d63c57 chore: remove dependency pretty_assertions
All checks were successful
Rust / build (push) Successful in 1m11s
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-05-18 22:21:10 +01:00
d6ca6ea3b2 chore: remove dependency test-log
All checks were successful
Rust / build (push) Successful in 1m9s
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-05-18 22:20:07 +01:00
f1a6d5089b chore: remove unused dependency anyhow
All checks were successful
Rust / build (push) Successful in 1m17s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-18 22:18:36 +01:00
f56ac321f4 chore: remove dependency on terrors
All checks were successful
Rust / build (push) Successful in 1m15s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
2024-05-18 22:16:17 +01:00
58e991b2b7 test(git): make repository more testable
All checks were successful
Rust / build (push) Successful in 2m35s
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
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
Some checks failed
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
Rust / build (push) Has been cancelled
2024-05-18 20:26:44 +01:00
446300e786 refactor(git): rename reset as push
All checks were successful
Rust / build (push) Successful in 2m2s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-05-16 14:45:25 +01:00
d87af324d6 refactor(server): more derive_more replacing boilerplate
Some checks failed
/ test (push) Successful in 1s
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline failed
2024-05-16 06:46:03 +01:00
f8375ed1fc refactor(server/config): rename RepoConfigValidationError as Error
Some checks failed
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
/ test (push) Successful in 2s
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline failed
It is never referenced directly outside of this module.
2024-05-15 20:46:29 +01:00