Commit graph

623 commits

Author SHA1 Message Date
b7416c7434 chore(justfile): add coverage recipe 2024-05-17 18:49:00 +01:00
e3205af094 docs(readme): add msrv and some formatting 2024-05-17 18:40:07 +01:00
2cefe07a80 docs(readme): Add prerequisits 2024-05-17 18:32:55 +01:00
4924e9b3f0 docs(readme): remove build status badge from woodpecker 2024-05-17 07:38:19 +01:00
38f236fc37 build(woodpecker): remove redundant build of a builder images
Now that the push-next job is using the forgejo action, it no longer
needs this builder image.
2024-05-17 07:37:11 +01:00
29c03b936d build(forgejo): use rust action 2024-05-17 07:26:07 +01:00
c90aef3796 build(woodpecker): remove build_and_lint and test from push-next
These are now handled by the forgejo actions job push-next.
2024-05-16 14:53:03 +01:00
446300e786 refactor(git): rename reset as push 2024-05-16 14:45:25 +01:00
8107411935 build(forgejo): drop action based on builder 2024-05-16 13:48:05 +01:00
0f7d1a8d42 build(forgejo): add push-next job
Has both on-docker and on-builder variants while I workout which I can
get to work.
2024-05-16 13:44:05 +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
d909d427c7 build(forgejo): triger action 2024-05-15 20:14:17 +01:00
45e172e181 build(foregjo): add demo action 2024-05-15 20:09:36 +01:00
d70baa4350 refactor(config): more derive_more replacing boilerplate 2024-05-15 07:55:05 +01:00
c374076323 refactor(git): more use of derive_more 2024-05-14 16:28:21 +01:00
ac3e1be261 test: add some tests 2024-05-14 07:59:31 +01:00
a7e7d12928 test(cli): add tests 2024-05-14 07:58:28 +01:00
a4694d48f6 refactor(config): replace boilerplate with derive_more 2024-05-13 21:03:33 +01:00
c7c95a5750 build(docker): install git 2024-05-13 21:03:33 +01:00
1e38330914 feat(git): add git_dir value to error when reset fails 2024-05-13 19:09:11 +01:00
e34d5c2c2c build(docker): clean up and update debian version 2024-05-12 18:35:47 +01:00
4d352f005d refactor(server,config,git): extract modules config and git from server 2024-05-12 10:49:33 +01:00
740419ffb8 refactor: specify server dependency in workspace 2024-05-11 19:29:38 +01:00
87c762c59a chore: clean up dependencies for split crates 2024-05-11 19:14:06 +01:00
a8eedfcac5 fix: clippy fixes for tests 2024-05-11 18:58:47 +01:00
3a112ddd8b refactor: extract server crate 2024-05-11 18:57:18 +01:00
834dff4370 chore: convert project into a cargo workspace 2024-05-11 16:33:18 +01:00
1cd56d953e feat(server): allow specifying id address and port to bind to
Closes kemitix/git-next#44
2024-05-10 22:02:08 +01:00
daa40e7621 refactor(server): extract Repository::open and clone 2024-05-10 10:11:34 +01:00
62bee38c85 feat(server): use cached Repository from RepoActor 2024-05-10 10:10:43 +01:00
992821d563 feat(server): cache Repository in RepoActor 2024-05-09 21:18:40 +01:00
b7aa417831 feat(server): include repo in missing handler logs
Closes kemitix/git-next#78
2024-05-09 20:40:56 +01:00
e8062788a0 feat(server): extract git::reset from gitforge::forgejo 2024-05-09 18:48:06 +01:00
e5a8051a31 feat(server): reload .git-next.toml from repo when main branch updated
Only does this if the repo config (i.e. the main, next and dev branches) are detailed in the
.git-next.toml file within the repo, rather than in the git-next-server.toml file.

Closes kemitix/git-next#74
2024-05-08 07:37:08 +01:00
ec2ebe70cf feat(server): Don't load config from repo if repo config is in server config
Closes kemitix/git-next#77
2024-05-08 07:14:14 +01:00
6d147efe32 feat(server): restart server when config file is updated
Closes kemitix/git-next#59
2024-05-07 20:10:41 +01:00
7e79f4877a fix(server): don't try to reset next when dev is not based on main 2024-05-07 18:59:51 +01:00
b1638a65fc feat(server): give Server an incremental generation counter 2024-05-07 18:59:51 +01:00
9b211179bf feat(server): extract Server actor 2024-05-07 18:59:51 +01:00
96994f2390 chore: fix typo 2024-05-07 18:59:51 +01:00
Renovate Bot
60f91b91df chore(deps): update docker.io/woodpeckerci/plugin-docker-buildx docker tag to v4 2024-05-07 10:47:30 +00:00
da5bc69508 feat(server): avoid duplicate messages being passed for repo actor 2024-05-05 08:30:01 +01:00
2c5f497be2 feat(server): remove redundant call to register webhook 2024-05-05 07:39:39 +01:00
709fde18d1 chore(logging): more cleaning up of logging around fetch and reset 2024-05-04 19:57:50 +01:00
7516ec1dc1 chore(logging): clean up and reformat logging 2024-05-04 19:41:53 +01:00
5ba5a126c3 fix(gitforge): use local repo or clone to allow git push
The `git push` command requires a git directory (bare at a minimum)
before it can work.
The git dir must also be up-to-date with the relevant references from
the remote, so
we do a `git fetch` before a `git push`.

Closes kemitix/git-next#51
2024-05-03 19:08:58 +01:00
d42c8fb890 build(cargo): specify clippy flags in Cargo.toml
Avoids needing to pass them as parameters whenever we run cargo clippy.
2024-05-02 18:52:10 +01:00
31ef0c19fb feat(config): use specified gitdir when supplied
The user can specify a gitdir for a repo in the `git-next-server.toml` file.
When they do, then we should use that directory.

Closes kemitix/git-next#71
2024-04-29 06:52:50 +01:00