v1.22.1 Latest Latest

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

Go to latest
Published: Jul 4, 2024 License: MIT Imports: 22 Imported by: 49




View Source
const (
	GitAlternativeObjectDirectories = "GIT_ALTERNATE_OBJECT_DIRECTORIES"
	GitObjectDirectory              = "GIT_OBJECT_DIRECTORY"
	GitQuarantinePath               = "GIT_QUARANTINE_PATH"
	GitPushOptionCount              = "GIT_PUSH_OPTION_COUNT"

Git environment variables

View Source
const (
	GitPushOptionRepoPrivate  = "repo.private"
	GitPushOptionRepoTemplate = "repo.template"

GitPushOptions keys


This section is empty.


func AuthorizedPublicKeyByContent added in v1.11.0

func AuthorizedPublicKeyByContent(ctx context.Context, content string) (*ResponseText, ResponseExtra)

AuthorizedPublicKeyByContent searches content as prefix (leak e-mail part) and returns public key found.

func GenerateActionsRunnerToken added in v1.20.0

func GenerateActionsRunnerToken(ctx context.Context, scope string) (*ResponseText, ResponseExtra)

GenerateActionsRunnerToken calls the internal GenerateActionsRunnerToken function

func HookPostReceive added in v1.9.0

func HookPostReceive(ctx context.Context, ownerName, repoName string, opts HookOptions) (*HookPostReceiveResult, ResponseExtra)

HookPostReceive updates services and users

func HookProcReceive added in v1.16.0

func HookProcReceive(ctx context.Context, ownerName, repoName string, opts HookOptions) (*HookProcReceiveResult, ResponseExtra)

HookProcReceive proc-receive hook

func SSHLog added in v1.15.0

func SSHLog(ctx context.Context, isErr bool, msg string) error

SSHLog sends ssh error log response

func SendEmail added in v1.14.0

func SendEmail(ctx context.Context, subject, message string, to []string) (*ResponseText, ResponseExtra)

SendEmail calls the internal SendEmail function It accepts a list of usernames. If DB contains these users it will send the email to them. If to list == nil, it's supposed to send emails to every user present in DB

func ServCommand added in v1.9.0

func ServCommand(ctx context.Context, keyID int64, ownerName, repoName string, mode perm.AccessMode, verbs ...string) (*ServCommandResults, ResponseExtra)

ServCommand preps for a serv call

func ServNoCommand added in v1.9.0

func ServNoCommand(ctx context.Context, keyID int64) (*asymkey_model.PublicKey, *user_model.User, error)

ServNoCommand returns information about the provided key

func UpdatePublicKeyInRepo added in v1.9.0

func UpdatePublicKeyInRepo(ctx context.Context, keyID, repoID int64) error

UpdatePublicKeyInRepo update public key and if necessary deploy key updates


type Email added in v1.14.0

type Email struct {
	Subject string
	Message string
	To      []string

Email structure holds a data for sending general emails

type FlushOptions added in v1.12.0

type FlushOptions struct {
	Timeout     time.Duration
	NonBlocking bool

FlushOptions represents the options for the flush call

type GenerateTokenRequest added in v1.20.0

type GenerateTokenRequest struct {
	Scope string

type GitPushOptions added in v1.13.0

type GitPushOptions map[string]string

GitPushOptions is a wrapper around a map[string]string

func (GitPushOptions) Bool added in v1.13.0

func (g GitPushOptions) Bool(key string) optional.Option[bool]

Bool checks for a key in the map and parses as a boolean

type HookOptions added in v1.9.0

type HookOptions struct {
	OldCommitIDs                    []string
	NewCommitIDs                    []string
	RefFullNames                    []git.RefName
	UserID                          int64
	UserName                        string
	GitObjectDirectory              string
	GitAlternativeObjectDirectories string
	GitQuarantinePath               string
	GitPushOptions                  GitPushOptions
	PullRequestID                   int64
	PushTrigger                     repository.PushTrigger
	DeployKeyID                     int64 // if the pusher is a DeployKey, then UserID is the repo's org user.
	IsWiki                          bool
	ActionPerm                      int

HookOptions represents the options for the Hook calls

type HookPostReceiveBranchResult added in v1.11.0

type HookPostReceiveBranchResult struct {
	Message bool
	Create  bool
	Branch  string
	URL     string

HookPostReceiveBranchResult represents an individual branch result from PostReceive

type HookPostReceiveResult added in v1.11.0

type HookPostReceiveResult struct {
	Results      []HookPostReceiveBranchResult
	RepoWasEmpty bool
	Err          string

HookPostReceiveResult represents an individual result from PostReceive

type HookProcReceiveRefResult added in v1.16.0

type HookProcReceiveRefResult struct {
	OldOID            string
	NewOID            string
	Ref               string
	OriginalRef       git.RefName
	IsForcePush       bool
	IsNotMatched      bool
	Err               string
	IsCreatePR        bool
	URL               string
	ShouldShowMessage bool
	HeadBranch        string

HookProcReceiveRefResult represents an individual result from ProcReceive

type HookProcReceiveResult added in v1.16.0

type HookProcReceiveResult struct {
	Results []HookProcReceiveRefResult
	Err     string

HookProcReceiveResult represents an individual result from ProcReceive

type KeyAndOwner added in v1.9.0

type KeyAndOwner struct {
	Key   *asymkey_model.PublicKey `json:"key"`
	Owner *user_model.User         `json:"user"`

KeyAndOwner is the response from ServNoCommand

type LoggerOptions added in v1.13.0

type LoggerOptions struct {
	Logger string
	Writer string
	Mode   string
	Config map[string]any

LoggerOptions represents the options for the add logger call

type Response

type Response struct {
	Err     string `json:"err,omitempty"`      // server-side error log message, it won't be exposed to end users
	UserMsg string `json:"user_msg,omitempty"` // meaningful error message for end users, it will be shown in git client's output.

Response is used for internal request response (for user message and error message)

type ResponseExtra added in v1.20.0

type ResponseExtra struct {
	StatusCode int
	UserMsg    string
	Error      error

ResponseExtra contains extra information about the response, especially for error responses.

func AddLogger added in v1.13.0

func AddLogger(ctx context.Context, logger, writer, mode string, config map[string]any) ResponseExtra

AddLogger adds a logger

func FlushQueues added in v1.12.0

func FlushQueues(ctx context.Context, timeout time.Duration, nonBlocking bool) ResponseExtra

FlushQueues calls the internal flush-queues function

func HookPreReceive added in v1.9.0

func HookPreReceive(ctx context.Context, ownerName, repoName string, opts HookOptions) ResponseExtra

HookPreReceive check whether the provided commits are allowed

func PauseLogging added in v1.13.0

func PauseLogging(ctx context.Context) ResponseExtra

PauseLogging pauses logging

func Processes added in v1.17.0

func Processes(ctx context.Context, out io.Writer, flat, noSystem, stacktraces, json bool, cancel string) ResponseExtra

Processes return the current processes from this gitea instance

func ReleaseReopenLogging added in v1.13.0

func ReleaseReopenLogging(ctx context.Context) ResponseExtra

ReleaseReopenLogging releases and reopens logging files

func ReloadTemplates added in v1.20.0

func ReloadTemplates(ctx context.Context) ResponseExtra

ReloadTemplates calls the internal reload-templates function

func RemoveLogger added in v1.13.0

func RemoveLogger(ctx context.Context, logger, writer string) ResponseExtra

RemoveLogger removes a logger

func Restart added in v1.12.0

func Restart(ctx context.Context) ResponseExtra

Restart calls the internal restart function

func RestoreRepo added in v1.14.3

func RestoreRepo(ctx context.Context, repoDir, ownerName, repoName string, units []string, validation bool) ResponseExtra

RestoreRepo calls the internal RestoreRepo function

func ResumeLogging added in v1.13.0

func ResumeLogging(ctx context.Context) ResponseExtra

ResumeLogging resumes logging

func SetDefaultBranch added in v1.11.0

func SetDefaultBranch(ctx context.Context, ownerName, repoName, branch string) ResponseExtra

SetDefaultBranch will set the default branch to the provided branch for the provided repository

func SetLogSQL added in v1.17.4

func SetLogSQL(ctx context.Context, on bool) ResponseExtra

SetLogSQL sets database logging

func Shutdown added in v1.12.0

func Shutdown(ctx context.Context) ResponseExtra

Shutdown calls the internal shutdown function

func (*ResponseExtra) HasError added in v1.20.0

func (re *ResponseExtra) HasError() bool

type ResponseText added in v1.22.0

type ResponseText struct {
	Text string

ResponseText is used to get the response as text, instead of parsing it as JSON.

type RestoreParams added in v1.14.3

type RestoreParams struct {
	RepoDir    string
	OwnerName  string
	RepoName   string
	Units      []string
	Validation bool

RestoreParams structure holds a data for restore repository

type SSHLogOption added in v1.15.0

type SSHLogOption struct {
	IsError bool
	Message string

SSHLogOption ssh log options

type ServCommandResults added in v1.9.0

type ServCommandResults struct {
	IsWiki      bool
	DeployKeyID int64
	KeyID       int64  // public key
	KeyName     string // this field is ambiguous, it can be the name of DeployKey, or the name of the PublicKey
	UserName    string
	UserEmail   string
	UserID      int64
	OwnerName   string
	RepoName    string
	RepoID      int64

ServCommandResults are the results of a call to the private route serv

Jump to

Keyboard shortcuts

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