git

package
v0.9.0-pre1 Latest Latest
Warning

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

Go to latest
Published: Nov 29, 2021 License: MIT Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultBranch = "main"
View Source
const DefaultRemote = "origin"
View Source
const DefaultUsername = "git"
View Source
const PromoteBranchPrefix = "promote/"

Variables

This section is empty.

Functions

func Clone added in v0.0.7

func Clone(url, username, password, path, branchName string) error

func ParseGitAddress added in v1.0.0

func ParseGitAddress(s string) (host string, id string, err error)

ParseGitAddress ...

Types

type AzdoGITProvider

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

AdoGITProvider ...

func NewAzdoGITProvider

func NewAzdoGITProvider(ctx context.Context, remoteURL, token string) (*AzdoGITProvider, error)

NewAdoGITProvider ...

func (*AzdoGITProvider) CreatePR

func (g *AzdoGITProvider) CreatePR(ctx context.Context, branchName string, auto bool, state *PRState) (int, error)

CreatePR ...

func (*AzdoGITProvider) GetPRThatCausedCommit

func (g *AzdoGITProvider) GetPRThatCausedCommit(ctx context.Context, sha string) (PullRequest, error)

func (*AzdoGITProvider) GetPRWithBranch

func (g *AzdoGITProvider) GetPRWithBranch(ctx context.Context, source, target string) (PullRequest, error)

func (*AzdoGITProvider) GetStatus

func (g *AzdoGITProvider) GetStatus(ctx context.Context, sha string, group string, env string) (Status, error)

func (*AzdoGITProvider) MergePR

func (g *AzdoGITProvider) MergePR(ctx context.Context, id int, sha string) error

func (*AzdoGITProvider) SetStatus added in v0.0.7

func (g *AzdoGITProvider) SetStatus(ctx context.Context, sha string, group string, env string, succeeded bool) error

type GitHubGITProvider added in v0.0.7

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

GitHubGITProvider ...

func NewGitHubGITProvider added in v0.0.7

func NewGitHubGITProvider(ctx context.Context, remoteURL, token string) (*GitHubGITProvider, error)

NewGitHubGITProvider ...

func (*GitHubGITProvider) CreatePR added in v0.0.7

func (g *GitHubGITProvider) CreatePR(ctx context.Context, branchName string, auto bool, state *PRState) (int, error)

CreatePR ...

func (*GitHubGITProvider) GetPRThatCausedCommit added in v0.0.7

func (g *GitHubGITProvider) GetPRThatCausedCommit(ctx context.Context, sha string) (PullRequest, error)

func (*GitHubGITProvider) GetPRWithBranch added in v0.0.7

func (g *GitHubGITProvider) GetPRWithBranch(ctx context.Context, source, target string) (PullRequest, error)

func (*GitHubGITProvider) GetStatus added in v0.0.7

func (g *GitHubGITProvider) GetStatus(ctx context.Context, sha string, group string, env string) (Status, error)

func (*GitHubGITProvider) MergePR added in v0.0.7

func (g *GitHubGITProvider) MergePR(ctx context.Context, id int, sha string) error

func (*GitHubGITProvider) SetStatus added in v0.0.7

func (g *GitHubGITProvider) SetStatus(ctx context.Context, sha string, group string, env string, succeeded bool) error

type GitProvider

type GitProvider interface {
	GetStatus(ctx context.Context, sha, group, env string) (Status, error)
	SetStatus(ctx context.Context, sha string, group string, env string, succeeded bool) error
	CreatePR(ctx context.Context, branchName string, auto bool, state *PRState) (int, error)
	GetPRWithBranch(ctx context.Context, source, target string) (PullRequest, error)
	GetPRThatCausedCommit(ctx context.Context, sha string) (PullRequest, error)
	MergePR(ctx context.Context, ID int, sha string) error
}

func NewGitProvider

func NewGitProvider(ctx context.Context, providerType ProviderType, remoteURL, token string) (GitProvider, error)

type PRState

type PRState struct {
	Env   string `json:"env"`
	Group string `json:"group"`
	App   string `json:"app"`
	Tag   string `json:"tag"`
	Sha   string `json:"sha"`
}

func (*PRState) BranchName

func (p *PRState) BranchName() string

func (*PRState) Description

func (p *PRState) Description() (string, error)

func (*PRState) Title

func (p *PRState) Title() string

type ProviderType

type ProviderType string
const (
	ProviderTypeAzdo   ProviderType = "azdo"
	ProviderTypeGitHub ProviderType = "github"
)

func StringToProviderType added in v0.0.6

func StringToProviderType(p string) (ProviderType, error)

type PullRequest

type PullRequest struct {
	ID          int
	Title       string
	Description string
	State       PRState
}

type Repository

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

Repository represents a local git repository.

func LoadRepository

func LoadRepository(ctx context.Context, path string, providerTypeString string, token string) (*Repository, error)

LoadRepository loads a local git repository.

func (*Repository) CreateBranch

func (g *Repository) CreateBranch(branchName string, force bool) error

CreateBranch creates a branch.

func (*Repository) CreateCommit

func (g *Repository) CreateCommit(branchName, message string) (*git2go.Oid, error)

CreateCommit creates a commit in the specfied branch.

func (*Repository) CreatePR

func (g *Repository) CreatePR(ctx context.Context, branchName string, auto bool, state *PRState) (int, error)

func (*Repository) GetBranchName added in v0.0.6

func (g *Repository) GetBranchName() (string, error)

func (*Repository) GetCurrentCommit

func (g *Repository) GetCurrentCommit() (*git2go.Oid, error)

func (*Repository) GetLastCommitForBranch

func (g *Repository) GetLastCommitForBranch(branchName string) (*git2go.Oid, error)

func (*Repository) GetPRForCurrentBranch

func (g *Repository) GetPRForCurrentBranch(ctx context.Context) (PullRequest, error)

func (*Repository) GetPRThatCausedCurrentCommit

func (g *Repository) GetPRThatCausedCurrentCommit(ctx context.Context) (PullRequest, error)

func (*Repository) GetRootDir

func (g *Repository) GetRootDir() string

func (*Repository) GetStatus

func (g *Repository) GetStatus(ctx context.Context, sha, group, env string) (Status, error)

func (*Repository) MergePR

func (g *Repository) MergePR(ctx context.Context, id int, sha string) error

func (*Repository) Push

func (g *Repository) Push(branchName string, force bool) error

Push pushes the defined ref to remote.

type Status

type Status struct {
	Succeeded bool
}

Jump to

Keyboard shortcuts

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