9b211179bf
feat(server): extract Server actor
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-07 18:59:51 +01:00
96994f2390
chore: fix typo
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-07 18:59:51 +01:00
da5bc69508
feat(server): avoid duplicate messages being passed for repo actor
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-05-05 08:30:01 +01:00
2c5f497be2
feat(server): remove redundant call to register webhook
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-05 07:39:39 +01:00
709fde18d1
chore(logging): more cleaning up of logging around fetch and reset
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
2024-05-04 19:57:50 +01:00
7516ec1dc1
chore(logging): clean up and reformat logging
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-04 19:41:53 +01:00
5ba5a126c3
fix(gitforge): use local repo or clone to allow git push
...
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/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline failed
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
31ef0c19fb
feat(config): use specified gitdir when supplied
...
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/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
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
bb67b7c66d
feat(gitforge): clone repo in-process
...
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline failed
Use the `gix` crate directly to create the clone rather then spawning a
`git` processess.
Closes kemitix/git-next#54
Closes kemitix/git-next#70
2024-04-28 18:01:11 +01:00
e357da4346
chore(deps): update kxio to v1.1.0
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline failed
ci/woodpecker/push/push-next Pipeline failed
2024-04-28 16:53:02 +01:00
ff6e61b0ee
feat: validate repo if it already exists
...
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/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
Closes kemitix/git-next#60
2024-04-25 19:41:41 +01:00
7b46045737
feat: impl Deref for GitDir
ci/woodpecker/push/push-next Pipeline is pending
ci/woodpecker/push/tag-created Pipeline is pending
ci/woodpecker/push/cron-docker-builder Pipeline failed
2024-04-25 16:01:24 +01:00
555aada7e9
fix( #61 ): Format path to clone into correctly
...
ci/woodpecker/cron/cron-docker-builder Pipeline failed
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/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
Closes kemitix/git-next#61
`GitDir` was being inserted into the command string as
"GitDir(\"data/default/foo\")".
2024-04-23 18:58:07 +01:00
3dfbd44b37
refactor: rename forge as forge_config
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline failed
ci/woodpecker/push/push-next Pipeline failed
2024-04-23 16:14:13 +01:00
17f5f62e61
feat: Clone repo when starting repo
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline failed
2024-04-23 07:41:39 +01:00
fc1c79620c
refactor: rename name to forge_name for consistency
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-04-23 06:53:34 +01:00
8b56a185d3
refactor: rename name to repo_alias for consistency
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
2024-04-23 06:50:52 +01:00
32d54cfc1c
refactor: rename config variables,etc as repo_config
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-04-21 19:36:37 +01:00
ee8b1e9fce
fix(config): deserialise gitdir as PathBuf, but expose it as GitDir
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-04-21 19:33:42 +01:00
b71aece8c9
feat: add gitdir to RepoDetails type
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-04-21 18:50:30 +01:00
a024c3de5e
feat: use GitDir in place of raw PathBuf
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
2024-04-21 18:47:07 +01:00
56e253b545
feat(config): add GitDir type
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
2024-04-21 18:38:47 +01:00
e10561f853
refactor(server/config): move tests into their own file
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-04-21 18:24:14 +01:00
18143c17fd
refactor: use 'repo_path' use consistently
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-04-20 21:03:17 +01:00
1170510c44
refactor: use 'server_repo_config' consistently
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-04-20 21:03:12 +01:00
91870055b0
feat(gitforge): Add ability to clone a repo
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
Closes kemitix/git-next#56
2024-04-19 19:31:25 +01:00
16dc823f58
feat(config): User must specify a directory to store data
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
Closes kemitix/git-next#55
2024-04-19 18:49:03 +01:00
704853017b
feat(config): User can specify git directory to use for a repo
...
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
Closes kemitix/git-next#53
Does not include using this information.
2024-04-19 18:38:21 +01:00
50a969ede6
refactor: move server config loading out of forgejo module
...
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/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
Delete empty modules left over
2024-04-18 20:40:28 +01:00
0bfa1df875
refactor: delete dead code
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-04-18 19:19:10 +01:00
0d57ee7bc0
refactor(gitforge): migrate some types from forge
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-04-18 19:18:27 +01:00
adb44d18c9
feat(server/gitforge): replace git abstraction
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-04-18 08:22:55 +01:00
ec9571a182
feat(repo/webhook): Replace webhook if it already exists
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
Closes kemitix/git-next#45
2024-04-15 22:47:54 +01:00
64a6b84ee4
feat(server/webhook): only accept authorised messages
...
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
Closes kemitix/git-next#47
2024-04-14 19:14:44 +01:00
b398ac3fd3
feat(repo/status): reschedule ValidateRepo when checks are Pending
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
Closes kemitix/git-next#48
2024-04-14 19:14:44 +01:00
24cb485410
feat(repo/webhook): Handle messages received via webhook for ForgeJo
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
Closes kemitix/git-next#43
2024-04-14 19:14:38 +01:00
dd91aa4f69
feat(server/webhook): implement register webhook
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline failed
Closes kemitix/git-next#15
2024-04-14 14:37:55 +01:00
e7060800eb
feat(server/webhook): implement unregister webhook
...
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#17
2024-04-13 21:01:35 +01:00
df2d9d684c
feat(server/webhook): add webhook server
...
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline failed
Closes kemitix/git-next#18
2024-04-13 20:23:24 +01:00
4c4ac4df25
fix(repo/branch): revalidate positions in more conditions
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
- when next has no commits
- when couldn't reset next to a commit (e.g. commit was WIP)
2024-04-13 16:23:02 +01:00
0622e6092b
feat(repo/branch): update next branch when not based on main
...
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
Closes kemitix/git-next#41
2024-04-13 15:26:45 +01:00
2055421067
refactor(repo/branch): extract get_commit_histories
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
2024-04-13 15:22:23 +01:00
069b313fc3
feat(config)!: Add webhook URL field to server config
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-04-13 14:09:57 +01:00
b21b80881e
chore(config): Rename type RepoName
as RepoAlias
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
Closes kemitix/git-next#39
2024-04-13 14:09:57 +01:00
0105631e3a
feat(config): Allow repo config to be specified in server config
...
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#28
2024-04-13 14:09:57 +01:00
229d47f7c7
docs(server/config): add docs to types
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
2024-04-13 14:09:57 +01:00
e272ca296b
fix(actor/repo): always reschedule to validate repos
...
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
If validate repos saw anything unexpected it would stop and not schedule a re-validation.
2024-04-13 07:05:40 +01:00
af221f8a2f
fix(forge/mock): visibility on methods
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-04-13 06:56:11 +01:00
3bbe9abbd9
test: Create stub mock forge
...
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
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
Still need to figure out what tests this will need to support, and how
to configure it's behaviour. I've not ruled out creating a forge object
that is passed in rather than the functions we have now.
Closes kemitix/git-next#37
2024-04-12 22:43:19 +01:00
1ffa8366e0
feat: isolate ForgeJo behind default feature 'forgejo'
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/push-next Pipeline was successful
2024-04-12 20:53:55 +01:00