Платформа ЦРНП "Мирокод" для разработки проектов
https://git.mirocod.ru
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
2.0 KiB
74 lines
2.0 KiB
// Copyright 2019 The Gitea Authors. All rights reserved. |
|
// Use of this source code is governed by a MIT-style |
|
// license that can be found in the LICENSE file. |
|
|
|
package migrations |
|
|
|
import ( |
|
"code.gitea.io/gitea/modules/migrations/base" |
|
) |
|
|
|
var ( |
|
_ base.Downloader = &PlainGitDownloader{} |
|
) |
|
|
|
// PlainGitDownloader implements a Downloader interface to clone git from a http/https URL |
|
type PlainGitDownloader struct { |
|
ownerName string |
|
repoName string |
|
remoteURL string |
|
} |
|
|
|
// NewPlainGitDownloader creates a git Downloader |
|
func NewPlainGitDownloader(ownerName, repoName, remoteURL string) *PlainGitDownloader { |
|
return &PlainGitDownloader{ |
|
ownerName: ownerName, |
|
repoName: repoName, |
|
remoteURL: remoteURL, |
|
} |
|
} |
|
|
|
// GetRepoInfo returns a repository information |
|
func (g *PlainGitDownloader) GetRepoInfo() (*base.Repository, error) { |
|
// convert github repo to stand Repo |
|
return &base.Repository{ |
|
Owner: g.ownerName, |
|
Name: g.repoName, |
|
CloneURL: g.remoteURL, |
|
}, nil |
|
} |
|
|
|
// GetTopics returns empty list for plain git repo |
|
func (g *PlainGitDownloader) GetTopics() ([]string, error) { |
|
return []string{}, nil |
|
} |
|
|
|
// GetMilestones returns milestones |
|
func (g *PlainGitDownloader) GetMilestones() ([]*base.Milestone, error) { |
|
return nil, ErrNotSupported |
|
} |
|
|
|
// GetLabels returns labels |
|
func (g *PlainGitDownloader) GetLabels() ([]*base.Label, error) { |
|
return nil, ErrNotSupported |
|
} |
|
|
|
// GetReleases returns releases |
|
func (g *PlainGitDownloader) GetReleases() ([]*base.Release, error) { |
|
return nil, ErrNotSupported |
|
} |
|
|
|
// GetIssues returns issues according page and perPage |
|
func (g *PlainGitDownloader) GetIssues(page, perPage int) ([]*base.Issue, bool, error) { |
|
return nil, false, ErrNotSupported |
|
} |
|
|
|
// GetComments returns comments according issueNumber |
|
func (g *PlainGitDownloader) GetComments(issueNumber int64) ([]*base.Comment, error) { |
|
return nil, ErrNotSupported |
|
} |
|
|
|
// GetPullRequests returns pull requests according page and perPage |
|
func (g *PlainGitDownloader) GetPullRequests(start, limit int) ([]*base.PullRequest, error) { |
|
return nil, ErrNotSupported |
|
}
|
|
|