package migrations import "code.gitea.io/sdk/gitea" // MigratoryStage represents the actual step in the process type MigratoryStage int const ( // Importing imports the repo to Gitea Importing MigratoryStage = iota // Migrating migrates issues, etc to Gitea Migrating // Finished means that everything is migrated successfully Finished // Failed is only entered if a fatal error occurs Failed ) // Migratory is the context for migrating things from GitHub to Gitea type Migratory struct { Options Client *gitea.Client Status *MigratoryStatus repository *gitea.Repository // key: github milestone id | value: gitea milestone id migratedMilestones map[int64]int64 // key: github label id | value: gitea label id migratedLabels map[int64]int64 } // MigratoryStatus represents the actual state of a migratory type MigratoryStatus struct { Stage MigratoryStage `json:"stage"` Issues int64 `json:"total_issues"` IssuesMigrated int64 `json:"migrated_issues"` IssuesError int64 `json:"failed_issues"` Comments int64 `json:"total_comments"` CommentsError int64 `json:"failed_comments"` CommentsMigrated int64 `json:"migrated_comments"` // FatalError should only be used if stage == failed; indicates which fatal error occurred FatalError error Log string `json:"log"` }