summaryrefslogtreecommitdiff
path: root/internal/cli/forge_client.go
blob: 4d8eb6043fc7602e158c4265dd3cbcb1421abf56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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
	}
}