upstream

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Sep 7, 2021 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AvailableUpstreams map[string]Upstream
View Source
var (
	GitHubClientID string
)

Functions

This section is empty.

Types

type GitHub

type GitHub struct {
}

GitHub is a wrapper struct for the GitHub Upstream

func (*GitHub) Auth

func (g *GitHub) Auth(path string) (result Guard, err error)

func (*GitHub) Fork

func (g *GitHub) Fork(token string, url url.URL) (string, error)

func (*GitHub) HaveWriteAccess

func (g *GitHub) HaveWriteAccess(token string, url url.URL) (bool, error)

func (*GitHub) OpenPR

func (g *GitHub) OpenPR(opts PrOpts) (err error)

OpenPR opens a pull request from the input branch to the destination branch.

func (*GitHub) SearchPrByBranch

func (g *GitHub) SearchPrByBranch(url url.URL, token, branchName string) (err error)

SearchPrByBranch checks to see if there is an existing PR based on a specific branch and if so returns the name.

type GitHubAppAuthPoll

type GitHubAppAuthPoll struct {
	AccessToken string `json:"access_token"`
	TokenType   string `json:"token_type"`
	Scope       string `json:"scope"`
	Error       string `json:"error"`
}

type GitHubAppAuthQuery

type GitHubAppAuthQuery struct {
	DeviceCode      string `json:"device_code"`
	UserCode        string `json:"user_code"`
	VerificationUri string `json:"verification_uri"`
	ExpiresIn       int    `json:"expires_in"`
	Interval        int    `json:"interval"`
}

type GitHubGuard

type GitHubGuard struct {
	// contains filtered or unexported fields
}

func (*GitHubGuard) CheckStatus

func (g *GitHubGuard) CheckStatus() (status string, err error)

func (*GitHubGuard) GetAccessToken

func (g *GitHubGuard) GetAccessToken() string

func (*GitHubGuard) GetCode

func (g *GitHubGuard) GetCode() string

func (*GitHubGuard) GetExpireInterval

func (g *GitHubGuard) GetExpireInterval() int

func (*GitHubGuard) GetInterval

func (g *GitHubGuard) GetInterval() int

func (*GitHubGuard) GetUser

func (g *GitHubGuard) GetUser() (string, error)

type Guard

type Guard interface {
	GetAccessToken() (token string)
	GetCode() (code string)
	GetInterval() (interval int)
	GetExpireInterval() (interval int)
	CheckStatus() (status string, err error)
	GetUser() (username string, err error)
}

type PrOpts

type PrOpts struct {
	Origin     url.URL
	Fork       url.URL
	Token      string
	MainBranch string
	PrBranch   string
	PrTitle    string
	PrBody     string
}

type Upstream

type Upstream interface {
	Auth(path string) (result Guard, err error)
	HaveWriteAccess(token string, url url.URL) (hasAccess bool, err error)
	Fork(token string, url url.URL) (result string, err error)
	OpenPR(opts PrOpts) (err error)
	SearchPrByBranch(url url.URL, token, branchName string) (err error)
}

Jump to

Keyboard shortcuts

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