Documentation ¶
Index ¶
- Variables
- func ExtractKeysFromMapString(in map[string]VisibleType) (keys []string)
- type APIError
- type AccessToken
- type AccessTokenList
- type Activity
- type ActivityPub
- type AddCollaboratorOption
- type AddOrgMembershipOption
- type AddTimeOption
- type AnnotatedTag
- type AnnotatedTagObject
- type ApplyDiffPatchFileOptions
- type Attachment
- type Branch
- type BranchProtection
- type ChangeFileOperation
- type ChangeFilesOptions
- type ChangedFile
- type ChangesFromPayload
- type ChangesPayload
- type CombinedStatus
- type Comment
- type Commit
- type CommitAffectedFiles
- type CommitDateOptions
- type CommitMeta
- type CommitStats
- type CommitStatus
- type CommitStatusState
- func (css CommitStatusState) IsError() bool
- func (css CommitStatusState) IsFailure() bool
- func (css CommitStatusState) IsPending() bool
- func (css CommitStatusState) IsSuccess() bool
- func (css CommitStatusState) IsWarning() bool
- func (css CommitStatusState) NoBetterThan(css2 CommitStatusState) bool
- func (css CommitStatusState) String() string
- type CommitUser
- type ContentsResponse
- type CreateAccessTokenOption
- type CreateBranchProtectionOption
- type CreateBranchRepoOption
- type CreateEmailOption
- type CreateFileOptions
- type CreateForkOption
- type CreateGPGKeyOption
- type CreateHookOption
- type CreateHookOptionConfig
- type CreateIssueCommentOption
- type CreateIssueOption
- type CreateKeyOption
- type CreateLabelOption
- type CreateMilestoneOption
- type CreateOAuth2ApplicationOptions
- type CreateOrUpdateSecretOption
- type CreateOrgOption
- type CreatePayload
- type CreatePullRequestOption
- type CreatePullReviewComment
- type CreatePullReviewOptions
- type CreatePushMirrorOption
- type CreateReleaseOption
- type CreateRepoOption
- type CreateStatusOption
- type CreateTagOption
- type CreateTeamOption
- type CreateUserOption
- type CreateWikiPageOptions
- type Cron
- type DeleteEmailOption
- type DeleteFileOptions
- type DeletePayload
- type DeployKey
- type DismissPullReviewOptions
- type EditAttachmentOptions
- type EditBranchProtectionOption
- type EditDeadlineOption
- type EditGitHookOption
- type EditHookOption
- type EditIssueCommentOption
- type EditIssueOption
- type EditLabelOption
- type EditMilestoneOption
- type EditOrgOption
- type EditPullRequestOption
- type EditReactionOption
- type EditReleaseOption
- type EditRepoOption
- type EditTeamOption
- type EditUserOption
- type Email
- type ExternalTracker
- type ExternalWiki
- type FileCommitResponse
- type FileDeleteResponse
- type FileLinksResponse
- type FileOptionInterface
- type FileOptions
- type FileResponse
- type FilesResponse
- type ForkPayload
- type GPGKey
- type GPGKeyEmail
- type GeneralAPISettings
- type GeneralAttachmentSettings
- type GeneralRepoSettings
- type GeneralUISettings
- type GenerateRepoOption
- type GitBlobResponse
- type GitEntry
- type GitHook
- type GitHookList
- type GitObject
- type GitServiceType
- type GitTreeResponse
- type GitignoreTemplateInfo
- type Hook
- type HookIssueAction
- type HookIssueCommentAction
- type HookList
- type HookPackageAction
- type HookReleaseAction
- type HookRepoAction
- type HookWikiAction
- type Identity
- type InternalTracker
- type Issue
- type IssueCommentPayload
- type IssueConfig
- type IssueConfigContactLink
- type IssueConfigValidation
- type IssueDeadline
- type IssueFormField
- type IssueFormFieldType
- type IssueLabelsOption
- type IssueMeta
- type IssuePayload
- type IssueTemplate
- type IssueTemplateLabels
- type IssueTemplateType
- type LFSLock
- type LFSLockDeleteRequest
- type LFSLockError
- type LFSLockList
- type LFSLockListVerify
- type LFSLockOwner
- type LFSLockRequest
- type LFSLockResponse
- type Label
- type LabelTemplate
- type LicenseTemplateInfo
- type LicensesTemplateListEntry
- type ListPullRequestsOptions
- type MarkdownOption
- type MarkdownRender
- type MarkupOption
- type MarkupRender
- type MigrateRepoOptions
- type Milestone
- type NewIssuePinsAllowed
- type NodeInfo
- type NodeInfoServices
- type NodeInfoSoftware
- type NodeInfoUsage
- type NodeInfoUsageUsers
- type Note
- type NotificationCount
- type NotificationSubject
- type NotificationThread
- type NotifySubjectType
- type OAuth2Application
- type OAuth2ApplicationList
- type Organization
- type OrganizationPermissions
- type PRBranchInfo
- type Package
- type PackageFile
- type PackagePayload
- type PayloadCommit
- type PayloadCommitVerification
- type PayloadUser
- type Payloader
- type Permission
- type PublicKey
- type PullRequest
- type PullRequestMeta
- type PullRequestPayload
- type PullReview
- type PullReviewComment
- type PullReviewRequestOptions
- type PushMirror
- type PushPayload
- type PusherType
- type Reaction
- type Reference
- type Release
- type ReleasePayload
- type RenameUserOption
- type RepoCollaboratorPermission
- type RepoCommit
- type RepoTopicOptions
- type RepoTransfer
- type Repository
- type RepositoryMeta
- type RepositoryPayload
- type ReviewPayload
- type ReviewStateType
- type SearchError
- type SearchResults
- type Secret
- type ServerVersion
- type StateType
- type StopWatch
- type StopWatches
- type SubmitPullReviewOptions
- type Tag
- type TaskStatus
- type TaskType
- type Team
- type TimelineComment
- type TopicName
- type TopicResponse
- type TrackedTime
- type TrackedTimeList
- type TransferRepoOption
- type UpdateFileOptions
- type UpdateRepoAvatarOption
- type UpdateUserAvatarOption
- type User
- type UserSettings
- type UserSettingsOptions
- type VerifyGPGKeyOption
- type VisibleType
- type WatchInfo
- type WikiCommit
- type WikiCommitList
- type WikiPage
- type WikiPageMetaData
- type WikiPayload
Constants ¶
This section is empty.
Variables ¶
var ErrInvalidReceiveHook = errors.New("Invalid JSON payload received over webhook")
ErrInvalidReceiveHook FIXME
var SupportedFullGitService = []GitServiceType{ GithubService, GitlabService, GiteaService, GogsService, OneDevService, GitBucketService, CodebaseService, }
SupportedFullGitService represents all git services supported to migrate issues/labels/prs and etc. TODO: add to this list after new git services added
var VisibilityModes = map[string]VisibleType{ "public": VisibleTypePublic, "limited": VisibleTypeLimited, "private": VisibleTypePrivate, }
VisibilityModes is a map of Visibility types
Functions ¶
func ExtractKeysFromMapString ¶
func ExtractKeysFromMapString(in map[string]VisibleType) (keys []string)
ExtractKeysFromMapString provides a slice of keys from map
Types ¶
type AccessToken ¶
type AccessToken struct { ID int64 `json:"id"` Name string `json:"name"` Token string `json:"sha1"` TokenLastEight string `json:"token_last_eight"` Scopes []string `json:"scopes"` }
AccessToken represents an API access token. swagger:response AccessToken
type AccessTokenList ¶
type AccessTokenList []*AccessToken
AccessTokenList represents a list of API access token. swagger:response AccessTokenList
type Activity ¶
type Activity struct { ID int64 `json:"id"` UserID int64 `json:"user_id"` // Receiver user OpType string `json:"op_type"` ActUserID int64 `json:"act_user_id"` ActUser *User `json:"act_user"` RepoID int64 `json:"repo_id"` Repo *Repository `json:"repo"` CommentID int64 `json:"comment_id"` Comment *Comment `json:"comment"` RefName string `json:"ref_name"` IsPrivate bool `json:"is_private"` Content string `json:"content"` Created time.Time `json:"created"` }
type AddCollaboratorOption ¶
type AddCollaboratorOption struct {
Permission *string `json:"permission"`
}
AddCollaboratorOption options when adding a user as a collaborator of a repository
type AddOrgMembershipOption ¶
type AddOrgMembershipOption struct {
Role string `json:"role" binding:"Required"`
}
AddOrgMembershipOption add user to organization options
type AddTimeOption ¶
type AddTimeOption struct { // time in seconds // required: true Time int64 `json:"time" binding:"Required"` // swagger:strfmt date-time Created time.Time `json:"created"` // User who spent the time (optional) User string `json:"user_name"` }
AddTimeOption options for adding time to an issue
type AnnotatedTag ¶
type AnnotatedTag struct { Tag string `json:"tag"` SHA string `json:"sha"` URL string `json:"url"` Message string `json:"message"` Tagger *CommitUser `json:"tagger"` Object *AnnotatedTagObject `json:"object"` Verification *PayloadCommitVerification `json:"verification"` }
AnnotatedTag represents an annotated tag
type AnnotatedTagObject ¶
type AnnotatedTagObject struct { Type string `json:"type"` URL string `json:"url"` SHA string `json:"sha"` }
AnnotatedTagObject contains meta information of the tag object
type ApplyDiffPatchFileOptions ¶
type ApplyDiffPatchFileOptions struct { DeleteFileOptions // required: true Content string `json:"content"` }
ApplyDiffPatchFileOptions options for applying a diff patch Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
type Attachment ¶
type Attachment struct { ID int64 `json:"id"` Name string `json:"name"` Size int64 `json:"size"` DownloadCount int64 `json:"download_count"` // swagger:strfmt date-time Created time.Time `json:"created_at"` UUID string `json:"uuid"` DownloadURL string `json:"browser_download_url"` }
Attachment a generic attachment swagger:model
type Branch ¶
type Branch struct { Name string `json:"name"` Commit *PayloadCommit `json:"commit"` Protected bool `json:"protected"` RequiredApprovals int64 `json:"required_approvals"` EnableStatusCheck bool `json:"enable_status_check"` StatusCheckContexts []string `json:"status_check_contexts"` UserCanPush bool `json:"user_can_push"` UserCanMerge bool `json:"user_can_merge"` EffectiveBranchProtectionName string `json:"effective_branch_protection_name"` }
Branch represents a repository branch
type BranchProtection ¶
type BranchProtection struct { // Deprecated: true BranchName string `json:"branch_name"` RuleName string `json:"rule_name"` EnablePush bool `json:"enable_push"` EnablePushWhitelist bool `json:"enable_push_whitelist"` PushWhitelistUsernames []string `json:"push_whitelist_usernames"` PushWhitelistTeams []string `json:"push_whitelist_teams"` PushWhitelistDeployKeys bool `json:"push_whitelist_deploy_keys"` EnableMergeWhitelist bool `json:"enable_merge_whitelist"` MergeWhitelistUsernames []string `json:"merge_whitelist_usernames"` MergeWhitelistTeams []string `json:"merge_whitelist_teams"` EnableStatusCheck bool `json:"enable_status_check"` StatusCheckContexts []string `json:"status_check_contexts"` RequiredApprovals int64 `json:"required_approvals"` EnableApprovalsWhitelist bool `json:"enable_approvals_whitelist"` ApprovalsWhitelistUsernames []string `json:"approvals_whitelist_username"` ApprovalsWhitelistTeams []string `json:"approvals_whitelist_teams"` BlockOnRejectedReviews bool `json:"block_on_rejected_reviews"` BlockOnOfficialReviewRequests bool `json:"block_on_official_review_requests"` BlockOnOutdatedBranch bool `json:"block_on_outdated_branch"` DismissStaleApprovals bool `json:"dismiss_stale_approvals"` RequireSignedCommits bool `json:"require_signed_commits"` ProtectedFilePatterns string `json:"protected_file_patterns"` UnprotectedFilePatterns string `json:"unprotected_file_patterns"` // swagger:strfmt date-time Created time.Time `json:"created_at"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` }
BranchProtection represents a branch protection for a repository
type ChangeFileOperation ¶
type ChangeFileOperation struct { // indicates what to do with the file // required: true // enum: create,update,delete Operation string `json:"operation" binding:"Required"` // path to the existing or new file // required: true Path string `json:"path" binding:"Required;MaxSize(500)"` // new or updated file content, must be base64 encoded ContentBase64 string `json:"content"` // sha is the SHA for the file that already exists, required for update or delete SHA string `json:"sha"` // old path of the file to move FromPath string `json:"from_path"` }
ChangeFileOperation for creating, updating or deleting a file
type ChangeFilesOptions ¶
type ChangeFilesOptions struct { FileOptions // list of file operations // required: true Files []*ChangeFileOperation `json:"files" binding:"Required"` }
ChangeFilesOptions options for creating, updating or deleting multiple files Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
func (*ChangeFilesOptions) Branch ¶
func (o *ChangeFilesOptions) Branch() string
Branch returns branch name
type ChangedFile ¶
type ChangedFile struct { Filename string `json:"filename"` PreviousFilename string `json:"previous_filename,omitempty"` Status string `json:"status"` Additions int `json:"additions"` Deletions int `json:"deletions"` Changes int `json:"changes"` HTMLURL string `json:"html_url,omitempty"` ContentsURL string `json:"contents_url,omitempty"` RawURL string `json:"raw_url,omitempty"` }
ChangedFile store information about files affected by the pull request
type ChangesFromPayload ¶
type ChangesFromPayload struct {
From string `json:"from"`
}
ChangesFromPayload FIXME
type ChangesPayload ¶
type ChangesPayload struct { Title *ChangesFromPayload `json:"title,omitempty"` Body *ChangesFromPayload `json:"body,omitempty"` Ref *ChangesFromPayload `json:"ref,omitempty"` }
ChangesPayload represents the payload information of issue change
type CombinedStatus ¶
type CombinedStatus struct { State CommitStatusState `json:"state"` SHA string `json:"sha"` TotalCount int `json:"total_count"` Statuses []*CommitStatus `json:"statuses"` Repository *Repository `json:"repository"` CommitURL string `json:"commit_url"` URL string `json:"url"` }
CombinedStatus holds the combined state of several statuses for a single commit
type Comment ¶
type Comment struct { ID int64 `json:"id"` HTMLURL string `json:"html_url"` PRURL string `json:"pull_request_url"` IssueURL string `json:"issue_url"` Poster *User `json:"user"` OriginalAuthor string `json:"original_author"` OriginalAuthorID int64 `json:"original_author_id"` Body string `json:"body"` Attachments []*Attachment `json:"assets"` // swagger:strfmt date-time Created time.Time `json:"created_at"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` }
Comment represents a comment on a commit or issue
type Commit ¶
type Commit struct { *CommitMeta HTMLURL string `json:"html_url"` RepoCommit *RepoCommit `json:"commit"` Author *User `json:"author"` Committer *User `json:"committer"` Parents []*CommitMeta `json:"parents"` Files []*CommitAffectedFiles `json:"files"` Stats *CommitStats `json:"stats"` }
Commit contains information generated from a Git commit.
type CommitAffectedFiles ¶
CommitAffectedFiles store information about files affected by the commit
type CommitDateOptions ¶
type CommitDateOptions struct { // swagger:strfmt date-time Author time.Time `json:"author"` // swagger:strfmt date-time Committer time.Time `json:"committer"` }
CommitDateOptions store dates for GIT_AUTHOR_DATE and GIT_COMMITTER_DATE
type CommitMeta ¶
type CommitMeta struct { URL string `json:"url"` SHA string `json:"sha"` // swagger:strfmt date-time Created time.Time `json:"created"` }
CommitMeta contains meta information of a commit in terms of API.
type CommitStats ¶
type CommitStats struct { Total int `json:"total"` Additions int `json:"additions"` Deletions int `json:"deletions"` }
CommitStats is statistics for a RepoCommit
type CommitStatus ¶
type CommitStatus struct { ID int64 `json:"id"` State CommitStatusState `json:"status"` TargetURL string `json:"target_url"` Description string `json:"description"` URL string `json:"url"` Context string `json:"context"` Creator *User `json:"creator"` // swagger:strfmt date-time Created time.Time `json:"created_at"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` }
CommitStatus holds a single status of a single Commit
type CommitStatusState ¶
type CommitStatusState string
CommitStatusState holds the state of a CommitStatus It can be "pending", "success", "error" and "failure"
const ( // CommitStatusPending is for when the CommitStatus is Pending CommitStatusPending CommitStatusState = "pending" // CommitStatusSuccess is for when the CommitStatus is Success CommitStatusSuccess CommitStatusState = "success" // CommitStatusError is for when the CommitStatus is Error CommitStatusError CommitStatusState = "error" // CommitStatusFailure is for when the CommitStatus is Failure CommitStatusFailure CommitStatusState = "failure" // CommitStatusWarning is for when the CommitStatus is Warning CommitStatusWarning CommitStatusState = "warning" )
func (CommitStatusState) IsError ¶
func (css CommitStatusState) IsError() bool
IsError represents if commit status state is error
func (CommitStatusState) IsFailure ¶
func (css CommitStatusState) IsFailure() bool
IsFailure represents if commit status state is failure
func (CommitStatusState) IsPending ¶
func (css CommitStatusState) IsPending() bool
IsPending represents if commit status state is pending
func (CommitStatusState) IsSuccess ¶
func (css CommitStatusState) IsSuccess() bool
IsSuccess represents if commit status state is success
func (CommitStatusState) IsWarning ¶
func (css CommitStatusState) IsWarning() bool
IsWarning represents if commit status state is warning
func (CommitStatusState) NoBetterThan ¶
func (css CommitStatusState) NoBetterThan(css2 CommitStatusState) bool
NoBetterThan returns true if this State is no better than the given State This function only handles the states defined in CommitStatusPriorities
func (CommitStatusState) String ¶
func (css CommitStatusState) String() string
type CommitUser ¶
CommitUser contains information of a user in the context of a commit.
type ContentsResponse ¶
type ContentsResponse struct { Name string `json:"name"` Path string `json:"path"` SHA string `json:"sha"` LastCommitSHA string `json:"last_commit_sha"` // `type` will be `file`, `dir`, `symlink`, or `submodule` Type string `json:"type"` Size int64 `json:"size"` // `encoding` is populated when `type` is `file`, otherwise null Encoding *string `json:"encoding"` // `content` is populated when `type` is `file`, otherwise null Content *string `json:"content"` // `target` is populated when `type` is `symlink`, otherwise null Target *string `json:"target"` URL *string `json:"url"` HTMLURL *string `json:"html_url"` GitURL *string `json:"git_url"` DownloadURL *string `json:"download_url"` // `submodule_git_url` is populated when `type` is `submodule`, otherwise null SubmoduleGitURL *string `json:"submodule_git_url"` Links *FileLinksResponse `json:"_links"` }
ContentsResponse contains information about a repo's entry's (dir, file, symlink, submodule) metadata and content
type CreateAccessTokenOption ¶
type CreateAccessTokenOption struct { // required: true Name string `json:"name" binding:"Required"` Scopes []string `json:"scopes"` }
CreateAccessTokenOption options when create access token
type CreateBranchProtectionOption ¶
type CreateBranchProtectionOption struct { // Deprecated: true BranchName string `json:"branch_name"` RuleName string `json:"rule_name"` EnablePush bool `json:"enable_push"` EnablePushWhitelist bool `json:"enable_push_whitelist"` PushWhitelistUsernames []string `json:"push_whitelist_usernames"` PushWhitelistTeams []string `json:"push_whitelist_teams"` PushWhitelistDeployKeys bool `json:"push_whitelist_deploy_keys"` EnableMergeWhitelist bool `json:"enable_merge_whitelist"` MergeWhitelistUsernames []string `json:"merge_whitelist_usernames"` MergeWhitelistTeams []string `json:"merge_whitelist_teams"` EnableStatusCheck bool `json:"enable_status_check"` StatusCheckContexts []string `json:"status_check_contexts"` RequiredApprovals int64 `json:"required_approvals"` EnableApprovalsWhitelist bool `json:"enable_approvals_whitelist"` ApprovalsWhitelistUsernames []string `json:"approvals_whitelist_username"` ApprovalsWhitelistTeams []string `json:"approvals_whitelist_teams"` BlockOnRejectedReviews bool `json:"block_on_rejected_reviews"` BlockOnOfficialReviewRequests bool `json:"block_on_official_review_requests"` BlockOnOutdatedBranch bool `json:"block_on_outdated_branch"` DismissStaleApprovals bool `json:"dismiss_stale_approvals"` RequireSignedCommits bool `json:"require_signed_commits"` ProtectedFilePatterns string `json:"protected_file_patterns"` UnprotectedFilePatterns string `json:"unprotected_file_patterns"` }
CreateBranchProtectionOption options for creating a branch protection
type CreateBranchRepoOption ¶
type CreateBranchRepoOption struct { // Name of the branch to create // // required: true // unique: true BranchName string `json:"new_branch_name" binding:"Required;GitRefName;MaxSize(100)"` // Deprecated: true // Name of the old branch to create from // // unique: true OldBranchName string `json:"old_branch_name" binding:"GitRefName;MaxSize(100)"` // Name of the old branch/tag/commit to create from // // unique: true OldRefName string `json:"old_ref_name" binding:"GitRefName;MaxSize(100)"` }
CreateBranchRepoOption options when creating a branch in a repository swagger:model
type CreateEmailOption ¶
type CreateEmailOption struct { // email addresses to add Emails []string `json:"emails"` }
CreateEmailOption options when creating email addresses
type CreateFileOptions ¶
type CreateFileOptions struct { FileOptions // content must be base64 encoded // required: true ContentBase64 string `json:"content"` }
CreateFileOptions options for creating files Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
func (*CreateFileOptions) Branch ¶
func (o *CreateFileOptions) Branch() string
Branch returns branch name
type CreateForkOption ¶
type CreateForkOption struct { // organization name, if forking into an organization Organization *string `json:"organization"` // name of the forked repository Name *string `json:"name"` }
CreateForkOption options for creating a fork
type CreateGPGKeyOption ¶
type CreateGPGKeyOption struct { // An armored GPG key to add // // required: true // unique: true ArmoredKey string `json:"armored_public_key" binding:"Required"` Signature string `json:"armored_signature,omitempty"` }
CreateGPGKeyOption options create user GPG key
type CreateHookOption ¶
type CreateHookOption struct { // required: true // enum: dingtalk,discord,gitea,gogs,msteams,slack,telegram,feishu,wechatwork,packagist Type string `json:"type" binding:"Required"` // required: true Config CreateHookOptionConfig `json:"config" binding:"Required"` Events []string `json:"events"` BranchFilter string `json:"branch_filter" binding:"GlobPattern"` AuthorizationHeader string `json:"authorization_header"` // default: false Active bool `json:"active"` }
CreateHookOption options when create a hook
type CreateHookOptionConfig ¶
CreateHookOptionConfig has all config options in it required are "content_type" and "url" Required
type CreateIssueCommentOption ¶
type CreateIssueCommentOption struct { // required:true Body string `json:"body" binding:"Required"` }
CreateIssueCommentOption options for creating a comment on an issue
type CreateIssueOption ¶
type CreateIssueOption struct { // required:true Title string `json:"title" binding:"Required"` Body string `json:"body"` Ref string `json:"ref"` // deprecated Assignee string `json:"assignee"` Assignees []string `json:"assignees"` // swagger:strfmt date-time Deadline *time.Time `json:"due_date"` // milestone id Milestone int64 `json:"milestone"` // list of label ids Labels []int64 `json:"labels"` Closed bool `json:"closed"` }
CreateIssueOption options to create one issue
type CreateKeyOption ¶
type CreateKeyOption struct { // Title of the key to add // // required: true // unique: true Title string `json:"title" binding:"Required"` // An armored SSH key to add // // required: true // unique: true Key string `json:"key" binding:"Required"` // Describe if the key has only read access or read/write // // required: false ReadOnly bool `json:"read_only"` }
CreateKeyOption options when creating a key
type CreateLabelOption ¶
type CreateLabelOption struct { // required:true Name string `json:"name" binding:"Required"` // example: false Exclusive bool `json:"exclusive"` // required:true // example: #00aabb Color string `json:"color" binding:"Required"` Description string `json:"description"` // example: false IsArchived bool `json:"is_archived"` }
CreateLabelOption options for creating a label
type CreateMilestoneOption ¶
type CreateMilestoneOption struct { Title string `json:"title"` Description string `json:"description"` // swagger:strfmt date-time Deadline *time.Time `json:"due_on"` // enum: open,closed State string `json:"state"` }
CreateMilestoneOption options for creating a milestone
type CreateOAuth2ApplicationOptions ¶
type CreateOAuth2ApplicationOptions struct { Name string `json:"name" binding:"Required"` ConfidentialClient bool `json:"confidential_client"` RedirectURIs []string `json:"redirect_uris" binding:"Required"` }
CreateOAuth2ApplicationOptions holds options to create an oauth2 application
type CreateOrUpdateSecretOption ¶
type CreateOrUpdateSecretOption struct { // Data of the secret to update // // required: true Data string `json:"data" binding:"Required"` }
CreateOrUpdateSecretOption options when creating or updating secret swagger:model
type CreateOrgOption ¶
type CreateOrgOption struct { // required: true UserName string `json:"username" binding:"Required;Username;MaxSize(40)"` FullName string `json:"full_name" binding:"MaxSize(100)"` Email string `json:"email" binding:"MaxSize(255)"` Description string `json:"description" binding:"MaxSize(255)"` Website string `json:"website" binding:"ValidUrl;MaxSize(255)"` Location string `json:"location" binding:"MaxSize(50)"` // possible values are `public` (default), `limited` or `private` // enum: public,limited,private Visibility string `json:"visibility" binding:"In(,public,limited,private)"` RepoAdminChangeTeamAccess bool `json:"repo_admin_change_team_access"` }
CreateOrgOption options for creating an organization
type CreatePayload ¶
type CreatePayload struct { Sha string `json:"sha"` Ref string `json:"ref"` RefType string `json:"ref_type"` Repo *Repository `json:"repository"` Sender *User `json:"sender"` }
CreatePayload FIXME
func ParseCreateHook ¶
func ParseCreateHook(raw []byte) (*CreatePayload, error)
ParseCreateHook parses create event hook content.
func (*CreatePayload) JSONPayload ¶
func (p *CreatePayload) JSONPayload() ([]byte, error)
JSONPayload return payload information
type CreatePullRequestOption ¶
type CreatePullRequestOption struct { Head string `json:"head" binding:"Required"` Base string `json:"base" binding:"Required"` Title string `json:"title" binding:"Required"` Body string `json:"body"` Assignee string `json:"assignee"` Assignees []string `json:"assignees"` Milestone int64 `json:"milestone"` Labels []int64 `json:"labels"` // swagger:strfmt date-time Deadline *time.Time `json:"due_date"` }
CreatePullRequestOption options when creating a pull request
type CreatePullReviewComment ¶
type CreatePullReviewComment struct { // the tree path Path string `json:"path"` Body string `json:"body"` // if comment to old file line or 0 OldLineNum int64 `json:"old_position"` // if comment to new file line or 0 NewLineNum int64 `json:"new_position"` }
CreatePullReviewComment represent a review comment for creation api
type CreatePullReviewOptions ¶
type CreatePullReviewOptions struct { Event ReviewStateType `json:"event"` Body string `json:"body"` CommitID string `json:"commit_id"` Comments []CreatePullReviewComment `json:"comments"` }
CreatePullReviewOptions are options to create a pull review
type CreatePushMirrorOption ¶
type CreatePushMirrorOption struct { RemoteAddress string `json:"remote_address"` RemoteUsername string `json:"remote_username"` RemotePassword string `json:"remote_password"` Interval string `json:"interval"` SyncOnCommit bool `json:"sync_on_commit"` }
CreatePushMirrorOption represents need information to create a push mirror of a repository.
type CreateReleaseOption ¶
type CreateReleaseOption struct { // required: true TagName string `json:"tag_name" binding:"Required"` Target string `json:"target_commitish"` Title string `json:"name"` Note string `json:"body"` IsDraft bool `json:"draft"` IsPrerelease bool `json:"prerelease"` }
CreateReleaseOption options when creating a release
type CreateRepoOption ¶
type CreateRepoOption struct { // Name of the repository to create // // required: true // unique: true Name string `json:"name" binding:"Required;AlphaDashDot;MaxSize(100)"` // Description of the repository to create Description string `json:"description" binding:"MaxSize(2048)"` // Whether the repository is private Private bool `json:"private"` // Label-Set to use IssueLabels string `json:"issue_labels"` // Whether the repository should be auto-initialized? AutoInit bool `json:"auto_init"` // Whether the repository is template Template bool `json:"template"` // Gitignores to use Gitignores string `json:"gitignores"` // License to use License string `json:"license"` // Readme of the repository to create Readme string `json:"readme"` // DefaultBranch of the repository (used when initializes and in template) DefaultBranch string `json:"default_branch" binding:"GitRefName;MaxSize(100)"` // TrustModel of the repository // enum: default,collaborator,committer,collaboratorcommitter TrustModel string `json:"trust_model"` }
CreateRepoOption options when creating repository swagger:model
type CreateStatusOption ¶
type CreateStatusOption struct { State CommitStatusState `json:"state"` TargetURL string `json:"target_url"` Description string `json:"description"` Context string `json:"context"` }
CreateStatusOption holds the information needed to create a new CommitStatus for a Commit
type CreateTagOption ¶
type CreateTagOption struct { // required: true TagName string `json:"tag_name" binding:"Required"` Message string `json:"message"` Target string `json:"target"` }
CreateTagOption options when creating a tag
type CreateTeamOption ¶
type CreateTeamOption struct { // required: true Name string `json:"name" binding:"Required;AlphaDashDot;MaxSize(30)"` Description string `json:"description" binding:"MaxSize(255)"` IncludesAllRepositories bool `json:"includes_all_repositories"` // enum: read,write,admin Permission string `json:"permission"` // example: ["repo.actions","repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.ext_wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"] // Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions. Units []string `json:"units"` // example: {"repo.actions","repo.packages","repo.code":"read","repo.issues":"write","repo.ext_issues":"none","repo.wiki":"admin","repo.pulls":"owner","repo.releases":"none","repo.projects":"none","repo.ext_wiki":"none"} UnitsMap map[string]string `json:"units_map"` CanCreateOrgRepo bool `json:"can_create_org_repo"` }
CreateTeamOption options for creating a team
type CreateUserOption ¶
type CreateUserOption struct { SourceID int64 `json:"source_id"` LoginName string `json:"login_name"` // required: true Username string `json:"username" binding:"Required;Username;MaxSize(40)"` FullName string `json:"full_name" binding:"MaxSize(100)"` // required: true // swagger:strfmt email Email string `json:"email" binding:"Required;Email;MaxSize(254)"` // required: true Password string `json:"password" binding:"Required;MaxSize(255)"` MustChangePassword *bool `json:"must_change_password"` SendNotify bool `json:"send_notify"` Restricted *bool `json:"restricted"` Visibility string `json:"visibility" binding:"In(,public,limited,private)"` // For explicitly setting the user creation timestamp. Useful when users are // migrated from other systems. When omitted, the user's creation timestamp // will be set to "now". Created *time.Time `json:"created_at"` }
CreateUserOption create user options
type CreateWikiPageOptions ¶
type CreateWikiPageOptions struct { // page title. leave empty to keep unchanged Title string `json:"title"` // content must be base64 encoded ContentBase64 string `json:"content_base64"` // optional commit message summarizing the change Message string `json:"message"` }
CreateWikiPageOptions form for creating wiki
type Cron ¶
type Cron struct { Name string `json:"name"` Schedule string `json:"schedule"` Next time.Time `json:"next"` Prev time.Time `json:"prev"` ExecTimes int64 `json:"exec_times"` }
Cron represents a Cron task
type DeleteEmailOption ¶
type DeleteEmailOption struct { // email addresses to delete Emails []string `json:"emails"` }
DeleteEmailOption options when deleting email addresses
type DeleteFileOptions ¶
type DeleteFileOptions struct { FileOptions // sha is the SHA for the file that already exists // required: true SHA string `json:"sha" binding:"Required"` }
DeleteFileOptions options for deleting files (used for other File structs below) Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
func (*DeleteFileOptions) Branch ¶
func (o *DeleteFileOptions) Branch() string
Branch returns branch name
type DeletePayload ¶
type DeletePayload struct { Ref string `json:"ref"` RefType string `json:"ref_type"` PusherType PusherType `json:"pusher_type"` Repo *Repository `json:"repository"` Sender *User `json:"sender"` }
DeletePayload represents delete payload
func (*DeletePayload) JSONPayload ¶
func (p *DeletePayload) JSONPayload() ([]byte, error)
JSONPayload implements Payload
type DeployKey ¶
type DeployKey struct { ID int64 `json:"id"` KeyID int64 `json:"key_id"` Key string `json:"key"` URL string `json:"url"` Title string `json:"title"` Fingerprint string `json:"fingerprint"` // swagger:strfmt date-time Created time.Time `json:"created_at"` ReadOnly bool `json:"read_only"` Repository *Repository `json:"repository,omitempty"` }
DeployKey a deploy key
type DismissPullReviewOptions ¶
type DismissPullReviewOptions struct { Message string `json:"message"` Priors bool `json:"priors"` }
DismissPullReviewOptions are options to dismiss a pull review
type EditAttachmentOptions ¶
type EditAttachmentOptions struct {
Name string `json:"name"`
}
EditAttachmentOptions options for editing attachments swagger:model
type EditBranchProtectionOption ¶
type EditBranchProtectionOption struct { EnablePush *bool `json:"enable_push"` EnablePushWhitelist *bool `json:"enable_push_whitelist"` PushWhitelistUsernames []string `json:"push_whitelist_usernames"` PushWhitelistTeams []string `json:"push_whitelist_teams"` PushWhitelistDeployKeys *bool `json:"push_whitelist_deploy_keys"` EnableMergeWhitelist *bool `json:"enable_merge_whitelist"` MergeWhitelistUsernames []string `json:"merge_whitelist_usernames"` MergeWhitelistTeams []string `json:"merge_whitelist_teams"` EnableStatusCheck *bool `json:"enable_status_check"` StatusCheckContexts []string `json:"status_check_contexts"` RequiredApprovals *int64 `json:"required_approvals"` EnableApprovalsWhitelist *bool `json:"enable_approvals_whitelist"` ApprovalsWhitelistUsernames []string `json:"approvals_whitelist_username"` ApprovalsWhitelistTeams []string `json:"approvals_whitelist_teams"` BlockOnRejectedReviews *bool `json:"block_on_rejected_reviews"` BlockOnOfficialReviewRequests *bool `json:"block_on_official_review_requests"` BlockOnOutdatedBranch *bool `json:"block_on_outdated_branch"` DismissStaleApprovals *bool `json:"dismiss_stale_approvals"` RequireSignedCommits *bool `json:"require_signed_commits"` ProtectedFilePatterns *string `json:"protected_file_patterns"` UnprotectedFilePatterns *string `json:"unprotected_file_patterns"` }
EditBranchProtectionOption options for editing a branch protection
type EditDeadlineOption ¶
type EditDeadlineOption struct { // required:true // swagger:strfmt date-time Deadline *time.Time `json:"due_date"` }
EditDeadlineOption options for creating a deadline
type EditGitHookOption ¶
type EditGitHookOption struct {
Content string `json:"content"`
}
EditGitHookOption options when modifying one Git hook
type EditHookOption ¶
type EditHookOption struct { Config map[string]string `json:"config"` Events []string `json:"events"` BranchFilter string `json:"branch_filter" binding:"GlobPattern"` AuthorizationHeader string `json:"authorization_header"` Active *bool `json:"active"` }
EditHookOption options when modify one hook
type EditIssueCommentOption ¶
type EditIssueCommentOption struct { // required: true Body string `json:"body" binding:"Required"` }
EditIssueCommentOption options for editing a comment
type EditIssueOption ¶
type EditIssueOption struct { Title string `json:"title"` Body *string `json:"body"` Ref *string `json:"ref"` // deprecated Assignee *string `json:"assignee"` Assignees []string `json:"assignees"` Milestone *int64 `json:"milestone"` State *string `json:"state"` // swagger:strfmt date-time Deadline *time.Time `json:"due_date"` RemoveDeadline *bool `json:"unset_due_date"` }
EditIssueOption options for editing an issue
type EditLabelOption ¶
type EditLabelOption struct { Name *string `json:"name"` // example: false Exclusive *bool `json:"exclusive"` // example: #00aabb Color *string `json:"color"` Description *string `json:"description"` // example: false IsArchived *bool `json:"is_archived"` }
EditLabelOption options for editing a label
type EditMilestoneOption ¶
type EditMilestoneOption struct { Title string `json:"title"` Description *string `json:"description"` State *string `json:"state"` Deadline *time.Time `json:"due_on"` }
EditMilestoneOption options for editing a milestone
type EditOrgOption ¶
type EditOrgOption struct { FullName string `json:"full_name" binding:"MaxSize(100)"` Email string `json:"email" binding:"MaxSize(255)"` Description string `json:"description" binding:"MaxSize(255)"` Website string `json:"website" binding:"ValidUrl;MaxSize(255)"` Location string `json:"location" binding:"MaxSize(50)"` // possible values are `public`, `limited` or `private` // enum: public,limited,private Visibility string `json:"visibility" binding:"In(,public,limited,private)"` RepoAdminChangeTeamAccess *bool `json:"repo_admin_change_team_access"` }
EditOrgOption options for editing an organization
type EditPullRequestOption ¶
type EditPullRequestOption struct { Title string `json:"title"` Body string `json:"body"` Base string `json:"base"` Assignee string `json:"assignee"` Assignees []string `json:"assignees"` Milestone int64 `json:"milestone"` Labels []int64 `json:"labels"` State *string `json:"state"` // swagger:strfmt date-time Deadline *time.Time `json:"due_date"` RemoveDeadline *bool `json:"unset_due_date"` AllowMaintainerEdit *bool `json:"allow_maintainer_edit"` }
EditPullRequestOption options when modify pull request
type EditReactionOption ¶
type EditReactionOption struct {
Reaction string `json:"content"`
}
EditReactionOption contain the reaction type
type EditReleaseOption ¶
type EditReleaseOption struct { TagName string `json:"tag_name"` Target string `json:"target_commitish"` Title string `json:"name"` Note string `json:"body"` IsDraft *bool `json:"draft"` IsPrerelease *bool `json:"prerelease"` }
EditReleaseOption options when editing a release
type EditRepoOption ¶
type EditRepoOption struct { // name of the repository // unique: true Name *string `json:"name,omitempty" binding:"OmitEmpty;AlphaDashDot;MaxSize(100);"` // a short description of the repository. Description *string `json:"description,omitempty" binding:"MaxSize(2048)"` // a URL with more information about the repository. Website *string `json:"website,omitempty" binding:"MaxSize(1024)"` // either `true` to make the repository private or `false` to make it public. // Note: you will get a 422 error if the organization restricts changing repository visibility to organization // owners and a non-owner tries to change the value of private. Private *bool `json:"private,omitempty"` // either `true` to make this repository a template or `false` to make it a normal repository Template *bool `json:"template,omitempty"` // either `true` to enable issues for this repository or `false` to disable them. HasIssues *bool `json:"has_issues,omitempty"` // set this structure to configure internal issue tracker InternalTracker *InternalTracker `json:"internal_tracker,omitempty"` // set this structure to use external issue tracker ExternalTracker *ExternalTracker `json:"external_tracker,omitempty"` // either `true` to enable the wiki for this repository or `false` to disable it. HasWiki *bool `json:"has_wiki,omitempty"` // set this structure to use external wiki instead of internal ExternalWiki *ExternalWiki `json:"external_wiki,omitempty"` // sets the default branch for this repository. DefaultBranch *string `json:"default_branch,omitempty"` // either `true` to allow pull requests, or `false` to prevent pull request. HasPullRequests *bool `json:"has_pull_requests,omitempty"` // either `true` to enable project unit, or `false` to disable them. HasProjects *bool `json:"has_projects,omitempty"` // either `true` to enable releases unit, or `false` to disable them. HasReleases *bool `json:"has_releases,omitempty"` // either `true` to enable packages unit, or `false` to disable them. HasPackages *bool `json:"has_packages,omitempty"` // either `true` to enable actions unit, or `false` to disable them. HasActions *bool `json:"has_actions,omitempty"` // either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace. IgnoreWhitespaceConflicts *bool `json:"ignore_whitespace_conflicts,omitempty"` // either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits. AllowMerge *bool `json:"allow_merge_commits,omitempty"` // either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging. AllowRebase *bool `json:"allow_rebase,omitempty"` // either `true` to allow rebase with explicit merge commits (--no-ff), or `false` to prevent rebase with explicit merge commits. AllowRebaseMerge *bool `json:"allow_rebase_explicit,omitempty"` // either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging. AllowSquash *bool `json:"allow_squash_merge,omitempty"` // either `true` to allow mark pr as merged manually, or `false` to prevent it. AllowManualMerge *bool `json:"allow_manual_merge,omitempty"` // either `true` to enable AutodetectManualMerge, or `false` to prevent it. Note: In some special cases, misjudgments can occur. AutodetectManualMerge *bool `json:"autodetect_manual_merge,omitempty"` // either `true` to allow updating pull request branch by rebase, or `false` to prevent it. AllowRebaseUpdate *bool `json:"allow_rebase_update,omitempty"` // set to `true` to delete pr branch after merge by default DefaultDeleteBranchAfterMerge *bool `json:"default_delete_branch_after_merge,omitempty"` // set to a merge style to be used by this repository: "merge", "rebase", "rebase-merge", or "squash". DefaultMergeStyle *string `json:"default_merge_style,omitempty"` // set to `true` to allow edits from maintainers by default DefaultAllowMaintainerEdit *bool `json:"default_allow_maintainer_edit,omitempty"` // set to `true` to archive this repository. Archived *bool `json:"archived,omitempty"` // set to a string like `8h30m0s` to set the mirror interval time MirrorInterval *string `json:"mirror_interval,omitempty"` // enable prune - remove obsolete remote-tracking references EnablePrune *bool `json:"enable_prune,omitempty"` }
EditRepoOption options when editing a repository's properties swagger:model
type EditTeamOption ¶
type EditTeamOption struct { // required: true Name string `json:"name" binding:"AlphaDashDot;MaxSize(30)"` Description *string `json:"description" binding:"MaxSize(255)"` IncludesAllRepositories *bool `json:"includes_all_repositories"` // enum: read,write,admin Permission string `json:"permission"` // example: ["repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"] // Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions. Units []string `json:"units"` // example: {"repo.code":"read","repo.issues":"write","repo.ext_issues":"none","repo.wiki":"admin","repo.pulls":"owner","repo.releases":"none","repo.projects":"none","repo.ext_wiki":"none"} UnitsMap map[string]string `json:"units_map"` CanCreateOrgRepo *bool `json:"can_create_org_repo"` }
EditTeamOption options for editing a team
type EditUserOption ¶
type EditUserOption struct { // required: true SourceID int64 `json:"source_id"` // required: true LoginName string `json:"login_name" binding:"Required"` // swagger:strfmt email Email *string `json:"email" binding:"MaxSize(254)"` FullName *string `json:"full_name" binding:"MaxSize(100)"` Password string `json:"password" binding:"MaxSize(255)"` MustChangePassword *bool `json:"must_change_password"` Website *string `json:"website" binding:"OmitEmpty;ValidUrl;MaxSize(255)"` Location *string `json:"location" binding:"MaxSize(50)"` Description *string `json:"description" binding:"MaxSize(255)"` Active *bool `json:"active"` Admin *bool `json:"admin"` AllowGitHook *bool `json:"allow_git_hook"` AllowImportLocal *bool `json:"allow_import_local"` MaxRepoCreation *int `json:"max_repo_creation"` ProhibitLogin *bool `json:"prohibit_login"` AllowCreateOrganization *bool `json:"allow_create_organization"` Restricted *bool `json:"restricted"` Visibility string `json:"visibility" binding:"In(,public,limited,private)"` }
EditUserOption edit user options
type Email ¶
type Email struct { // swagger:strfmt email Email string `json:"email"` Verified bool `json:"verified"` Primary bool `json:"primary"` UserID int64 `json:"user_id"` UserName string `json:"username"` }
Email an email address belonging to a user
type ExternalTracker ¶
type ExternalTracker struct { // URL of external issue tracker. ExternalTrackerURL string `json:"external_tracker_url"` // External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index. ExternalTrackerFormat string `json:"external_tracker_format"` // External Issue Tracker Number Format, either `numeric`, `alphanumeric`, or `regexp` ExternalTrackerStyle string `json:"external_tracker_style"` // External Issue Tracker issue regular expression ExternalTrackerRegexpPattern string `json:"external_tracker_regexp_pattern"` }
ExternalTracker represents settings for external tracker swagger:model
type ExternalWiki ¶
type ExternalWiki struct { // URL of external wiki. ExternalWikiURL string `json:"external_wiki_url"` }
ExternalWiki represents setting for external wiki swagger:model
type FileCommitResponse ¶
type FileCommitResponse struct { CommitMeta HTMLURL string `json:"html_url"` Author *CommitUser `json:"author"` Committer *CommitUser `json:"committer"` Parents []*CommitMeta `json:"parents"` Message string `json:"message"` Tree *CommitMeta `json:"tree"` }
FileCommitResponse contains information generated from a Git commit for a repo's file.
type FileDeleteResponse ¶
type FileDeleteResponse struct { Content any `json:"content"` // to be set to nil Commit *FileCommitResponse `json:"commit"` Verification *PayloadCommitVerification `json:"verification"` }
FileDeleteResponse contains information about a repo's file that was deleted
type FileLinksResponse ¶
type FileLinksResponse struct { Self *string `json:"self"` GitURL *string `json:"git"` HTMLURL *string `json:"html"` }
FileLinksResponse contains the links for a repo's file
type FileOptionInterface ¶
type FileOptionInterface interface {
Branch() string
}
FileOptionInterface provides a unified interface for the different file options
type FileOptions ¶
type FileOptions struct { // message (optional) for the commit of this file. if not supplied, a default message will be used Message string `json:"message"` // branch (optional) to base this file from. if not given, the default branch is used BranchName string `json:"branch" binding:"GitRefName;MaxSize(100)"` // new_branch (optional) will make a new branch from `branch` before creating the file NewBranchName string `json:"new_branch" binding:"GitRefName;MaxSize(100)"` // `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used) Author Identity `json:"author"` Committer Identity `json:"committer"` Dates CommitDateOptions `json:"dates"` // Add a Signed-off-by trailer by the committer at the end of the commit log message. Signoff bool `json:"signoff"` }
FileOptions options for all file APIs
type FileResponse ¶
type FileResponse struct { Content *ContentsResponse `json:"content"` Commit *FileCommitResponse `json:"commit"` Verification *PayloadCommitVerification `json:"verification"` }
FileResponse contains information about a repo's file
type FilesResponse ¶
type FilesResponse struct { Files []*ContentsResponse `json:"files"` Commit *FileCommitResponse `json:"commit"` Verification *PayloadCommitVerification `json:"verification"` }
FilesResponse contains information about multiple files from a repo
type ForkPayload ¶
type ForkPayload struct { Forkee *Repository `json:"forkee"` Repo *Repository `json:"repository"` Sender *User `json:"sender"` }
ForkPayload represents fork payload
func (*ForkPayload) JSONPayload ¶
func (p *ForkPayload) JSONPayload() ([]byte, error)
JSONPayload implements Payload
type GPGKey ¶
type GPGKey struct { ID int64 `json:"id"` PrimaryKeyID string `json:"primary_key_id"` KeyID string `json:"key_id"` PublicKey string `json:"public_key"` Emails []*GPGKeyEmail `json:"emails"` SubsKey []*GPGKey `json:"subkeys"` CanSign bool `json:"can_sign"` CanEncryptComms bool `json:"can_encrypt_comms"` CanEncryptStorage bool `json:"can_encrypt_storage"` CanCertify bool `json:"can_certify"` Verified bool `json:"verified"` // swagger:strfmt date-time Created time.Time `json:"created_at,omitempty"` // swagger:strfmt date-time Expires time.Time `json:"expires_at,omitempty"` }
GPGKey a user GPG key to sign commit and tag in repository
type GPGKeyEmail ¶
GPGKeyEmail an email attached to a GPGKey swagger:model GPGKeyEmail
type GeneralAPISettings ¶
type GeneralAPISettings struct { MaxResponseItems int `json:"max_response_items"` DefaultPagingNum int `json:"default_paging_num"` DefaultGitTreesPerPage int `json:"default_git_trees_per_page"` DefaultMaxBlobSize int64 `json:"default_max_blob_size"` }
GeneralAPISettings contains global api settings exposed by it
type GeneralAttachmentSettings ¶
type GeneralAttachmentSettings struct { Enabled bool `json:"enabled"` AllowedTypes string `json:"allowed_types"` MaxSize int64 `json:"max_size"` MaxFiles int `json:"max_files"` }
GeneralAttachmentSettings contains global Attachment settings exposed by API
type GeneralRepoSettings ¶
type GeneralRepoSettings struct { MirrorsDisabled bool `json:"mirrors_disabled"` HTTPGitDisabled bool `json:"http_git_disabled"` MigrationsDisabled bool `json:"migrations_disabled"` StarsDisabled bool `json:"stars_disabled"` TimeTrackingDisabled bool `json:"time_tracking_disabled"` LFSDisabled bool `json:"lfs_disabled"` }
GeneralRepoSettings contains global repository settings exposed by API
type GeneralUISettings ¶
type GeneralUISettings struct { DefaultTheme string `json:"default_theme"` AllowedReactions []string `json:"allowed_reactions"` CustomEmojis []string `json:"custom_emojis"` }
GeneralUISettings contains global ui settings exposed by API
type GenerateRepoOption ¶
type GenerateRepoOption struct { // The organization or person who will own the new repository // // required: true Owner string `json:"owner"` // Name of the repository to create // // required: true // unique: true Name string `json:"name" binding:"Required;AlphaDashDot;MaxSize(100)"` // Default branch of the new repository DefaultBranch string `json:"default_branch"` // Description of the repository to create Description string `json:"description" binding:"MaxSize(2048)"` // Whether the repository is private Private bool `json:"private"` // include git content of default branch in template repo GitContent bool `json:"git_content"` // include topics in template repo Topics bool `json:"topics"` // include git hooks in template repo GitHooks bool `json:"git_hooks"` // include webhooks in template repo Webhooks bool `json:"webhooks"` // include avatar of the template repo Avatar bool `json:"avatar"` // include labels in template repo Labels bool `json:"labels"` // include protected branches in template repo ProtectedBranch bool `json:"protected_branch"` }
GenerateRepoOption options when creating repository using a template swagger:model
type GitBlobResponse ¶
type GitBlobResponse struct { Content string `json:"content"` Encoding string `json:"encoding"` URL string `json:"url"` SHA string `json:"sha"` Size int64 `json:"size"` }
GitBlobResponse represents a git blob
type GitEntry ¶
type GitEntry struct { Path string `json:"path"` Mode string `json:"mode"` Type string `json:"type"` Size int64 `json:"size"` SHA string `json:"sha"` URL string `json:"url"` }
GitEntry represents a git tree
type GitHook ¶
type GitHook struct { Name string `json:"name"` IsActive bool `json:"is_active"` Content string `json:"content,omitempty"` }
GitHook represents a Git repository hook
type GitServiceType ¶
type GitServiceType int
GitServiceType represents a git services
const ( NotMigrated GitServiceType = iota // 0 not migrated from external sites PlainGitService // 1 plain git services GithubService // 2 github.com GiteaService // 3 gitea services GitlabService // 4 gitlab services GogsService // 5 gogs services OneDevService // 6 onedev services GitBucketService // 7 gitbucket services CodebaseService // 8 codebase services )
enumerate all GitServiceType
func (GitServiceType) Name ¶
func (gt GitServiceType) Name() string
Name represents the services type's name WARNNING: the name have to be equal to that on goth's library
func (GitServiceType) Title ¶
func (gt GitServiceType) Title() string
Title represents the services type's proper title
func (GitServiceType) TokenAuth ¶
func (gt GitServiceType) TokenAuth() bool
TokenAuth represents whether a services type supports token-based auth
type GitTreeResponse ¶
type GitTreeResponse struct { SHA string `json:"sha"` URL string `json:"url"` Entries []GitEntry `json:"tree"` Truncated bool `json:"truncated"` Page int `json:"page"` TotalCount int `json:"total_count"` }
GitTreeResponse returns a git tree
type GitignoreTemplateInfo ¶
GitignoreTemplateInfo name and text of a gitignore template
type Hook ¶
type Hook struct { ID int64 `json:"id"` Type string `json:"type"` BranchFilter string `json:"branch_filter"` URL string `json:"-"` Config map[string]string `json:"config"` Events []string `json:"events"` AuthorizationHeader string `json:"authorization_header"` Active bool `json:"active"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` // swagger:strfmt date-time Created time.Time `json:"created_at"` }
Hook a hook is a web hook when one repository changed
type HookIssueAction ¶
type HookIssueAction string
HookIssueAction FIXME
const ( // HookIssueOpened opened HookIssueOpened HookIssueAction = "opened" // HookIssueClosed closed HookIssueClosed HookIssueAction = "closed" // HookIssueReOpened reopened HookIssueReOpened HookIssueAction = "reopened" // HookIssueEdited edited HookIssueEdited HookIssueAction = "edited" // HookIssueAssigned assigned HookIssueAssigned HookIssueAction = "assigned" // HookIssueUnassigned unassigned HookIssueUnassigned HookIssueAction = "unassigned" // HookIssueLabelUpdated label_updated HookIssueLabelUpdated HookIssueAction = "label_updated" // HookIssueLabelCleared label_cleared HookIssueLabelCleared HookIssueAction = "label_cleared" // HookIssueSynchronized synchronized HookIssueSynchronized HookIssueAction = "synchronized" // HookIssueMilestoned is an issue action for when a milestone is set on an issue. HookIssueMilestoned HookIssueAction = "milestoned" // HookIssueDemilestoned is an issue action for when a milestone is cleared on an issue. HookIssueDemilestoned HookIssueAction = "demilestoned" // HookIssueReviewed is an issue action for when a pull request is reviewed HookIssueReviewed HookIssueAction = "reviewed" // HookIssueReviewRequested is an issue action for when a reviewer is requested for a pull request. HookIssueReviewRequested HookIssueAction = "review_requested" // HookIssueReviewRequestRemoved is an issue action for removing a review request to someone on a pull request. HookIssueReviewRequestRemoved HookIssueAction = "review_request_removed" )
type HookIssueCommentAction ¶
type HookIssueCommentAction string
HookIssueCommentAction defines hook issue comment action
const ( HookIssueCommentCreated HookIssueCommentAction = "created" HookIssueCommentEdited HookIssueCommentAction = "edited" HookIssueCommentDeleted HookIssueCommentAction = "deleted" )
all issue comment actions
type HookPackageAction ¶
type HookPackageAction string
HookPackageAction an action that happens to a package
const ( // HookPackageCreated created HookPackageCreated HookPackageAction = "created" // HookPackageDeleted deleted HookPackageDeleted HookPackageAction = "deleted" )
type HookReleaseAction ¶
type HookReleaseAction string
HookReleaseAction defines hook release action type
const ( HookReleasePublished HookReleaseAction = "published" HookReleaseUpdated HookReleaseAction = "updated" HookReleaseDeleted HookReleaseAction = "deleted" )
all release actions
type HookRepoAction ¶
type HookRepoAction string
HookRepoAction an action that happens to a repo
const ( // HookRepoCreated created HookRepoCreated HookRepoAction = "created" // HookRepoDeleted deleted HookRepoDeleted HookRepoAction = "deleted" )
type HookWikiAction ¶
type HookWikiAction string
HookWikiAction an action that happens to a wiki page
const ( // HookWikiCreated created HookWikiCreated HookWikiAction = "created" // HookWikiEdited edited HookWikiEdited HookWikiAction = "edited" // HookWikiDeleted deleted HookWikiDeleted HookWikiAction = "deleted" )
type Identity ¶
type Identity struct { Name string `json:"name" binding:"MaxSize(100)"` // swagger:strfmt email Email string `json:"email" binding:"MaxSize(254)"` }
Identity for a person's identity like an author or committer
type InternalTracker ¶
type InternalTracker struct { // Enable time tracking (Built-in issue tracker) EnableTimeTracker bool `json:"enable_time_tracker"` // Let only contributors track time (Built-in issue tracker) AllowOnlyContributorsToTrackTime bool `json:"allow_only_contributors_to_track_time"` // Enable dependencies for issues and pull requests (Built-in issue tracker) EnableIssueDependencies bool `json:"enable_issue_dependencies"` }
InternalTracker represents settings for internal tracker swagger:model
type Issue ¶
type Issue struct { ID int64 `json:"id"` URL string `json:"url"` HTMLURL string `json:"html_url"` Index int64 `json:"number"` Poster *User `json:"user"` OriginalAuthor string `json:"original_author"` OriginalAuthorID int64 `json:"original_author_id"` Title string `json:"title"` Body string `json:"body"` Ref string `json:"ref"` Attachments []*Attachment `json:"assets"` Labels []*Label `json:"labels"` Milestone *Milestone `json:"milestone"` // deprecated Assignee *User `json:"assignee"` Assignees []*User `json:"assignees"` // Whether the issue is open or closed // // type: string // enum: open,closed State StateType `json:"state"` IsLocked bool `json:"is_locked"` Comments int `json:"comments"` // swagger:strfmt date-time Created time.Time `json:"created_at"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` // swagger:strfmt date-time Closed *time.Time `json:"closed_at"` // swagger:strfmt date-time Deadline *time.Time `json:"due_date"` PullRequest *PullRequestMeta `json:"pull_request"` Repo *RepositoryMeta `json:"repository"` PinOrder int `json:"pin_order"` }
Issue represents an issue in a repository swagger:model
type IssueCommentPayload ¶
type IssueCommentPayload struct { Action HookIssueCommentAction `json:"action"` Issue *Issue `json:"issue"` Comment *Comment `json:"comment"` Changes *ChangesPayload `json:"changes,omitempty"` Repository *Repository `json:"repository"` Sender *User `json:"sender"` IsPull bool `json:"is_pull"` }
IssueCommentPayload represents a payload information of issue comment event.
func (*IssueCommentPayload) JSONPayload ¶
func (p *IssueCommentPayload) JSONPayload() ([]byte, error)
JSONPayload implements Payload
type IssueConfig ¶
type IssueConfig struct { BlankIssuesEnabled bool `json:"blank_issues_enabled" yaml:"blank_issues_enabled"` ContactLinks []IssueConfigContactLink `json:"contact_links" yaml:"contact_links"` }
type IssueConfigContactLink ¶
type IssueConfigValidation ¶
type IssueDeadline ¶
IssueDeadline represents an issue deadline swagger:model
type IssueFormField ¶
type IssueFormField struct { Type IssueFormFieldType `json:"type" yaml:"type"` ID string `json:"id" yaml:"id"` Attributes map[string]any `json:"attributes" yaml:"attributes"` Validations map[string]any `json:"validations" yaml:"validations"` }
IssueFormField represents a form field swagger:model
type IssueFormFieldType ¶
type IssueFormFieldType string
IssueFormFieldType defines issue form field type, can be "markdown", "textarea", "input", "dropdown" or "checkboxes"
const ( IssueFormFieldTypeMarkdown IssueFormFieldType = "markdown" IssueFormFieldTypeTextarea IssueFormFieldType = "textarea" IssueFormFieldTypeInput IssueFormFieldType = "input" IssueFormFieldTypeDropdown IssueFormFieldType = "dropdown" IssueFormFieldTypeCheckboxes IssueFormFieldType = "checkboxes" )
type IssueLabelsOption ¶
type IssueLabelsOption struct { // list of label IDs Labels []int64 `json:"labels"` }
IssueLabelsOption a collection of labels
type IssueMeta ¶
type IssueMeta struct { Index int64 `json:"index"` Owner string `json:"owner"` Name string `json:"repo"` }
IssueMeta basic issue information swagger:model
type IssuePayload ¶
type IssuePayload struct { Action HookIssueAction `json:"action"` Index int64 `json:"number"` Changes *ChangesPayload `json:"changes,omitempty"` Issue *Issue `json:"issue"` Repository *Repository `json:"repository"` Sender *User `json:"sender"` CommitID string `json:"commit_id"` }
IssuePayload represents the payload information that is sent along with an issue event.
func (*IssuePayload) JSONPayload ¶
func (p *IssuePayload) JSONPayload() ([]byte, error)
JSONPayload encodes the IssuePayload to JSON, with an indentation of two spaces.
type IssueTemplate ¶
type IssueTemplate struct { Name string `json:"name" yaml:"name"` Title string `json:"title" yaml:"title"` About string `json:"about" yaml:"about"` // Using "description" in a template file is compatible Labels IssueTemplateLabels `json:"labels" yaml:"labels"` Ref string `json:"ref" yaml:"ref"` Content string `json:"content" yaml:"-"` Fields []*IssueFormField `json:"body" yaml:"body"` FileName string `json:"file_name" yaml:"-"` }
IssueTemplate represents an issue template for a repository swagger:model
func (IssueTemplate) Type ¶
func (it IssueTemplate) Type() IssueTemplateType
Type returns the type of IssueTemplate, can be "md", "yaml" or empty for known
type IssueTemplateLabels ¶
type IssueTemplateLabels []string
func (*IssueTemplateLabels) UnmarshalYAML ¶
func (l *IssueTemplateLabels) UnmarshalYAML(value *yaml.Node) error
type IssueTemplateType ¶
type IssueTemplateType string
IssueTemplateType defines issue template type
const ( IssueTemplateTypeMarkdown IssueTemplateType = "md" IssueTemplateTypeYaml IssueTemplateType = "yaml" )
type LFSLock ¶
type LFSLock struct { ID string `json:"id"` Path string `json:"path"` LockedAt time.Time `json:"locked_at"` Owner *LFSLockOwner `json:"owner"` }
LFSLock represent a lock for use with the locks API.
type LFSLockDeleteRequest ¶
type LFSLockDeleteRequest struct {
Force bool `json:"force"`
}
LFSLockDeleteRequest contains params of a delete request https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#delete-lock
type LFSLockError ¶
type LFSLockError struct { Message string `json:"message"` Lock *LFSLock `json:"lock,omitempty"` Documentation string `json:"documentation_url,omitempty"` RequestID string `json:"request_id,omitempty"` }
LFSLockError contains information on the error that occurs
type LFSLockList ¶
type LFSLockList struct { Locks []*LFSLock `json:"locks"` Next string `json:"next_cursor,omitempty"` }
LFSLockList represent a list of lock requested https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#list-locks
type LFSLockListVerify ¶
type LFSLockListVerify struct { Ours []*LFSLock `json:"ours"` Theirs []*LFSLock `json:"theirs"` Next string `json:"next_cursor,omitempty"` }
LFSLockListVerify represent a list of lock verification requested https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#list-locks-for-verification
type LFSLockOwner ¶
type LFSLockOwner struct {
Name string `json:"name"`
}
LFSLockOwner represent a lock owner for use with the locks API.
type LFSLockRequest ¶
type LFSLockRequest struct {
Path string `json:"path"`
}
LFSLockRequest contains the path of the lock to create https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#create-lock
type LFSLockResponse ¶
type LFSLockResponse struct {
Lock *LFSLock `json:"lock"`
}
LFSLockResponse represent a lock created https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#create-lock
type Label ¶
type Label struct { ID int64 `json:"id"` Name string `json:"name"` // example: false Exclusive bool `json:"exclusive"` // example: false IsArchived bool `json:"is_archived"` // example: 00aabb Color string `json:"color"` Description string `json:"description"` URL string `json:"url"` }
Label a label to an issue or a pr swagger:model
type LabelTemplate ¶
type LabelTemplate struct { Name string `json:"name"` // example: false Exclusive bool `json:"exclusive"` // example: 00aabb Color string `json:"color"` Description string `json:"description"` }
LabelTemplate info of a Label template
type LicenseTemplateInfo ¶
type LicenseTemplateInfo struct { Key string `json:"key"` Name string `json:"name"` URL string `json:"url"` Implementation string `json:"implementation"` Body string `json:"body"` }
LicensesInfo contains information about a License
type LicensesTemplateListEntry ¶
type LicensesTemplateListEntry struct { Key string `json:"key"` Name string `json:"name"` URL string `json:"url"` }
LicensesListEntry is used for the API
type ListPullRequestsOptions ¶
ListPullRequestsOptions options for listing pull requests
type MarkdownOption ¶
type MarkdownOption struct { // Text markdown to render // // in: body Text string // Mode to render (comment, gfm, markdown) // // in: body Mode string // Context to render // // in: body Context string // Is it a wiki page ? // // in: body Wiki bool }
MarkdownOption markdown options
type MarkdownRender ¶
type MarkdownRender string
MarkdownRender is a rendered markdown document swagger:response MarkdownRender
type MarkupOption ¶
type MarkupOption struct { // Text markup to render // // in: body Text string // Mode to render (comment, gfm, markdown, file) // // in: body Mode string // Context to render // // in: body Context string // Is it a wiki page ? // // in: body Wiki bool // File path for detecting extension in file mode // // in: body FilePath string }
MarkupOption markup options
type MarkupRender ¶
type MarkupRender string
MarkupRender is a rendered markup document swagger:response MarkupRender
type MigrateRepoOptions ¶
type MigrateRepoOptions struct { // required: true CloneAddr string `json:"clone_addr" binding:"Required"` // deprecated (only for backwards compatibility) RepoOwnerID int64 `json:"uid"` // Name of User or Organisation who will own Repo after migration RepoOwner string `json:"repo_owner"` // required: true RepoName string `json:"repo_name" binding:"Required;AlphaDashDot;MaxSize(100)"` // enum: git,github,gitea,gitlab,gogs,onedev,gitbucket,codebase Service string `json:"services"` AuthUsername string `json:"auth_username"` AuthPassword string `json:"auth_password"` AuthToken string `json:"auth_token"` Mirror bool `json:"mirror"` LFS bool `json:"lfs"` LFSEndpoint string `json:"lfs_endpoint"` Private bool `json:"private"` Description string `json:"description" binding:"MaxSize(2048)"` Wiki bool `json:"wiki"` Milestones bool `json:"milestones"` Labels bool `json:"labels"` Issues bool `json:"issues"` PullRequests bool `json:"pull_requests"` Releases bool `json:"releases"` MirrorInterval string `json:"mirror_interval"` }
MigrateRepoOptions options for migrating repository's this is used to interact with api v1
type Milestone ¶
type Milestone struct { ID int64 `json:"id"` Title string `json:"title"` Description string `json:"description"` State StateType `json:"state"` OpenIssues int `json:"open_issues"` ClosedIssues int `json:"closed_issues"` // swagger:strfmt date-time Created time.Time `json:"created_at"` // swagger:strfmt date-time Updated *time.Time `json:"updated_at"` // swagger:strfmt date-time Closed *time.Time `json:"closed_at"` // swagger:strfmt date-time Deadline *time.Time `json:"due_on"` }
Milestone milestone is a collection of issues on one repository
type NewIssuePinsAllowed ¶
type NewIssuePinsAllowed struct { Issues bool `json:"issues"` PullRequests bool `json:"pull_requests"` }
NewIssuePinsAllowed represents an API response that says if new Issue Pins are allowed
type NodeInfo ¶
type NodeInfo struct { Version string `json:"version"` Software NodeInfoSoftware `json:"software"` Protocols []string `json:"protocols"` Services NodeInfoServices `json:"services"` OpenRegistrations bool `json:"openRegistrations"` Usage NodeInfoUsage `json:"usage"` Metadata struct{} `json:"metadata"` }
NodeInfo contains standardized way of exposing metadata about a server running one of the distributed social networks
type NodeInfoServices ¶
type NodeInfoServices struct { Inbound []string `json:"inbound"` Outbound []string `json:"outbound"` }
NodeInfoServices contains the third party sites this server can connect to via their application API
type NodeInfoSoftware ¶
type NodeInfoSoftware struct { Name string `json:"name"` Version string `json:"version"` Repository string `json:"repository"` Homepage string `json:"homepage"` }
NodeInfoSoftware contains Metadata about server software in use
type NodeInfoUsage ¶
type NodeInfoUsage struct { Users NodeInfoUsageUsers `json:"users"` LocalPosts int `json:"localPosts,omitempty"` LocalComments int `json:"localComments,omitempty"` }
NodeInfoUsage contains usage statistics for this server
type NodeInfoUsageUsers ¶
type NodeInfoUsageUsers struct { Total int `json:"total,omitempty"` ActiveHalfyear int `json:"activeHalfyear,omitempty"` ActiveMonth int `json:"activeMonth,omitempty"` }
NodeInfoUsageUsers contains statistics about the users of this server
type NotificationCount ¶
type NotificationCount struct {
New int64 `json:"new"`
}
NotificationCount number of unread notifications
type NotificationSubject ¶
type NotificationSubject struct { Title string `json:"title"` URL string `json:"url"` LatestCommentURL string `json:"latest_comment_url"` HTMLURL string `json:"html_url"` LatestCommentHTMLURL string `json:"latest_comment_html_url"` Type NotifySubjectType `json:"type" binding:"In(Issue,Pull,Commit,Repository)"` State StateType `json:"state"` }
NotificationSubject contains the notification subject (Issue/Pull/Commit)
type NotificationThread ¶
type NotificationThread struct { ID int64 `json:"id"` Repository *Repository `json:"repository"` Subject *NotificationSubject `json:"subject"` Unread bool `json:"unread"` Pinned bool `json:"pinned"` UpdatedAt time.Time `json:"updated_at"` URL string `json:"url"` }
NotificationThread expose Notification on API
type NotifySubjectType ¶
type NotifySubjectType string
NotifySubjectType represent type of notification subject
const ( // NotifySubjectIssue an issue is subject of an notification NotifySubjectIssue NotifySubjectType = "Issue" // NotifySubjectPull an pull is subject of an notification NotifySubjectPull NotifySubjectType = "Pull" // NotifySubjectCommit an commit is subject of an notification NotifySubjectCommit NotifySubjectType = "Commit" // NotifySubjectRepository an repository is subject of an notification NotifySubjectRepository NotifySubjectType = "Repository" )
type OAuth2Application ¶
type OAuth2Application struct { ID int64 `json:"id"` Name string `json:"name"` ClientID string `json:"client_id"` ClientSecret string `json:"client_secret"` ConfidentialClient bool `json:"confidential_client"` RedirectURIs []string `json:"redirect_uris"` Created time.Time `json:"created"` }
OAuth2Application represents an OAuth2 application. swagger:response OAuth2Application
type OAuth2ApplicationList ¶
type OAuth2ApplicationList []*OAuth2Application
OAuth2ApplicationList represents a list of OAuth2 applications. swagger:response OAuth2ApplicationList
type Organization ¶
type Organization struct { ID int64 `json:"id"` Name string `json:"name"` FullName string `json:"full_name"` Email string `json:"email"` AvatarURL string `json:"avatar_url"` Description string `json:"description"` Website string `json:"website"` Location string `json:"location"` Visibility string `json:"visibility"` RepoAdminChangeTeamAccess bool `json:"repo_admin_change_team_access"` // deprecated UserName string `json:"username"` }
Organization represents an organization
type OrganizationPermissions ¶
type OrganizationPermissions struct { IsOwner bool `json:"is_owner"` IsAdmin bool `json:"is_admin"` CanWrite bool `json:"can_write"` CanRead bool `json:"can_read"` CanCreateRepository bool `json:"can_create_repository"` }
OrganizationPermissions list different users permissions on an organization
type PRBranchInfo ¶
type PRBranchInfo struct { Name string `json:"label"` Ref string `json:"ref"` Sha string `json:"sha"` RepoID int64 `json:"repo_id"` Repository *Repository `json:"repo"` }
PRBranchInfo information about a branch
type Package ¶
type Package struct { ID int64 `json:"id"` //Owner *User `json:"owner"` //Repository *Repository `json:"repository"` //Creator *User `json:"creator"` Type string `json:"type"` Name string `json:"name"` Version string `json:"version"` //HTMLURL string `json:"html_url"` // swagger:strfmt date-time CreatedAt time.Time `json:"created_at"` DownloadCount int64 `json:"download_count"` }
Package represents a package
type PackageFile ¶
type PackageFile struct { ID int64 `json:"id"` Size int64 Name string `json:"name"` HashMD5 string `json:"md5"` HashSHA1 string `json:"sha1"` HashSHA256 string `json:"sha256"` HashSHA512 string `json:"sha512"` }
PackageFile represents a package file
type PackagePayload ¶
type PackagePayload struct { Action HookPackageAction `json:"action"` Repository *Repository `json:"repository"` Package *Package `json:"package"` Organization *User `json:"organization"` Sender *User `json:"sender"` }
PackagePayload represents a package payload
func (*PackagePayload) JSONPayload ¶
func (p *PackagePayload) JSONPayload() ([]byte, error)
JSONPayload implements Payload
type PayloadCommit ¶
type PayloadCommit struct { // sha1 hash of the commit ID string `json:"id"` Message string `json:"message"` URL string `json:"url"` Author *PayloadUser `json:"author"` Committer *PayloadUser `json:"committer"` Verification *PayloadCommitVerification `json:"verification"` // swagger:strfmt date-time Timestamp time.Time `json:"timestamp"` Added []string `json:"added"` Removed []string `json:"removed"` Modified []string `json:"modified"` }
PayloadCommit represents a commit
type PayloadCommitVerification ¶
type PayloadCommitVerification struct { Verified bool `json:"verified"` Reason string `json:"reason"` Signature string `json:"signature"` Signer *PayloadUser `json:"signer"` Payload string `json:"payload"` }
PayloadCommitVerification represents the GPG verification of a commit
type PayloadUser ¶
type PayloadUser struct { // Full name of the commit author Name string `json:"name"` // swagger:strfmt email Email string `json:"email"` UserName string `json:"username"` }
PayloadUser represents the author or committer of a commit
type Permission ¶
type Permission struct { Admin bool `json:"admin"` // Admin indicates if the user is an administrator of the repository. Push bool `json:"push"` // Push indicates if the user can push code to the repository. Pull bool `json:"pull"` // Pull indicates if the user can pull code from the repository. }
Permission represents a set of permissions
type PublicKey ¶
type PublicKey struct { ID int64 `json:"id"` Key string `json:"key"` URL string `json:"url,omitempty"` Title string `json:"title,omitempty"` Fingerprint string `json:"fingerprint,omitempty"` // swagger:strfmt date-time Created time.Time `json:"created_at,omitempty"` Owner *User `json:"user,omitempty"` ReadOnly bool `json:"read_only,omitempty"` KeyType string `json:"key_type,omitempty"` }
PublicKey publickey is a user key to push code to repository
type PullRequest ¶
type PullRequest struct { ID int64 `json:"id"` URL string `json:"url"` Index int64 `json:"number"` Poster *User `json:"user"` Title string `json:"title"` Body string `json:"body"` Labels []*Label `json:"labels"` Milestone *Milestone `json:"milestone"` Assignee *User `json:"assignee"` Assignees []*User `json:"assignees"` RequestedReviewers []*User `json:"requested_reviewers"` State StateType `json:"state"` IsLocked bool `json:"is_locked"` Comments int `json:"comments"` HTMLURL string `json:"html_url"` DiffURL string `json:"diff_url"` PatchURL string `json:"patch_url"` Mergeable bool `json:"mergeable"` HasMerged bool `json:"merged"` // swagger:strfmt date-time Merged *time.Time `json:"merged_at"` MergedCommitID *string `json:"merge_commit_sha"` MergedBy *User `json:"merged_by"` AllowMaintainerEdit bool `json:"allow_maintainer_edit"` Base *PRBranchInfo `json:"base"` Head *PRBranchInfo `json:"head"` MergeBase string `json:"merge_base"` // swagger:strfmt date-time Deadline *time.Time `json:"due_date"` // swagger:strfmt date-time Created *time.Time `json:"created_at"` // swagger:strfmt date-time Updated *time.Time `json:"updated_at"` // swagger:strfmt date-time Closed *time.Time `json:"closed_at"` PinOrder int `json:"pin_order"` }
PullRequest represents a pull request
type PullRequestMeta ¶
PullRequestMeta PR info if an issue is a PR
type PullRequestPayload ¶
type PullRequestPayload struct { Action HookIssueAction `json:"action"` Index int64 `json:"number"` Changes *ChangesPayload `json:"changes,omitempty"` PullRequest *PullRequest `json:"pull_request"` RequestedReviewer *User `json:"requested_reviewer"` Repository *Repository `json:"repository"` Sender *User `json:"sender"` CommitID string `json:"commit_id"` Review *ReviewPayload `json:"review"` }
PullRequestPayload represents a payload information of pull request event.
func (*PullRequestPayload) JSONPayload ¶
func (p *PullRequestPayload) JSONPayload() ([]byte, error)
JSONPayload FIXME
type PullReview ¶
type PullReview struct { ID int64 `json:"id"` Reviewer *User `json:"user"` ReviewerTeam *Team `json:"team"` State ReviewStateType `json:"state"` Body string `json:"body"` CommitID string `json:"commit_id"` Stale bool `json:"stale"` Official bool `json:"official"` Dismissed bool `json:"dismissed"` CodeCommentsCount int `json:"comments_count"` // swagger:strfmt date-time Submitted time.Time `json:"submitted_at"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` HTMLURL string `json:"html_url"` HTMLPullURL string `json:"pull_request_url"` }
PullReview represents a pull request review
type PullReviewComment ¶
type PullReviewComment struct { ID int64 `json:"id"` Body string `json:"body"` Poster *User `json:"user"` Resolver *User `json:"resolver"` ReviewID int64 `json:"pull_request_review_id"` // swagger:strfmt date-time Created time.Time `json:"created_at"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` Path string `json:"path"` CommitID string `json:"commit_id"` OrigCommitID string `json:"original_commit_id"` DiffHunk string `json:"diff_hunk"` LineNum uint64 `json:"position"` OldLineNum uint64 `json:"original_position"` HTMLURL string `json:"html_url"` HTMLPullURL string `json:"pull_request_url"` }
PullReviewComment represents a comment on a pull request review
type PullReviewRequestOptions ¶
type PullReviewRequestOptions struct { Reviewers []string `json:"reviewers"` TeamReviewers []string `json:"team_reviewers"` }
PullReviewRequestOptions are options to add or remove pull review requests
type PushMirror ¶
type PushMirror struct { RepoName string `json:"repo_name"` RemoteName string `json:"remote_name"` RemoteAddress string `json:"remote_address"` CreatedUnix string `json:"created"` LastUpdateUnix string `json:"last_update"` LastError string `json:"last_error"` Interval string `json:"interval"` SyncOnCommit bool `json:"sync_on_commit"` }
PushMirror represents information of a push mirror swagger:model
type PushPayload ¶
type PushPayload struct { Ref string `json:"ref"` Before string `json:"before"` After string `json:"after"` CompareURL string `json:"compare_url"` Commits []*PayloadCommit `json:"commits"` TotalCommits int `json:"total_commits"` HeadCommit *PayloadCommit `json:"head_commit"` Repo *Repository `json:"repository"` Pusher *User `json:"pusher"` Sender *User `json:"sender"` }
PushPayload represents a payload information of push event.
func ParsePushHook ¶
func ParsePushHook(raw []byte) (*PushPayload, error)
ParsePushHook parses push event hook content.
func (*PushPayload) Branch ¶
func (p *PushPayload) Branch() string
Branch returns branch name from a payload
func (*PushPayload) JSONPayload ¶
func (p *PushPayload) JSONPayload() ([]byte, error)
JSONPayload FIXME
type PusherType ¶
type PusherType string
PusherType define the type to push
const (
PusherTypeUser PusherType = "user"
)
describe all the PusherTypes
type Reaction ¶
type Reaction struct { User *User `json:"user"` Reaction string `json:"content"` // swagger:strfmt date-time Created time.Time `json:"created_at"` }
Reaction contain one reaction
type Reference ¶
type Reference struct { Ref string `json:"ref"` URL string `json:"url"` Object *GitObject `json:"object"` }
Reference represents a Git reference.
type Release ¶
type Release struct { ID int64 `json:"id"` TagName string `json:"tag_name"` Target string `json:"target_commitish"` Title string `json:"name"` Note string `json:"body"` URL string `json:"url"` HTMLURL string `json:"html_url"` TarURL string `json:"tarball_url"` ZipURL string `json:"zipball_url"` UploadURL string `json:"upload_url"` IsDraft bool `json:"draft"` IsPrerelease bool `json:"prerelease"` // swagger:strfmt date-time CreatedAt time.Time `json:"created_at"` // swagger:strfmt date-time PublishedAt time.Time `json:"published_at"` Publisher *User `json:"author"` Attachments []*Attachment `json:"assets"` }
Release represents a repository release
type ReleasePayload ¶
type ReleasePayload struct { Action HookReleaseAction `json:"action"` Release *Release `json:"release"` Repository *Repository `json:"repository"` Sender *User `json:"sender"` }
ReleasePayload represents a payload information of release event.
func (*ReleasePayload) JSONPayload ¶
func (p *ReleasePayload) JSONPayload() ([]byte, error)
JSONPayload implements Payload
type RenameUserOption ¶
type RenameUserOption struct { // New username for this user. This name cannot be in use yet by any other user. // // required: true // unique: true NewName string `json:"new_username" binding:"Required"` }
RenameUserOption options when renaming a user
type RepoCollaboratorPermission ¶
type RepoCollaboratorPermission struct { Permission string `json:"permission"` RoleName string `json:"role_name"` User *User `json:"user"` }
RepoCollaboratorPermission to get repository permission for a collaborator
type RepoCommit ¶
type RepoCommit struct { URL string `json:"url"` Author *CommitUser `json:"author"` Committer *CommitUser `json:"committer"` Message string `json:"message"` Tree *CommitMeta `json:"tree"` Verification *PayloadCommitVerification `json:"verification"` }
RepoCommit contains information of a commit in the context of a repository.
type RepoTopicOptions ¶
type RepoTopicOptions struct { // list of topic names Topics []string `json:"topics"` }
RepoTopicOptions a collection of repo topic names
type RepoTransfer ¶
type RepoTransfer struct { Doer *User `json:"doer"` Recipient *User `json:"recipient"` Teams []*Team `json:"teams"` }
RepoTransfer represents a pending repo transfer
type Repository ¶
type Repository struct { ID int64 `json:"id"` Owner *User `json:"owner"` Name string `json:"name"` FullName string `json:"full_name"` Description string `json:"description"` Empty bool `json:"empty"` Private bool `json:"private"` Fork bool `json:"fork"` Template bool `json:"template"` Parent *Repository `json:"parent"` Mirror bool `json:"mirror"` Size int `json:"size"` Language string `json:"language"` LanguagesURL string `json:"languages_url"` HTMLURL string `json:"html_url"` URL string `json:"url"` Link string `json:"link"` SSHURL string `json:"ssh_url"` CloneURL string `json:"clone_url"` OriginalURL string `json:"original_url"` Website string `json:"website"` Stars int `json:"stars_count"` Forks int `json:"forks_count"` Watchers int `json:"watchers_count"` OpenIssues int `json:"open_issues_count"` OpenPulls int `json:"open_pr_counter"` Releases int `json:"release_counter"` DefaultBranch string `json:"default_branch"` Archived bool `json:"archived"` // swagger:strfmt date-time Created time.Time `json:"created_at"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` ArchivedAt time.Time `json:"archived_at"` Permissions *Permission `json:"permissions,omitempty"` HasIssues bool `json:"has_issues"` InternalTracker *InternalTracker `json:"internal_tracker,omitempty"` ExternalTracker *ExternalTracker `json:"external_tracker,omitempty"` HasWiki bool `json:"has_wiki"` ExternalWiki *ExternalWiki `json:"external_wiki,omitempty"` HasPullRequests bool `json:"has_pull_requests"` HasProjects bool `json:"has_projects"` HasReleases bool `json:"has_releases"` HasPackages bool `json:"has_packages"` HasActions bool `json:"has_actions"` IgnoreWhitespaceConflicts bool `json:"ignore_whitespace_conflicts"` AllowMerge bool `json:"allow_merge_commits"` AllowRebase bool `json:"allow_rebase"` AllowRebaseMerge bool `json:"allow_rebase_explicit"` AllowSquash bool `json:"allow_squash_merge"` AllowRebaseUpdate bool `json:"allow_rebase_update"` DefaultDeleteBranchAfterMerge bool `json:"default_delete_branch_after_merge"` DefaultMergeStyle string `json:"default_merge_style"` DefaultAllowMaintainerEdit bool `json:"default_allow_maintainer_edit"` AvatarURL string `json:"avatar_url"` Internal bool `json:"internal"` MirrorInterval string `json:"mirror_interval"` // swagger:strfmt date-time MirrorUpdated time.Time `json:"mirror_updated,omitempty"` RepoTransfer *RepoTransfer `json:"repo_transfer"` }
Repository represents a repository
type RepositoryMeta ¶
type RepositoryMeta struct { ID int64 `json:"id"` Name string `json:"name"` Owner string `json:"owner"` FullName string `json:"full_name"` }
RepositoryMeta basic repository information
type RepositoryPayload ¶
type RepositoryPayload struct { Action HookRepoAction `json:"action"` Repository *Repository `json:"repository"` Organization *User `json:"organization"` Sender *User `json:"sender"` }
RepositoryPayload payload for repository webhooks
func (*RepositoryPayload) JSONPayload ¶
func (p *RepositoryPayload) JSONPayload() ([]byte, error)
JSONPayload JSON representation of the payload
type ReviewPayload ¶
ReviewPayload FIXME
type ReviewStateType ¶
type ReviewStateType string
ReviewStateType review state type
const ( // ReviewStateApproved pr is approved ReviewStateApproved ReviewStateType = "APPROVED" // ReviewStatePending pr state is pending ReviewStatePending ReviewStateType = "PENDING" // ReviewStateComment is a comment review ReviewStateComment ReviewStateType = "COMMENT" // ReviewStateRequestChanges changes for pr are requested ReviewStateRequestChanges ReviewStateType = "REQUEST_CHANGES" // ReviewStateRequestReview review is requested from user ReviewStateRequestReview ReviewStateType = "REQUEST_REVIEW" // ReviewStateUnknown state of pr is unknown ReviewStateUnknown ReviewStateType = "" )
type SearchError ¶
SearchError error of a failed search
type SearchResults ¶
type SearchResults struct { OK bool `json:"ok"` Data []*Repository `json:"data"` }
SearchResults results of a successful search
type Secret ¶
type Secret struct { // the secret's name Name string `json:"name"` // swagger:strfmt date-time Created time.Time `json:"created_at"` }
Secret represents a secret swagger:model
type ServerVersion ¶
type ServerVersion struct {
Version string `json:"version"`
}
ServerVersion wraps the version of the server
type StopWatch ¶
type StopWatch struct { // swagger:strfmt date-time Created time.Time `json:"created"` Seconds int64 `json:"seconds"` Duration string `json:"duration"` IssueIndex int64 `json:"issue_index"` IssueTitle string `json:"issue_title"` RepoOwnerName string `json:"repo_owner_name"` RepoName string `json:"repo_name"` }
StopWatch represent a running stopwatch
type SubmitPullReviewOptions ¶
type SubmitPullReviewOptions struct { Event ReviewStateType `json:"event"` Body string `json:"body"` }
SubmitPullReviewOptions are options to submit a pending pull review
type Tag ¶
type Tag struct { Name string `json:"name"` Message string `json:"message"` ID string `json:"id"` Commit *CommitMeta `json:"commit"` ZipballURL string `json:"zipball_url"` TarballURL string `json:"tarball_url"` }
Tag represents a repository tag
type TaskStatus ¶
type TaskStatus int
TaskStatus defines task status
const ( TaskStatusQueued TaskStatus = iota // 0 task is queued TaskStatusRunning // 1 task is running TaskStatusStopped // 2 task is stopped (never used) TaskStatusFailed // 3 task is failed TaskStatusFinished // 4 task is finished )
enumerate all the kinds of task status
type Team ¶
type Team struct { ID int64 `json:"id"` Name string `json:"name"` Description string `json:"description"` Organization *Organization `json:"organization"` IncludesAllRepositories bool `json:"includes_all_repositories"` // enum: none,read,write,admin,owner Permission string `json:"permission"` // example: ["repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"] // Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions. Units []string `json:"units"` // example: {"repo.code":"read","repo.issues":"write","repo.ext_issues":"none","repo.wiki":"admin","repo.pulls":"owner","repo.releases":"none","repo.projects":"none","repo.ext_wiki":"none"} UnitsMap map[string]string `json:"units_map"` CanCreateOrgRepo bool `json:"can_create_org_repo"` }
Team represents a team in an organization
type TimelineComment ¶
type TimelineComment struct { ID int64 `json:"id"` Type string `json:"type"` HTMLURL string `json:"html_url"` PRURL string `json:"pull_request_url"` IssueURL string `json:"issue_url"` Poster *User `json:"user"` Body string `json:"body"` // swagger:strfmt date-time Created time.Time `json:"created_at"` // swagger:strfmt date-time Updated time.Time `json:"updated_at"` OldProjectID int64 `json:"old_project_id"` ProjectID int64 `json:"project_id"` OldMilestone *Milestone `json:"old_milestone"` Milestone *Milestone `json:"milestone"` TrackedTime *TrackedTime `json:"tracked_time"` OldTitle string `json:"old_title"` NewTitle string `json:"new_title"` OldRef string `json:"old_ref"` NewRef string `json:"new_ref"` RefIssue *Issue `json:"ref_issue"` RefComment *Comment `json:"ref_comment"` RefAction string `json:"ref_action"` // commit SHA where issue/PR was referenced RefCommitSHA string `json:"ref_commit_sha"` ReviewID int64 `json:"review_id"` Label *Label `json:"label"` Assignee *User `json:"assignee"` AssigneeTeam *Team `json:"assignee_team"` // whether the assignees were removed or added RemovedAssignee bool `json:"removed_assignee"` ResolveDoer *User `json:"resolve_doer"` DependentIssue *Issue `json:"dependent_issue"` }
TimelineComment represents a timeline comment (comment of any type) on a commit or issue
type TopicName ¶
type TopicName struct {
TopicNames []string `json:"topics"`
}
TopicName a list of repo topic names
type TopicResponse ¶
type TopicResponse struct { ID int64 `json:"id"` Name string `json:"topic_name"` RepoCount int `json:"repo_count"` Created time.Time `json:"created"` Updated time.Time `json:"updated"` }
TopicResponse for returning topics
type TrackedTime ¶
type TrackedTime struct { ID int64 `json:"id"` // swagger:strfmt date-time Created time.Time `json:"created"` // Time in seconds Time int64 `json:"time"` // deprecated (only for backwards compatibility) UserID int64 `json:"user_id"` UserName string `json:"user_name"` // deprecated (only for backwards compatibility) IssueID int64 `json:"issue_id"` Issue *Issue `json:"issue"` }
TrackedTime worked time for an issue / pr
type TrackedTimeList ¶
type TrackedTimeList []*TrackedTime
TrackedTimeList represents a list of tracked times
type TransferRepoOption ¶
type TransferRepoOption struct { // required: true NewOwner string `json:"new_owner"` // ID of the team or teams to add to the repository. Teams can only be added to organization-owned repositories. TeamIDs *[]int64 `json:"team_ids"` }
TransferRepoOption options when transfer a repository's ownership swagger:model
type UpdateFileOptions ¶
type UpdateFileOptions struct { DeleteFileOptions // content must be base64 encoded // required: true ContentBase64 string `json:"content"` // from_path (optional) is the path of the original file which will be moved/renamed to the path in the URL FromPath string `json:"from_path" binding:"MaxSize(500)"` }
UpdateFileOptions options for updating files Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
func (*UpdateFileOptions) Branch ¶
func (o *UpdateFileOptions) Branch() string
Branch returns branch name
type UpdateRepoAvatarOption ¶
type UpdateRepoAvatarOption struct { // image must be base64 encoded Image string `json:"image" binding:"Required"` }
UpdateRepoAvatarUserOption options when updating the repo avatar
type UpdateUserAvatarOption ¶
type UpdateUserAvatarOption struct { // image must be base64 encoded Image string `json:"image" binding:"Required"` }
UpdateUserAvatarUserOption options when updating the user avatar
type User ¶
type User struct { // the user's id ID int64 `json:"id"` // the user's username UserName string `json:"login"` // the user's authentication sign-in name. // default: empty LoginName string `json:"login_name"` // the user's full name FullName string `json:"full_name"` // swagger:strfmt email Email string `json:"email"` // URL to the user's avatar AvatarURL string `json:"avatar_url"` // User locale Language string `json:"language"` // Is the user an administrator IsAdmin bool `json:"is_admin"` // swagger:strfmt date-time LastLogin time.Time `json:"last_login,omitempty"` // swagger:strfmt date-time Created time.Time `json:"created,omitempty"` // Is user restricted Restricted bool `json:"restricted"` // Is user active IsActive bool `json:"active"` // Is user login prohibited ProhibitLogin bool `json:"prohibit_login"` // the user's location Location string `json:"location"` // the user's website Website string `json:"website"` // the user's description Description string `json:"description"` // User visibility level option: public, limited, private Visibility string `json:"visibility"` // user counts Followers int `json:"followers_count"` Following int `json:"following_count"` StarredRepos int `json:"starred_repos_count"` }
User represents a user swagger:model
func (User) MarshalJSON ¶
MarshalJSON implements the json.Marshaler interface for User, adding field(s) for backward compatibility
type UserSettings ¶
type UserSettings struct { FullName string `json:"full_name"` Website string `json:"website"` Description string `json:"description"` Location string `json:"location"` Language string `json:"language"` Theme string `json:"theme"` DiffViewStyle string `json:"diff_view_style"` // Privacy HideEmail bool `json:"hide_email"` HideActivity bool `json:"hide_activity"` }
UserSettings represents user settings swagger:model
type UserSettingsOptions ¶
type UserSettingsOptions struct { FullName *string `json:"full_name" binding:"MaxSize(100)"` Website *string `json:"website" binding:"OmitEmpty;ValidUrl;MaxSize(255)"` Description *string `json:"description" binding:"MaxSize(255)"` Location *string `json:"location" binding:"MaxSize(50)"` Language *string `json:"language"` Theme *string `json:"theme"` DiffViewStyle *string `json:"diff_view_style"` // Privacy HideEmail *bool `json:"hide_email"` HideActivity *bool `json:"hide_activity"` }
UserSettingsOptions represents options to change user settings swagger:model
type VerifyGPGKeyOption ¶
type VerifyGPGKeyOption struct { // An Signature for a GPG key token // // required: true KeyID string `json:"key_id" binding:"Required"` Signature string `json:"armored_signature" binding:"Required"` }
VerifyGPGKeyOption options verifies user GPG key
type VisibleType ¶
type VisibleType int
VisibleType defines the visibility of user and org
const ( // VisibleTypePublic Visible for everyone VisibleTypePublic VisibleType = iota // VisibleTypeLimited Visible for every connected user VisibleTypeLimited // VisibleTypePrivate Visible only for self or admin user VisibleTypePrivate )
func (VisibleType) IsLimited ¶
func (vt VisibleType) IsLimited() bool
IsLimited returns true if VisibleType is limited
func (VisibleType) IsPrivate ¶
func (vt VisibleType) IsPrivate() bool
IsPrivate returns true if VisibleType is private
func (VisibleType) IsPublic ¶
func (vt VisibleType) IsPublic() bool
IsPublic returns true if VisibleType is public
func (VisibleType) String ¶
func (vt VisibleType) String() string
VisibilityString provides the mode string of the visibility type (public, limited, private)
type WatchInfo ¶
type WatchInfo struct { Subscribed bool `json:"subscribed"` Ignored bool `json:"ignored"` Reason any `json:"reason"` CreatedAt time.Time `json:"created_at"` URL string `json:"url"` RepositoryURL string `json:"repository_url"` }
WatchInfo represents an API watch status of one repository
type WikiCommit ¶
type WikiCommit struct { ID string `json:"sha"` Author *CommitUser `json:"author"` Committer *CommitUser `json:"commiter"` Message string `json:"message"` }
WikiCommit page commit/revision
type WikiCommitList ¶
type WikiCommitList struct { WikiCommits []*WikiCommit `json:"commits"` Count int64 `json:"count"` }
WikiCommitList commit/revision list
type WikiPage ¶
type WikiPage struct { *WikiPageMetaData // Page content, base64 encoded ContentBase64 string `json:"content_base64"` CommitCount int64 `json:"commit_count"` Sidebar string `json:"sidebar"` }
WikiPage a wiki page
type WikiPageMetaData ¶
type WikiPageMetaData struct { Title string `json:"title"` HTMLURL string `json:"html_url"` SubURL string `json:"sub_url"` LastCommit *WikiCommit `json:"last_commit"` }
WikiPageMetaData wiki page meta information
type WikiPayload ¶
type WikiPayload struct { Action HookWikiAction `json:"action"` Repository *Repository `json:"repository"` Sender *User `json:"sender"` Page string `json:"page"` Comment string `json:"comment"` }
WikiPayload payload for repository webhooks
func (*WikiPayload) JSONPayload ¶
func (p *WikiPayload) JSONPayload() ([]byte, error)
JSONPayload JSON representation of the payload
Source Files ¶
- activity.go
- activitypub.go
- admin_user.go
- attachment.go
- commit_status.go
- cron.go
- doc.go
- fork.go
- git_blob.go
- git_hook.go
- hook.go
- issue.go
- issue_comment.go
- issue_label.go
- issue_milestone.go
- issue_reaction.go
- issue_stopwatch.go
- issue_tracked_time.go
- lfs_lock.go
- mirror.go
- miscellaneous.go
- nodeinfo.go
- notifications.go
- org.go
- org_member.go
- org_team.go
- package.go
- pull.go
- pull_review.go
- release.go
- repo.go
- repo_branch.go
- repo_collaborator.go
- repo_commit.go
- repo_file.go
- repo_key.go
- repo_note.go
- repo_refs.go
- repo_tag.go
- repo_topic.go
- repo_tree.go
- repo_watch.go
- repo_wiki.go
- secret.go
- settings.go
- status.go
- task.go
- user.go
- user_app.go
- user_email.go
- user_gpgkey.go
- user_key.go
- visible_type.go