MCPcopy
hub / github.com/AlistGo/alist / Init

Method Init

drivers/github/driver.go:48–128  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

46}
47
48func (d *Github) Init(ctx context.Context) error {
49 d.RootFolderPath = utils.FixAndCleanPath(d.RootFolderPath)
50 if d.CommitterName != "" && d.CommitterEmail == "" {
51 return errors.New("committer email is required")
52 }
53 if d.CommitterName == "" && d.CommitterEmail != "" {
54 return errors.New("committer name is required")
55 }
56 if d.AuthorName != "" && d.AuthorEmail == "" {
57 return errors.New("author email is required")
58 }
59 if d.AuthorName == "" && d.AuthorEmail != "" {
60 return errors.New("author name is required")
61 }
62 var err error
63 d.mkdirMsgTmpl, err = template.New("mkdirCommitMsgTemplate").Parse(d.MkdirCommitMsg)
64 if err != nil {
65 return err
66 }
67 d.deleteMsgTmpl, err = template.New("deleteCommitMsgTemplate").Parse(d.DeleteCommitMsg)
68 if err != nil {
69 return err
70 }
71 d.putMsgTmpl, err = template.New("putCommitMsgTemplate").Parse(d.PutCommitMsg)
72 if err != nil {
73 return err
74 }
75 d.renameMsgTmpl, err = template.New("renameCommitMsgTemplate").Parse(d.RenameCommitMsg)
76 if err != nil {
77 return err
78 }
79 d.copyMsgTmpl, err = template.New("copyCommitMsgTemplate").Parse(d.CopyCommitMsg)
80 if err != nil {
81 return err
82 }
83 d.moveMsgTmpl, err = template.New("moveCommitMsgTemplate").Parse(d.MoveCommitMsg)
84 if err != nil {
85 return err
86 }
87 d.client = base.NewRestyClient().
88 SetHeader("Accept", "application/vnd.github.object+json").
89 SetHeader("X-GitHub-Api-Version", "2022-11-28").
90 SetLogger(log.StandardLogger()).
91 SetDebug(false)
92 token := strings.TrimSpace(d.Token)
93 if token != "" {
94 d.client = d.client.SetHeader("Authorization", "Bearer "+token)
95 }
96 if d.Ref == "" {
97 repo, err := d.getRepo()
98 if err != nil {
99 return err
100 }
101 d.Ref = repo.DefaultBranch
102 d.isOnBranch = true
103 } else {
104 _, err = d.getBranchHead()
105 d.isOnBranch = err == nil

Callers

nothing calls this directly

Calls 7

getRepoMethod · 0.95
getBranchHeadMethod · 0.95
getAuthenticatedUserMethod · 0.95
FixAndCleanPathFunction · 0.92
NewRestyClientFunction · 0.92
loadPrivateKeyFunction · 0.85
SetHeaderMethod · 0.80

Tested by

no test coverage detected