mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 11:28:24 +00:00 
			
		
		
		
	Gitea 2 Gitea migration (#12657)
* first draft
* update gitea sdk to 9e280adb4da
* adapt feat of updated sdk
* releases now works
* break the Reactions loop
* use convertGiteaLabel
* fix endless loop because paggination is not supported there !!!
* rename gitea local uploader files
* pagination can bite you in the ass
* Version Checks
* lint
* docs
* rename gitea sdk import to miss future conficts
* go-swagger: dont scan the sdk structs
* make sure gitea can shutdown gracefully
* make GetPullRequests and GetIssues similar
* rm useles
* Add Test: started ...
* ... add tests ...
* Add tests and Fixing things
* Workaround missing SHA
* Adapt: Ensure that all migration requests are cancellable
(714ab71ddc)
* LINT: fix misspells in test set
* adapt ListMergeRequestAwardEmoji
* update sdk
* Return error when creating giteadownloader failed
* update sdk
* adapt new sdk
* adopt new features
* check version before err
* adapt: 'migrate service type switch page'
* optimize
* Fix DefaultBranch
* impruve
* handle subPath
* fix test
* Fix ReviewCommentPosition
* test GetReviews
* add DefaultBranch int test set
* rm unused
* Update SDK to v0.13.0
* addopt sdk changes
* found better link
* format template
* Update Docs
* Update Gitea SDK (v0.13.1)
			
			
This commit is contained in:
		| @@ -15,7 +15,7 @@ import ( | ||||
|  | ||||
| // AssetDownloader downloads an asset (attachment) for a release | ||||
| type AssetDownloader interface { | ||||
| 	GetAsset(tag string, id int64) (io.ReadCloser, error) | ||||
| 	GetAsset(relTag string, relID, id int64) (io.ReadCloser, error) | ||||
| } | ||||
|  | ||||
| // Downloader downloads the site repo informations | ||||
| @@ -29,7 +29,7 @@ type Downloader interface { | ||||
| 	GetLabels() ([]*Label, error) | ||||
| 	GetIssues(page, perPage int) ([]*Issue, bool, error) | ||||
| 	GetComments(issueNumber int64) ([]*Comment, error) | ||||
| 	GetPullRequests(page, perPage int) ([]*PullRequest, error) | ||||
| 	GetPullRequests(page, perPage int) ([]*PullRequest, bool, error) | ||||
| 	GetReviews(pullRequestNumber int64) ([]*Review, error) | ||||
| } | ||||
|  | ||||
| @@ -209,23 +209,24 @@ func (d *RetryDownloader) GetComments(issueNumber int64) ([]*Comment, error) { | ||||
| } | ||||
|  | ||||
| // GetPullRequests returns a repository's pull requests with retry | ||||
| func (d *RetryDownloader) GetPullRequests(page, perPage int) ([]*PullRequest, error) { | ||||
| func (d *RetryDownloader) GetPullRequests(page, perPage int) ([]*PullRequest, bool, error) { | ||||
| 	var ( | ||||
| 		times = d.RetryTimes | ||||
| 		prs   []*PullRequest | ||||
| 		err   error | ||||
| 		isEnd bool | ||||
| 	) | ||||
| 	for ; times > 0; times-- { | ||||
| 		if prs, err = d.Downloader.GetPullRequests(page, perPage); err == nil { | ||||
| 			return prs, nil | ||||
| 		if prs, isEnd, err = d.Downloader.GetPullRequests(page, perPage); err == nil { | ||||
| 			return prs, isEnd, nil | ||||
| 		} | ||||
| 		select { | ||||
| 		case <-d.ctx.Done(): | ||||
| 			return nil, d.ctx.Err() | ||||
| 			return nil, false, d.ctx.Err() | ||||
| 		case <-time.After(time.Second * time.Duration(d.RetryDelay)): | ||||
| 		} | ||||
| 	} | ||||
| 	return nil, err | ||||
| 	return nil, false, err | ||||
| } | ||||
|  | ||||
| // GetReviews returns pull requests reviews | ||||
|   | ||||
| @@ -23,4 +23,5 @@ type Issue struct { | ||||
| 	Closed      *time.Time | ||||
| 	Labels      []*Label | ||||
| 	Reactions   []*Reaction | ||||
| 	Assignees   []string | ||||
| } | ||||
|   | ||||
| @@ -31,7 +31,6 @@ type PullRequest struct { | ||||
| 	MergeCommitSHA string | ||||
| 	Head           PullRequestBranch | ||||
| 	Base           PullRequestBranch | ||||
| 	Assignee       string | ||||
| 	Assignees      []string | ||||
| 	IsLocked       bool | ||||
| 	Reactions      []*Reaction | ||||
|   | ||||
| @@ -15,6 +15,7 @@ type ReleaseAsset struct { | ||||
| 	DownloadCount *int | ||||
| 	Created       time.Time | ||||
| 	Updated       time.Time | ||||
| 	DownloadURL   *string | ||||
| } | ||||
|  | ||||
| // Release represents a release | ||||
|   | ||||
| @@ -12,8 +12,6 @@ type Repository struct { | ||||
| 	IsPrivate     bool | ||||
| 	IsMirror      bool | ||||
| 	Description   string | ||||
| 	AuthUsername  string | ||||
| 	AuthPassword  string | ||||
| 	CloneURL      string | ||||
| 	OriginalURL   string | ||||
| 	DefaultBranch string | ||||
|   | ||||
| @@ -36,6 +36,7 @@ type ReviewComment struct { | ||||
| 	TreePath  string | ||||
| 	DiffHunk  string | ||||
| 	Position  int | ||||
| 	Line      int | ||||
| 	CommitID  string | ||||
| 	PosterID  int64 | ||||
| 	Reactions []*Reaction | ||||
|   | ||||
		Reference in New Issue
	
	Block a user