Commit graph

351 commits

Author SHA1 Message Date
ab58981f87 refactor: reuse branch::reset to advance main branch to next 2024-04-11 17:45:11 +01:00
115b353389 feat: Force push next branch to main when it isn't a dev ancestor
Closes kemitix/git-next#21
2024-04-11 15:48:18 +01:00
d2d49f353c refactor: pass RepoDetails by reference 2024-04-11 15:47:28 +01:00
ed1ab6faa5 feat: add branch::reset function 2024-04-11 14:24:18 +01:00
1c9f7cb4ea fix: clean up instrumentation 2024-04-11 07:46:30 +01:00
7dab1da44b fix(server): reduce complexity of StartMonitoring handler
Closes kemitix/git-next#25
2024-04-11 07:15:19 +01:00
9469d27476 fix(server): Pause before checking CI status when just updated branch
If we check the status of the commit as soon as we push we get a Pass before the CI tests have even started. Wait briefly (10 seconds) to allow the CI to start and set the status to pending.

Closes kemitix/git-next#24
2024-04-10 22:40:33 +01:00
50a56aadee fix(server): Doesn't properly detect when dev or next are ahead
Closes kemitix/git-next#23
2024-04-10 20:51:40 +01:00
3a761b5b21 feat(server): Implement advancing main branch to the next commit
Closes kemitix/git-next#19
2024-04-10 17:36:08 +01:00
98a94ea855 Implement advancing next branch to next commit on dev branch
Uses gix to invoke git commands as there is not API to directly update
the position of a branch.

Closes kemitix/git-next#14
2024-04-10 15:54:50 +01:00
a5e9421405 feat(server): implement forge::forgejo::get_commit_history
Closes kemitix/git-next#13
2024-04-10 11:48:24 +01:00
e27b050a09 feat(server): log returned status for next branch 2024-04-10 11:47:14 +01:00
5c4b745c00 feat(server): add marker info logs for advance main and next 2024-04-10 11:46:51 +01:00
0b85ac3f8d refactor(server): inline console_subscriber 2024-04-10 11:40:42 +01:00
0721b63448 fix(server): stop logging all network requests 2024-04-10 11:40:06 +01:00
d64024e1ab feat(server): implement Display for forge::Commit 2024-04-10 10:54:41 +01:00
546d91554c feat(server): next commit status is returned as pass, fail ro pending 2024-04-10 09:17:44 +01:00
79d0b2ff75 chore(deps): switch kxio back to released version
kxio v0.1.1 has been released
2024-04-10 07:37:06 +01:00
cd18dbe781 build(woodpecker): restore dropped cargo build
Also merge lint and build steps
2024-04-10 07:24:38 +01:00
c66170c3b4 feat(server): implement repo::status::check_next 2024-04-10 07:13:55 +01:00
a7a3f8a67b feat(server): add stub for forge::forgejo::get_commit_status 2024-04-10 07:13:55 +01:00
ca30d1bd11 build(woodpecker): merge and rename jobs
build(woodpecker): only run checks against next branch

Merges todo-check into main job.
Rename file build as push-next
Run lint ahead of build

build(woodpecker): rename builder as cron-docker-builder

build(woodpecker): merge release and docker into tag-created
2024-04-10 07:13:11 +01:00
8ad84bc72b feat(server): add deserialise types for commit status 2024-04-10 06:56:00 +01:00
ad7d513481 feat(server): add message and handler for AdvanceMainTo(Commit) 2024-04-10 06:55:58 +01:00
7ed30fc382 feat(server): add stub for branch::advance_main 2024-04-10 06:55:55 +01:00
0b5c91fedb build(woodpecker): split updating docker builder into seperate job
Closes kemitix/git-next#7
2024-04-09 22:19:34 +01:00
70e0f94042 feat(server): Assess next action for repo 2024-04-09 22:19:33 +01:00
cdaca8258d build(woodpecker): run checks against next branch too 2024-04-09 19:35:26 +01:00
3203bbd967 feat(server): validate branch head positions 2024-04-09 18:18:19 +01:00
9eb7660f7b feat(server/forgejo): fetch commit histories 2024-04-09 18:15:19 +01:00
bdea942bcb feat(server): create stub for validating branch positions 2024-04-09 15:31:59 +01:00
ca37045e3a feat(server/forgejo): verify branches exist in repo 2024-04-09 14:52:12 +01:00
b093c002d4 feat(server/forgejo): load repo config 2024-04-09 11:09:07 +01:00
a7a64f5a07 chore(git-next): add config file 2024-04-09 11:00:29 +01:00
25a1886e94 feat(init): define default repo config 2024-04-09 10:56:15 +01:00
acb3fc6898 chore(deps): add base64 dependency 2024-04-09 10:05:34 +01:00
3af5e3d8cd chore(deps): temp use local copy of kxio while firming up it's API 2024-04-09 10:05:07 +01:00
f255c44dfa feat: Replace own filesystem module with kxio lib
The filesystem, and the intended network module have been extracted into
their own library as they are used by more than one project, so they can
now be developed independently and updates shared.

Closes kemitix/git-next#9
2024-04-09 07:41:41 +01:00
8a66b46acc chore(deps): Add kxio dependency 2024-04-09 07:41:41 +01:00
7e08640743 refactor(server): reduce complexity starting server 2024-04-09 07:41:41 +01:00
1b0c09d3fe build(woodpecker): don't run todo checker on cron 2024-04-08 20:32:10 +01:00
d2e0a7ce8c build(woodpecker): don't specify patch level for todo checker 2024-04-08 20:32:10 +01:00
e863f4ad4a docs(license): update copyright name 2024-04-08 20:32:10 +01:00
a1484939ab config(server): add token field to Forge 2024-04-08 12:09:29 +01:00
aaaa975911 refactor(config): compare whole server config in one go 2024-04-08 12:09:29 +01:00
be01d106a4 feat(config): use accesors for hostname and user 2024-04-08 12:09:29 +01:00
3c4a0d52b1 feat(config): Add ApiToken newtype 2024-04-08 11:50:10 +01:00
abbd2e66e6 feat(actors/repo): add RepoActor::new 2024-04-08 11:34:07 +01:00
c3f2266dc1 feat(config): Parse RepoConfig 2024-04-08 11:34:07 +01:00
d5e9b14e3d refactor(config): rename Config as ServerConfig 2024-04-08 08:33:46 +01:00