tasks

package
v0.0.0-...-7d3b672 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 13, 2023 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const RAW_COMMENTS_TABLE = "gitee_issue_comments"
View Source
const RAW_COMMIT_STATS_TABLE = "gitee_api_commit_stats"
View Source
const RAW_COMMIT_TABLE = "gitee_api_commit"
View Source
const RAW_ISSUE_TABLE = "gitee_api_issues"
View Source
const RAW_PULL_REQUEST_COMMIT_TABLE = "gitee_api_pull_request_commits"
View Source
const RAW_PULL_REQUEST_REVIEW_TABLE = "gitee_api_pull_request_reviews"

gitee

View Source
const RAW_PULL_REQUEST_TABLE = "gitee_api_pull_requests"
View Source
const RAW_REPOSITORIES_TABLE = "gitee_api_repos"

Variables

View Source
var CollectApiCommitStatsMeta = plugin.SubTaskMeta{
	Name:             "collectApiCommitStats",
	EntryPoint:       CollectApiCommitStats,
	EnabledByDefault: false,
	Description:      "Collect commitStats data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE},
}
View Source
var CollectApiIssueCommentsMeta = plugin.SubTaskMeta{
	Name:             "collectApiIssueComments",
	EntryPoint:       CollectApiIssueComments,
	EnabledByDefault: true,
	Description:      "Collect comments data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
}
View Source
var CollectApiIssuesMeta = plugin.SubTaskMeta{
	Name:             "collectApiIssues",
	EntryPoint:       CollectApiIssues,
	EnabledByDefault: true,
	Description:      "Collect issues data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
}
View Source
var CollectApiPullRequestCommitsMeta = plugin.SubTaskMeta{
	Name:             "collectApiPullRequestCommits",
	EntryPoint:       CollectApiPullRequestCommits,
	EnabledByDefault: true,
	Description:      "Collect PullRequestCommits data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var CollectApiPullRequestReviewsMeta = plugin.SubTaskMeta{
	Name:             "collectApiPullRequestReviews",
	EntryPoint:       CollectApiPullRequestReviews,
	EnabledByDefault: true,
	Description:      "Collect PullRequestReviews data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var CollectApiPullRequestsMeta = plugin.SubTaskMeta{
	Name:             "collectApiPullRequests",
	EntryPoint:       CollectApiPullRequests,
	EnabledByDefault: true,
	Description:      "Collect PullRequests data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var CollectApiRepoMeta = plugin.SubTaskMeta{
	Name:        "collectApiRepo",
	EntryPoint:  CollectApiRepositories,
	Required:    true,
	Description: "Collect repositories data from Gitee api",
	DomainTypes: []string{plugin.DOMAIN_TYPE_CODE},
}
View Source
var CollectCommitsMeta = plugin.SubTaskMeta{
	Name:             "collectApiCommits",
	EntryPoint:       CollectApiCommits,
	EnabledByDefault: true,
	Description:      "Collect commit data from gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE, plugin.DOMAIN_TYPE_CROSS},
}
View Source
var ConvertAccountsMeta = plugin.SubTaskMeta{
	Name:             "convertAccounts",
	EntryPoint:       ConvertAccounts,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitee_accounts into  domain layer table accounts",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CROSS},
}
View Source
var ConvertCommitsMeta = plugin.SubTaskMeta{
	Name:             "convertApiCommits",
	EntryPoint:       ConvertCommits,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitee_commits into  domain layer table commits",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE, plugin.DOMAIN_TYPE_CROSS},
}
View Source
var ConvertIssueCommentsMeta = plugin.SubTaskMeta{
	Name:             "convertIssueComments",
	EntryPoint:       ConvertIssueComments,
	EnabledByDefault: true,
	Description:      "ConvertIssueComments data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
}
View Source
var ConvertIssueLabelsMeta = plugin.SubTaskMeta{
	Name:             "convertIssueLabels",
	EntryPoint:       ConvertIssueLabels,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitee_issue_labels into  domain layer table issue_labels",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
}
View Source
var ConvertIssuesMeta = plugin.SubTaskMeta{
	Name:             "convertIssues",
	EntryPoint:       ConvertIssues,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitee_issues into  domain layer table issues",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
}
View Source
var ConvertPullRequestCommentsMeta = plugin.SubTaskMeta{
	Name:             "convertPullRequestComments",
	EntryPoint:       ConvertPullRequestComments,
	EnabledByDefault: true,
	Description:      "ConvertPullRequestComments data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var ConvertPullRequestCommitsMeta = plugin.SubTaskMeta{
	Name:             "convertPullRequestCommits",
	EntryPoint:       ConvertPullRequestCommits,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitee_pull_request_commits into  domain layer table pull_request_commits",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var ConvertPullRequestIssuesMeta = plugin.SubTaskMeta{
	Name:             "convertPullRequestIssues",
	EntryPoint:       ConvertPullRequestIssues,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitee_pull_request_issues into  domain layer table pull_request_issues",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CROSS},
}
View Source
var ConvertPullRequestLabelsMeta = plugin.SubTaskMeta{
	Name:             "convertPullRequestLabels",
	EntryPoint:       ConvertPullRequestLabels,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitee_pull_request_labels into  domain layer table pull_request_labels",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var ConvertPullRequestsMeta = plugin.SubTaskMeta{
	Name:             "convertPullRequests",
	EntryPoint:       ConvertPullRequests,
	EnabledByDefault: true,
	Description:      "ConvertPullRequests data from Gitee api",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var ConvertRepoMeta = plugin.SubTaskMeta{
	Name:             "convertRepo",
	EntryPoint:       ConvertRepo,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitee_repos into  domain layer table repos and boards",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE},
}
View Source
var EnrichPullRequestIssuesMeta = plugin.SubTaskMeta{
	Name:             "enrichPullRequestIssues",
	EntryPoint:       EnrichPullRequestIssues,
	EnabledByDefault: true,
	Description:      "Create tool layer table gitee_pull_request_issues from gitee_pull_reqeusts",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CROSS},
}
View Source
var ExtractApiCommitStatsMeta = plugin.SubTaskMeta{
	Name:             "extractApiCommitStats",
	EntryPoint:       ExtractApiCommitStats,
	EnabledByDefault: false,
	Description:      "Extract raw commit stats data into tool layer table gitee_commit_stats",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE},
}
View Source
var ExtractApiIssuesMeta = plugin.SubTaskMeta{
	Name:             "extractApiIssues",
	EntryPoint:       ExtractApiIssues,
	EnabledByDefault: true,
	Description:      "Extract raw Issues data into tool layer table gitee_issues",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
}
View Source
var ExtractApiPullRequestCommitsMeta = plugin.SubTaskMeta{
	Name:             "extractApiPullRequestCommits",
	EntryPoint:       ExtractApiPullRequestCommits,
	EnabledByDefault: true,
	Description:      "Extract raw PullRequestCommits data into tool layer table gitee_commits",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var ExtractApiPullRequestReviewsMeta = plugin.SubTaskMeta{
	Name:             "extractApiPullRequestReviews",
	EntryPoint:       ExtractApiPullRequestReviews,
	EnabledByDefault: true,
	Description:      "Extract raw PullRequestReviews data into tool layer table gitee_reviewers",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var ExtractApiPullRequestsMeta = plugin.SubTaskMeta{
	Name:             "extractApiPullRequests",
	EntryPoint:       ExtractApiPullRequests,
	EnabledByDefault: true,
	Description:      "Extract raw PullRequests data into tool layer table gitee_pull_requests",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
}
View Source
var ExtractApiRepoMeta = plugin.SubTaskMeta{
	Name:        "extractApiRepo",
	EntryPoint:  ExtractApiRepositories,
	Required:    true,
	Description: "Extract raw Repositories data into tool layer table gitee_repos",
	DomainTypes: []string{plugin.DOMAIN_TYPE_CODE},
}
View Source
var ExtractCommitsMeta = plugin.SubTaskMeta{
	Name:             "extractApiCommits",
	EntryPoint:       ExtractApiCommits,
	EnabledByDefault: true,
	Description:      "Extract raw commit data into tool layer table GiteeCommit,GiteeAccount and GiteeRepoCommit",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE, plugin.DOMAIN_TYPE_CROSS},
}

Functions

func CollectApiCommitStats

func CollectApiCommitStats(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiCommits

func CollectApiCommits(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiIssueComments

func CollectApiIssueComments(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiIssues

func CollectApiIssues(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiPullRequestCommits

func CollectApiPullRequestCommits(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiPullRequestReviews

func CollectApiPullRequestReviews(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiPullRequests

func CollectApiPullRequests(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiRepositories

func CollectApiRepositories(taskCtx plugin.SubTaskContext) errors.Error

func ConvertAccounts

func ConvertAccounts(taskCtx plugin.SubTaskContext) errors.Error

func ConvertCommit

func ConvertCommit(commit *GiteeApiCommitResponse) (*models.GiteeCommit, errors.Error)

ConvertCommit Convert the API response to our DB model instance

func ConvertCommits

func ConvertCommits(taskCtx plugin.SubTaskContext) errors.Error

func ConvertIssueComments

func ConvertIssueComments(taskCtx plugin.SubTaskContext) errors.Error

func ConvertIssueLabels

func ConvertIssueLabels(taskCtx plugin.SubTaskContext) errors.Error

func ConvertIssues

func ConvertIssues(taskCtx plugin.SubTaskContext) errors.Error

func ConvertPullRequestComments

func ConvertPullRequestComments(taskCtx plugin.SubTaskContext) errors.Error

func ConvertPullRequestCommits

func ConvertPullRequestCommits(taskCtx plugin.SubTaskContext) (err errors.Error)

func ConvertPullRequestIssues

func ConvertPullRequestIssues(taskCtx plugin.SubTaskContext) errors.Error

func ConvertPullRequestLabels

func ConvertPullRequestLabels(taskCtx plugin.SubTaskContext) errors.Error

func ConvertPullRequests

func ConvertPullRequests(taskCtx plugin.SubTaskContext) errors.Error

func ConvertRepo

func ConvertRepo(taskCtx plugin.SubTaskContext) errors.Error

func ConvertStringToInt

func ConvertStringToInt(input string) (int, errors.Error)

func EnrichPullRequestIssues

func EnrichPullRequestIssues(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiCommitStats

func ExtractApiCommitStats(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiCommits

func ExtractApiCommits(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiIssues

func ExtractApiIssues(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiPullRequestCommits

func ExtractApiPullRequestCommits(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiPullRequestReviews

func ExtractApiPullRequestReviews(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiPullRequests

func ExtractApiPullRequests(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiRepositories

func ExtractApiRepositories(taskCtx plugin.SubTaskContext) errors.Error

func GetRateLimitPerSecond

func GetRateLimitPerSecond(info RateLimitInfo) int

func GetRawMessageFromResponse

func GetRawMessageFromResponse(res *http.Response) ([]json.RawMessage, errors.Error)

func GetTotalPagesFromResponse

func GetTotalPagesFromResponse(res *http.Response, args *api.ApiCollectorArgs) (int, errors.Error)

func NewClifeApiClient

func NewClifeApiClient(taskCtx plugin.TaskContext, connection *models.ClifeConnection) (*api.ApiAsyncClient, errors.Error)

Types

type ApiSingleCommitResponse

type ApiSingleCommitResponse struct {
	Sha   string
	Stats struct {
		Additions int
		Deletions int
		// contains filtered or unexported fields
	}
	Commit struct {
		Committer struct {
			Name  string
			Email string
			Date  api.Iso8601Time
		}
	}
}

type ClifeOptions

type ClifeOptions struct {
	ConnectionId uint64 `json:"connectionId"`
	Owner        string
	Repo         string
	ScopeConfig  models.ClifeScopeConfig `mapstructure:"scopeConfig" json:"scopeConfig"`
}

func DecodeAndValidateTaskOptions

func DecodeAndValidateTaskOptions(options map[string]interface{}) (*ClifeOptions, errors.Error)

type ClifeTaskData

type ClifeTaskData struct {
	Options   *ClifeOptions
	ApiClient *api.ApiAsyncClient
	Repo      *models.ClifeRepo
	Since     *time.Time
}

func CreateRawDataSubTaskArgs

func CreateRawDataSubTaskArgs(taskCtx plugin.SubTaskContext, Table string) (*api.RawDataSubTaskArgs, *ClifeTaskData)

type GiteeApiCommitResponse

type GiteeApiCommitResponse struct {
	Author      *models.GiteeAccount `json:"author"`
	CommentsUrl string               `json:"comments_url"`
	Commit      GiteeCommit          `json:"commit"`
	Committer   *models.GiteeAccount `json:"committer"`
	HtmlUrl     string               `json:"html_url"`
	Sha         string               `json:"sha"`
	Url         string               `json:"url"`
}

type GiteeApiPullResponse

type GiteeApiPullResponse struct {
	GiteeId int `json:"id"`
	Number  int
	State   string
	Title   string
	Body    json.RawMessage
	HtmlUrl string `json:"html_url"`
	Labels  []struct {
		Name string `json:"name"`
	} `json:"labels"`
	Assignee *struct {
		Id    int
		Login string
		Name  string
	}
	User *struct {
		Id    int
		Login string
		Name  string
	}
	ClosedAt       *api.Iso8601Time `json:"closed_at"`
	MergedAt       *api.Iso8601Time `json:"merged_at"`
	GiteeCreatedAt api.Iso8601Time  `json:"created_at"`
	GiteeUpdatedAt api.Iso8601Time  `json:"updated_at"`
	MergeCommitSha string           `json:"merge_commit_sha"`
	Head           struct {
		Ref string
		Sha string
	}
	Base struct {
		Ref  string
		Sha  string
		Repo struct {
			Id      int
			Name    string
			Url     string
			HtmlUrl string
			SshUrl  string `json:"ssh_url"`
		}
	}
}

type GiteeApiRepoResponse

type GiteeApiRepoResponse struct {
	Name        string                `json:"name"`
	GiteeId     int                   `json:"id"`
	HTMLUrl     string                `json:"html_url"`
	Language    string                `json:"language"`
	Description string                `json:"description"`
	Owner       models.GiteeAccount   `json:"owner"`
	Parent      *GiteeApiRepoResponse `json:"parent"`
	CreatedAt   api.Iso8601Time       `json:"created_at"`
	UpdatedAt   *api.Iso8601Time      `json:"updated_at"`
}

type GiteeCommit

type GiteeCommit struct {
	Author struct {
		Date  api.Iso8601Time `json:"date"`
		Email string          `json:"email"`
		Name  string          `json:"name"`
	}
	Committer struct {
		Date  api.Iso8601Time `json:"date"`
		Email string          `json:"email"`
		Name  string          `json:"name"`
	}
	Message string `json:"message"`
}

type GiteeInput

type GiteeInput struct {
	Repo  string
	Owner string
	Iid   int
}

type IssuesResponse

type IssuesResponse struct {
	GiteeId       int    `json:"id"`
	Url           string `json:"url"`
	RepositoryUrl string `json:"repository_url"`
	Number        string `json:"number"`
	State         string `json:"state"`
	Title         string
	Body          string
	HtmlUrl       string `json:"html_url"`
	CommentsUrl   string `json:"comments_url"`
	PullRequest   struct {
		Url     string `json:"url"`
		HtmlUrl string `json:"html_url"`
	} `json:"pull_request"`
	Labels []struct {
		Id           int
		RepositoryId int             `json:"repository_id"`
		Name         string          `json:"name"`
		CreatedAt    api.Iso8601Time `json:"created_at"`
		UpdatedAt    api.Iso8601Time `json:"updated_at"`
	} `json:"labels"`
	Repository struct {
		Id       int
		FullName string `json:"full_name"`
		Url      string `json:"url"`
	} `json:"repository"`
	Assignee *struct {
		Login string
		Id    int
	}
	User *struct {
		Login string
		Id    int
		Name  string
	}
	Comments        int              `json:"comments"`
	Priority        int              `json:"priority"`
	IssueType       string           `json:"issue_type"`
	SecurityHole    bool             `json:"security_hole"`
	IssueState      string           `json:"issue_state"`
	Branch          string           `json:"branch"`
	FinishAt        *api.Iso8601Time `json:"finished_at"`
	GiteeCreatedAt  api.Iso8601Time  `json:"created_at"`
	GiteeUpdatedAt  api.Iso8601Time  `json:"updated_at"`
	IssueTypeDetail struct {
		Id        int
		Title     string
		Ident     string
		CreatedAt api.Iso8601Time `json:"created_at"`
		UpdatedAt api.Iso8601Time `json:"updated_at"`
	}
	IssueStateDetail struct {
		Id        int
		Title     string
		Serial    string
		CreatedAt api.Iso8601Time `json:"created_at"`
		UpdatedAt api.Iso8601Time `json:"updated_at"`
	}
}

type PagingInfo

type PagingInfo struct {
	Next  int
	Last  int
	First int
	Prev  int
}

func GetPagingFromLinkHeader

func GetPagingFromLinkHeader(link string) (PagingInfo, errors.Error)

type PrCommitsResponse

type PrCommitsResponse struct {
	Sha    string `json:"sha"`
	Commit PullRequestCommit
	Url    string
	Author struct {
		Id    int
		Login string
		Name  string
	}
	Committer struct {
		Id    int
		Login string
		Name  string
	}
}

type PullRequestCommit

type PullRequestCommit struct {
	Author struct {
		Name  string
		Email string
		Date  api.Iso8601Time
	}
	Committer struct {
		Name  string
		Email string
		Date  api.Iso8601Time
	}
	Message      string
	CommentCount int `json:"comment_count"`
}

type PullRequestReview

type PullRequestReview struct {
	GiteeId int `json:"id"`
	User    struct {
		Id    int
		Login string
		Name  string
	}
	Content    string
	ActionType string          `json:"action_type"`
	CreatedAt  api.Iso8601Time `json:"created_at"`
}

type RateLimitInfo

type RateLimitInfo struct {
	Date      time.Time
	ResetTime time.Time
	Remaining int
}

func ConvertRateLimitInfo

func ConvertRateLimitInfo(date string, resetTime string, remaining string) (RateLimitInfo, errors.Error)

type SimplePr

type SimplePr struct {
	Number  int
	GiteeId int
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL