From dcf90064e3671d4eccc5f0f59182a4afe23c95f9 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Thu, 28 May 2026 10:02:03 +0300 Subject: refactor(forge): unify repo lifecycle across GitHub and Codeberg (dq) --- internal/cli/forge_client.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 internal/cli/forge_client.go (limited to 'internal/cli/forge_client.go') diff --git a/internal/cli/forge_client.go b/internal/cli/forge_client.go new file mode 100644 index 0000000..4d8eb60 --- /dev/null +++ b/internal/cli/forge_client.go @@ -0,0 +1,21 @@ +package cli + +import ( + "codeberg.org/snonux/gitsyncer/internal/codeberg" + "codeberg.org/snonux/gitsyncer/internal/config" + "codeberg.org/snonux/gitsyncer/internal/forge" + "codeberg.org/snonux/gitsyncer/internal/github" +) + +func newRepoClientForOrg(org config.Organization) (forge.RepoClient, bool) { + switch { + case org.IsGitHub(): + client := github.NewClient(org.GitHubToken, org.Name) + return &client, true + case org.IsCodeberg(): + client := codeberg.NewClient(org.Name, org.CodebergToken) + return &client, true + default: + return nil, false + } +} -- cgit v1.2.3