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: 22 Imported by: 0

Documentation

Index

Constants

View Source
const RAW_COMMIT_TABLE = "gitlab_api_commit"
View Source
const RAW_ISSUE_TABLE = "gitlab_api_issues"
View Source
const RAW_JOB_TABLE = "gitlab_api_job"
View Source
const RAW_MERGE_REQUEST_COMMITS_TABLE = "gitlab_api_merge_request_commits"
View Source
const RAW_MERGE_REQUEST_DETAIL_TABLE = "gitlab_api_merge_request_details"
View Source
const RAW_MERGE_REQUEST_NOTES_TABLE = "gitlab_api_merge_request_notes"
View Source
const RAW_MERGE_REQUEST_TABLE = "gitlab_api_merge_requests"
View Source
const RAW_PIPELINE_DETAILS_TABLE = "gitlab_api_pipeline_details"
View Source
const RAW_PIPELINE_TABLE = "gitlab_api_pipeline"
View Source
const RAW_PROJECT_TABLE = "gitlab_api_project"
View Source
const RAW_TAG_TABLE = "gitlab_api_tag"
View Source
const RAW_USER_TABLE = "gitlab_api_users"

Variables

View Source
var CollectAccountsMeta = plugin.SubTaskMeta{
	Name:             "collectAccounts",
	EntryPoint:       CollectAccounts,
	EnabledByDefault: true,
	Description:      "collect gitlab users, does not support either timeFilter or diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CROSS},
	Dependencies:     []*plugin.SubTaskMeta{&EnrichMergeRequestsMeta},
}
View Source
var CollectApiCommitsMeta = plugin.SubTaskMeta{
	Name:             "collectApiCommits",
	EntryPoint:       CollectApiCommits,
	EnabledByDefault: false,
	Description:      "Collect commit data from gitlab api, does not support either timeFilter or diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertJobMeta},
}
View Source
var CollectApiIssuesMeta = plugin.SubTaskMeta{
	Name:             "collectApiIssues",
	EntryPoint:       CollectApiIssues,
	EnabledByDefault: true,
	Description:      "Collect issues data from Gitlab api, supports both timeFilter and diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
	Dependencies:     []*plugin.SubTaskMeta{},
}
View Source
var CollectApiJobsMeta = plugin.SubTaskMeta{
	Name:             "collectApiJobs",
	EntryPoint:       CollectApiJobs,
	EnabledByDefault: true,
	Description:      "Collect job data from gitlab api, supports both timeFilter and diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiPipelineDetailsMeta},
}
View Source
var CollectApiMergeRequestDetailsMeta = plugin.SubTaskMeta{
	Name:             "collectApiMergeRequestDetails",
	EntryPoint:       CollectApiMergeRequestDetails,
	EnabledByDefault: true,
	Description:      "Collect merge request Details data from gitlab api, supports timeFilter but not diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiMergeRequestsMeta},
}
View Source
var CollectApiMergeRequestsMeta = plugin.SubTaskMeta{
	Name:             "collectApiMergeRequests",
	EntryPoint:       CollectApiMergeRequests,
	EnabledByDefault: true,
	Description:      "Collect merge requests data from gitlab api, supports both timeFilter and diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiIssuesMeta},
}
View Source
var CollectApiMrCommitsMeta = plugin.SubTaskMeta{
	Name:             "collectApiMergeRequestsCommits",
	EntryPoint:       CollectApiMergeRequestsCommits,
	EnabledByDefault: true,
	Description:      "Collect merge requests commits data from gitlab api, supports timeFilter but not diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiMrNotesMeta},
}
View Source
var CollectApiMrNotesMeta = plugin.SubTaskMeta{
	Name:             "collectApiMergeRequestsNotes",
	EntryPoint:       CollectApiMergeRequestsNotes,
	EnabledByDefault: true,
	Description:      "Collect merge requests notes data from gitlab api, supports timeFilter but not diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiMergeRequestDetailsMeta},
}
View Source
var CollectApiPipelineDetailsMeta = plugin.SubTaskMeta{
	Name:             "collectApiPipelineDetails",
	EntryPoint:       CollectApiPipelineDetails,
	EnabledByDefault: true,
	Description:      "Collect pipeline details data from gitlab api, supports both timeFilter and diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiPipelinesMeta},
}
View Source
var CollectApiPipelinesMeta = plugin.SubTaskMeta{
	Name:             "collectApiPipelines",
	EntryPoint:       CollectApiPipelines,
	EnabledByDefault: true,
	Description:      "Collect pipeline data from gitlab api, supports both timeFilter and diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiMrCommitsMeta},
}
View Source
var CollectTagMeta = plugin.SubTaskMeta{
	Name:             "collectApiTag",
	EntryPoint:       CollectApiTag,
	EnabledByDefault: false,
	Description:      "Collect tag data from gitlab api, does not support either timeFilter or diffSync.",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiMergeRequestDetailsMeta},
}
View Source
var ConvertAccountsMeta = plugin.SubTaskMeta{
	Name:             "convertAccounts",
	EntryPoint:       ConvertAccounts,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitlab_users into  domain layer table accounts",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CROSS},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractAccountsMeta},
}
View Source
var ConvertApiMergeRequestsMeta = plugin.SubTaskMeta{
	Name:             "convertApiMergeRequests",
	EntryPoint:       ConvertApiMergeRequests,
	EnabledByDefault: true,
	Description:      "Add domain layer PullRequest according to GitlabMergeRequest",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertProjectMeta},
}
View Source
var ConvertApiMrCommitsMeta = plugin.SubTaskMeta{
	Name:             "convertApiMergeRequestsCommits",
	EntryPoint:       ConvertApiMergeRequestsCommits,
	EnabledByDefault: true,
	Description:      "Add domain layer PullRequestCommit according to GitlabMrCommit",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertMrCommentMeta},
}
View Source
var ConvertCommitsMeta = plugin.SubTaskMeta{
	Name:             "convertApiCommits",
	EntryPoint:       ConvertApiCommits,
	EnabledByDefault: false,
	Description:      "Update domain layer commit according to GitlabCommit",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertMrLabelsMeta},
}
View Source
var ConvertIssueAssigneeMeta = plugin.SubTaskMeta{
	Name:             "convertIssueAssignee",
	EntryPoint:       ConvertIssueAssignee,
	EnabledByDefault: true,
	Description:      "Convert tool layer table _tool_gitlab_issue_assignees into  domain layer table issue_assignees",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
}
View Source
var ConvertIssueLabelsMeta = plugin.SubTaskMeta{
	Name:             "convertIssueLabels",
	EntryPoint:       ConvertIssueLabels,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitlab_issue_labels into  domain layer table issue_labels",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertIssuesMeta},
}
View Source
var ConvertIssuesMeta = plugin.SubTaskMeta{
	Name:             "convertIssues",
	EntryPoint:       ConvertIssues,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitlab_issues into  domain layer table issues",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertApiMrCommitsMeta},
}
View Source
var ConvertJobMeta = plugin.SubTaskMeta{
	Name:             "convertJobs",
	EntryPoint:       ConvertJobs,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitlab_job into domain layer table job",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertPipelineCommitMeta},
}
View Source
var ConvertMrCommentMeta = plugin.SubTaskMeta{
	Name:             "convertMergeRequestComment",
	EntryPoint:       ConvertMergeRequestComment,
	EnabledByDefault: true,
	Description:      "Add domain layer Comment according to GitlabMrComment",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertApiMergeRequestsMeta},
}
View Source
var ConvertMrLabelsMeta = plugin.SubTaskMeta{
	Name:             "convertMrLabels",
	EntryPoint:       ConvertMrLabels,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitlab_mr_labels into  domain layer table pull_request_labels",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertIssueLabelsMeta},
}
View Source
var ConvertPipelineCommitMeta = plugin.SubTaskMeta{
	Name:             "convertPipelineCommits",
	EntryPoint:       ConvertPipelineCommits,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitlab_pipeline_project into domain layer table pipeline",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertPipelineMeta},
}
View Source
var ConvertPipelineMeta = plugin.SubTaskMeta{
	Name:             "convertPipelines",
	EntryPoint:       ConvertPipelines,
	EnabledByDefault: true,
	Description:      "Convert tool layer table gitlab_pipeline into domain layer table pipeline",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertCommitsMeta},
}
View Source
var ConvertProjectMeta = plugin.SubTaskMeta{
	Name:             "convertApiProject",
	EntryPoint:       ConvertApiProjects,
	EnabledByDefault: true,
	Description:      "Add domain layer Repo according to GitlabProject",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE, plugin.DOMAIN_TYPE_TICKET},
	Dependencies:     []*plugin.SubTaskMeta{&ConvertAccountsMeta},
}
View Source
var EnrichMergeRequestsMeta = plugin.SubTaskMeta{
	Name:             "enrichMrs",
	EntryPoint:       EnrichMergeRequests,
	EnabledByDefault: true,
	Description:      "Enrich merge requests data from GitlabCommit, GitlabMrNote and GitlabMergeRequest",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiJobsMeta},
}
View Source
var ExtractAccountsMeta = plugin.SubTaskMeta{
	Name:             "extractAccounts",
	EntryPoint:       ExtractAccounts,
	EnabledByDefault: true,
	Description:      "Extract raw workspace data into tool layer table _tool_gitlab_accounts",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CROSS},
	Dependencies:     []*plugin.SubTaskMeta{&CollectAccountsMeta},
}
View Source
var ExtractApiCommitsMeta = plugin.SubTaskMeta{
	Name:             "extractApiCommits",
	EntryPoint:       ExtractApiCommits,
	EnabledByDefault: false,
	Description:      "Extract raw commit data into tool layer table GitlabCommit,GitlabAccount and GitlabProjectCommit",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiCommitsMeta},
}
View Source
var ExtractApiIssuesMeta = plugin.SubTaskMeta{
	Name:             "extractApiIssues",
	EntryPoint:       ExtractApiIssues,
	EnabledByDefault: true,
	Description:      "Extract raw Issues data into tool layer table gitlab_issues",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_TICKET},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiIssuesMeta},
}
View Source
var ExtractApiJobsMeta = plugin.SubTaskMeta{
	Name:             "extractApiJobs",
	EntryPoint:       ExtractApiJobs,
	EnabledByDefault: true,
	Description:      "Extract raw GitlabJob data into tool layer table GitlabPipeline",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiJobsMeta},
}
View Source
var ExtractApiMergeRequestDetailsMeta = plugin.SubTaskMeta{
	Name:             "extractApiMergeRequestDetails",
	EntryPoint:       ExtractApiMergeRequestDetails,
	EnabledByDefault: true,
	Description:      "Extract raw merge request Details data into tool layer table GitlabMergeRequest and GitlabReviewer",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&ExtractApiCommitsMeta},
}
View Source
var ExtractApiMergeRequestsMeta = plugin.SubTaskMeta{
	Name:             "extractApiMergeRequests",
	EntryPoint:       ExtractApiMergeRequests,
	EnabledByDefault: true,
	Description:      "Extract raw merge requests data into tool layer table GitlabMergeRequest and GitlabReviewer",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiMergeRequestsMeta},
}
View Source
var ExtractApiMrCommitsMeta = plugin.SubTaskMeta{
	Name:             "extractApiMergeRequestsCommits",
	EntryPoint:       ExtractApiMergeRequestsCommits,
	EnabledByDefault: true,
	Description:      "Extract raw merge requests commit data into tool layer table GitlabMrCommit and GitlabCommit",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiMrCommitsMeta},
}
View Source
var ExtractApiMrNotesMeta = plugin.SubTaskMeta{
	Name:             "extractApiMergeRequestsNotes",
	EntryPoint:       ExtractApiMergeRequestsNotes,
	EnabledByDefault: true,
	Description:      "Extract raw merge requests notes data into tool layer table GitlabMrNote",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE_REVIEW},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiMrNotesMeta},
}
View Source
var ExtractApiPipelineDetailsMeta = plugin.SubTaskMeta{
	Name:             "extractApiPipelineDetails",
	EntryPoint:       ExtractApiPipelineDetails,
	EnabledByDefault: true,
	Description:      "Extract raw pipeline details data into tool layer table GitlabPipeline",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiPipelineDetailsMeta},
}
View Source
var ExtractApiPipelinesMeta = plugin.SubTaskMeta{
	Name:             "extractApiPipelines",
	EntryPoint:       ExtractApiPipelines,
	EnabledByDefault: true,
	Description:      "Extract raw pipelines data into tool layer table GitlabPipeline",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CICD},
	Dependencies:     []*plugin.SubTaskMeta{&CollectApiPipelinesMeta},
}
View Source
var ExtractTagMeta = plugin.SubTaskMeta{
	Name:             "extractApiTag",
	EntryPoint:       ExtractApiTag,
	EnabledByDefault: false,
	Description:      "Extract raw tag data into tool layer table GitlabTag",
	DomainTypes:      []string{plugin.DOMAIN_TYPE_CODE},
	Dependencies:     []*plugin.SubTaskMeta{&CollectTagMeta},
}
View Source
var SubTaskMetaList []*plugin.SubTaskMeta

Functions

func CollectAccounts

func CollectAccounts(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiCommits

func CollectApiCommits(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiIssues

func CollectApiIssues(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiJobs

func CollectApiJobs(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiMergeRequestDetails

func CollectApiMergeRequestDetails(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiMergeRequests

func CollectApiMergeRequests(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiMergeRequestsCommits

func CollectApiMergeRequestsCommits(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiMergeRequestsNotes

func CollectApiMergeRequestsNotes(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiPipelineDetails

func CollectApiPipelineDetails(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiPipelines

func CollectApiPipelines(taskCtx plugin.SubTaskContext) errors.Error

func CollectApiTag

func CollectApiTag(taskCtx plugin.SubTaskContext) errors.Error

func ConvertAccounts

func ConvertAccounts(taskCtx plugin.SubTaskContext) errors.Error

func ConvertApiCommits

func ConvertApiCommits(taskCtx plugin.SubTaskContext) errors.Error

func ConvertApiMergeRequests

func ConvertApiMergeRequests(taskCtx plugin.SubTaskContext) errors.Error

func ConvertApiMergeRequestsCommits

func ConvertApiMergeRequestsCommits(taskCtx plugin.SubTaskContext) errors.Error

func ConvertApiProjects

func ConvertApiProjects(taskCtx plugin.SubTaskContext) errors.Error

func ConvertCommit

func ConvertCommit(commit *GitlabApiCommit) (*models.GitlabCommit, errors.Error)

Convert the API response to our DB model instance

func ConvertIssueAssignee

func ConvertIssueAssignee(taskCtx plugin.SubTaskContext) errors.Error

func ConvertIssueLabels

func ConvertIssueLabels(taskCtx plugin.SubTaskContext) errors.Error

func ConvertIssues

func ConvertIssues(taskCtx plugin.SubTaskContext) errors.Error

func ConvertJobs

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

func ConvertMergeRequestComment

func ConvertMergeRequestComment(taskCtx plugin.SubTaskContext) errors.Error

func ConvertMrLabels

func ConvertMrLabels(taskCtx plugin.SubTaskContext) errors.Error

func ConvertPipelineCommits

func ConvertPipelineCommits(taskCtx plugin.SubTaskContext) errors.Error

func ConvertPipelines

func ConvertPipelines(taskCtx plugin.SubTaskContext) errors.Error

func ConvertProject

func ConvertProject(gitlabApiProject *GitlabApiProject) *models.GitlabProject

Convert the API response to our DB model instance

func CreateGitlabAsyncApiClient

func CreateGitlabAsyncApiClient(
	taskCtx plugin.TaskContext,
	apiClient *api.ApiClient,
	connection *models.GitlabConnection,
) (*api.ApiAsyncClient, errors.Error)

func EnrichMergeRequests

func EnrichMergeRequests(taskCtx plugin.SubTaskContext) errors.Error

func ExtractAccounts

func ExtractAccounts(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiCommits

func ExtractApiCommits(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiIssues

func ExtractApiIssues(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiJobs

func ExtractApiJobs(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiMergeRequestDetails

func ExtractApiMergeRequestDetails(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiMergeRequests

func ExtractApiMergeRequests(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiMergeRequestsCommits

func ExtractApiMergeRequestsCommits(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiMergeRequestsNotes

func ExtractApiMergeRequestsNotes(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiPipelineDetails

func ExtractApiPipelineDetails(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiPipelines

func ExtractApiPipelines(taskCtx plugin.SubTaskContext) errors.Error

func ExtractApiTag

func ExtractApiTag(taskCtx plugin.SubTaskContext) errors.Error

func GetMergeRequestDetailsIterator

func GetMergeRequestDetailsIterator(taskCtx plugin.SubTaskContext, collectorWithState *helper.ApiCollectorStateManager) (*helper.DalCursorIterator, errors.Error)

func GetMergeRequestsIterator

func GetMergeRequestsIterator(taskCtx plugin.SubTaskContext, collectorWithState *helper.ApiCollectorStateManager) (*helper.DalCursorIterator, errors.Error)

func GetOneRawMessageFromResponse

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

func GetPipelinesIterator

func GetPipelinesIterator(taskCtx plugin.SubTaskContext, collectorWithState *helper.ApiCollectorStateManager) (*helper.DalCursorIterator, errors.Error)

func GetQuery

func GetQuery(reqData *helper.RequestData) (url.Values, errors.Error)

func GetRawMessageFromResponse

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

func GetRawMessageUpdatedAtAfter

func GetRawMessageUpdatedAtAfter(timeAfter *time.Time) func(res *http.Response) ([]json.RawMessage, errors.Error)

func GetTotalPagesFromResponse

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

func NewGitlabApiClient

func NewGitlabApiClient(taskCtx plugin.TaskContext, connection *models.GitlabConnection) (*api.ApiAsyncClient, errors.Error)

func RegisterSubtaskMeta

func RegisterSubtaskMeta(meta *plugin.SubTaskMeta)

Types

type ApiDetailedStatus

type ApiDetailedStatus struct {
	Icon        string
	Text        string
	Label       string
	Group       string
	Tooltip     string
	HasDetails  bool   `json:"has_details"`
	DetailsPath string `json:"details_path"`
	Favicon     string
}

type ApiJob

type ApiJob struct {
	Id           int `json:"id"`
	Status       string
	Stage        string
	Name         string
	Ref          string
	Tag          bool
	AllowFailure bool `json:"allow_failure"`
	Duration     float64
	WebUrl       string `json:"web_url"`
	Pipeline     struct {
		Id int
	}

	CreatedAt  *api.Iso8601Time `json:"created_at"`
	StartedAt  *api.Iso8601Time `json:"started_at"`
	FinishedAt *api.Iso8601Time `json:"finished_at"`
}

type ApiPipeline

type ApiPipeline struct {
	Id       int `json:"id"`
	Ref      string
	Sha      string
	Status   string
	Tag      bool
	Duration int
	WebUrl   string `json:"web_url"`

	CreatedAt  *api.Iso8601Time `json:"created_at"`
	UpdatedAt  *api.Iso8601Time `json:"updated_at"`
	StartedAt  *api.Iso8601Time `json:"started_at"`
	FinishedAt *api.Iso8601Time `json:"finished_at"`

	ApiDetailedStatus
}

type GitlabApiCommit

type GitlabApiCommit struct {
	GitlabId       string `json:"id"`
	Title          string
	Message        string
	ProjectId      int
	ShortId        string          `json:"short_id"`
	AuthorName     string          `json:"author_name"`
	AuthorEmail    string          `json:"author_email"`
	AuthoredDate   api.Iso8601Time `json:"authored_date"`
	CommitterName  string          `json:"committer_name"`
	CommitterEmail string          `json:"committer_email"`
	CommittedDate  api.Iso8601Time `json:"committed_date"`
	WebUrl         string          `json:"web_url"`
	Stats          struct {
		Additions int
		Deletions int
		Total     int
	}
}

type GitlabApiProject

type GitlabApiProject struct {
	GitlabId          int    `json:"id"`
	Name              string `josn:"name"`
	Description       string `json:"description"`
	DefaultBranch     string `json:"default_branch"`
	PathWithNamespace string `json:"path_with_namespace"`
	WebUrl            string `json:"web_url"`
	CreatorId         int
	Visibility        string              `json:"visibility"`
	OpenIssuesCount   int                 `json:"open_issues_count"`
	StarCount         int                 `json:"star_count"`
	ForkedFromProject *GitlabApiProject   `json:"forked_from_project"`
	CreatedAt         helper.Iso8601Time  `json:"created_at"`
	LastActivityAt    *helper.Iso8601Time `json:"last_activity_at"`
	HttpUrlToRepo     string              `json:"http_url_to_repo"`
}

type GitlabApiTag

type GitlabApiTag struct {
	Name      string
	Message   string
	Target    string
	Protected bool
	Release   struct {
		TagName     string
		Description string
	}
}

type GitlabInput

type GitlabInput struct {
	GitlabId int
	Iid      int
}

type GitlabOptions

type GitlabOptions struct {
	ConnectionId  uint64                    `mapstructure:"connectionId" json:"connectionId"`
	ProjectId     int                       `mapstructure:"projectId" json:"projectId"`
	ScopeConfigId uint64                    `mapstructure:"scopeConfigId" json:"scopeConfigId"`
	TimeAfter     string                    `mapstructure:"timeAfter" json:"timeAfter"`
	ScopeConfig   *models.GitlabScopeConfig `mapstructure:"scopeConfig" json:"scopeConfig"`
}

func DecodeAndValidateTaskOptions

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

type GitlabTaskData

type GitlabTaskData struct {
	Options       *GitlabOptions
	ApiClient     *helper.ApiAsyncClient
	ProjectCommit *models.GitlabProjectCommit
	TimeAfter     *time.Time
	RegexEnricher *helper.RegexEnricher
}

func CreateRawDataSubTaskArgs

func CreateRawDataSubTaskArgs(taskCtx plugin.SubTaskContext, Table string) (*helper.RawDataSubTaskArgs, *GitlabTaskData)

type IssuesResponse

type IssuesResponse struct {
	ProjectId int `json:"project_id"`
	Milestone struct {
		Due_date    string
		Project_id  int
		State       string
		Description string
		Iid         int
		Id          int
		Title       string
		CreatedAt   api.Iso8601Time
		UpdatedAt   api.Iso8601Time
	}
	Author *struct {
		State     string
		WebUrl    string `json:"web_url"`
		AvatarUrl string `json:"avatar_url"`
		Username  string
		Id        int    `json:"id"`
		Name      string `json:"name"`
	}
	Description string
	State       string
	Iid         int
	Assignees   []struct {
		AvatarUrl string `json:"avatar_url"`
		WebUrl    string `json:"web_url"`
		State     string
		Username  string
		Id        int
		Name      string
	}
	Assignee *struct {
		AvatarUrl string
		WebUrl    string
		State     string
		Username  string
		Id        int
		Name      string
	}
	Type               string
	Labels             []string `json:"labels"`
	UpVotes            int
	DownVotes          int
	MergeRequestsCount int
	Id                 int `json:"id"`
	Title              string
	GitlabUpdatedAt    api.Iso8601Time  `json:"updated_at"`
	GitlabCreatedAt    api.Iso8601Time  `json:"created_at"`
	GitlabClosedAt     *api.Iso8601Time `json:"closed_at"`
	ClosedBy           struct {
		State     string
		WebUrl    string
		AvatarUrl string
		Username  string
		Id        int
		Name      string
	}
	UserNotesCount int
	DueDate        api.Iso8601Time
	WebUrl         string `json:"web_url"`
	References     struct {
		Short    string
		Relative string
		Full     string
	}
	TimeStats struct {
		TimeEstimate        int64
		TotalTimeSpent      int64
		HumanTimeEstimate   string
		HumanTotalTimeSpent string
	}
	HasTasks         bool
	TaskStatus       string
	Confidential     bool
	DiscussionLocked bool
	IssueType        string
	Serverity        string
	Links            struct {
		Self       string `json:"url"`
		Notes      string
		AwardEmoji string
		Project    string
	}
	TaskCompletionStatus struct {
		Count          int
		CompletedCount int
	}
}

type MergeRequestNote

type MergeRequestNote struct {
	GitlabId        int    `json:"id"`
	MergeRequestId  int    `json:"noteable_id"`
	MergeRequestIid int    `json:"noteable_iid"`
	NoteableType    string `json:"noteable_type"`
	Body            string
	GitlabCreatedAt api.Iso8601Time `json:"created_at"`
	Confidential    bool
	Resolvable      bool `json:"resolvable"`
	System          bool `json:"system"`
	Author          struct {
		Id       int    `json:"id"`
		Username string `json:"username"`
	}
	Type string `json:"type"`
}

type MergeRequestRes

type MergeRequestRes struct {
	GitlabId        int `json:"id"`
	Iid             int
	ProjectId       int `json:"project_id"`
	SourceProjectId int `json:"source_project_id"`
	TargetProjectId int `json:"target_project_id"`
	State           string
	Title           string
	Description     string
	WebUrl          string           `json:"web_url"`
	UserNotesCount  int              `json:"user_notes_count"`
	WorkInProgress  bool             `json:"work_in_progress"`
	SourceBranch    string           `json:"source_branch"`
	TargetBranch    string           `json:"target_branch"`
	GitlabCreatedAt api.Iso8601Time  `json:"created_at"`
	GitlabUpdatedAt *api.Iso8601Time `json:"updated_at"`
	MergedAt        *api.Iso8601Time `json:"merged_at"`
	ClosedAt        *api.Iso8601Time `json:"closed_at"`
	MergeCommitSha  string           `json:"merge_commit_sha"`
	SquashCommitSha string           `json:"squash_commit_sha"`
	DiffHeadSha     string           `json:"sha"`
	MergedBy        struct {
		Username string `json:"username"`
	} `json:"merged_by"`
	Author struct {
		Id       int    `json:"id"`
		Username string `json:"username"`
	}
	Reviewers        []Reviewer
	FirstCommentTime api.Iso8601Time
	Labels           []string `json:"labels"`
}

type Reviewer

type Reviewer struct {
	GitlabId       int `json:"id"`
	MergeRequestId int
	Name           string
	Username       string
	State          string
	AvatarUrl      string `json:"avatar_url"`
	WebUrl         string `json:"web_url"`
}

type SimpleGitlabApiJob

type SimpleGitlabApiJob struct {
	GitlabId  int
	CreatedAt helper.Iso8601Time `json:"created_at"`
}

Jump to

Keyboard shortcuts

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