models

package
v0.0.0-...-17c3845 Latest Latest
Warning

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

Go to latest
Published: Jun 10, 2017 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AssignTasks

func AssignTasks()

func Count

func Count(bean interface{}) int64

func CountBuilders

func CountBuilders() int64

func CountTasks

func CountTasks() int64

func DeleteBuilderByID

func DeleteBuilderByID(id int64) error

TODO: delete building history and matrices

func GetCommitOfBranch

func GetCommitOfBranch(branch string) (string, error)

func IsErrBuilderExists

func IsErrBuilderExists(err error) bool

func IsErrNoSuitableMatrix

func IsErrNoSuitableMatrix(err error) bool

func IsErrRecordNotFound

func IsErrRecordNotFound(err error) bool

func MatchBuilders

func MatchBuilders(os, arch string, tags []string) ([]int64, error)

func NewBatchTasks

func NewBatchTasks(doerID int64, branch string) error

func RegenerateBuilderToken

func RegenerateBuilderToken(id int64) error

func UpdateBuilderMatrices

func UpdateBuilderMatrices(builderID int64, matrices []*Matrix) error

Types

type Builder

type Builder struct {
	ID         int64
	Name       string
	Token      string `gorm:"UNIQUE"`
	TrustLevel TrustLevel

	IsIdle        bool `gorm:"NOT NULL"`
	LastHeartBeat int64
	Created       int64

	TaskID int64
}

func GetBuilderByID

func GetBuilderByID(id int64) (*Builder, error)

func GetBuilderByToken

func GetBuilderByToken(token string) (*Builder, error)

func ListBuilders

func ListBuilders() ([]*Builder, error)

func NewBuilder

func NewBuilder(name string) (*Builder, error)

func (*Builder) BeforeCreate

func (b *Builder) BeforeCreate()

func (*Builder) CreatedTime

func (b *Builder) CreatedTime() time.Time

func (*Builder) HeartBeat

func (b *Builder) HeartBeat(isIdle bool) error

HeartBeat updates last active and status.

func (*Builder) Save

func (b *Builder) Save() error

func (*Builder) Status

func (b *Builder) Status() string

func (*Builder) UpdateMatrices

func (b *Builder) UpdateMatrices(matrices []*Matrix) error

type ErrBuilderExists

type ErrBuilderExists struct {
	Name string
}

func (ErrBuilderExists) Error

func (err ErrBuilderExists) Error() string

type ErrNoSuitableMatrix

type ErrNoSuitableMatrix struct {
	OS   string
	Arch string
	Tags []string
}

func (ErrNoSuitableMatrix) Error

func (err ErrNoSuitableMatrix) Error() string

type Matrix

type Matrix struct {
	ID        int64
	BuilderID int64
	OS        string
	Arch      string
	Tags      string
}

func FindMatrices

func FindMatrices(os, arch string) ([]*Matrix, error)

type Task

type Task struct {
	ID     int64
	OS     string
	Arch   string
	Tags   string
	Commit string
	Status TaskStatus

	PosterID  int64
	Poster    *User `gorm:"-"`
	BuilderID int64
	Builder   *Builder `gorm:"-"`
	Updated   int64
	Created   int64
}

func GetTaskByID

func GetTaskByID(id int64) (*Task, error)

func ListPendingTasks

func ListPendingTasks() ([]*Task, error)

func ListTasks

func ListTasks(page, pageSize int64) ([]*Task, error)

func NewTask

func NewTask(doerID int64, os, arch string, tags []string, branch string) (*Task, error)

func (*Task) AfterFind

func (t *Task) AfterFind() (err error)

func (*Task) Archive

func (t *Task) Archive() error

func (*Task) ArtifactName

func (t *Task) ArtifactName(format string) string

func (*Task) AssignBuilder

func (t *Task) AssignBuilder(builderID int64) (err error)

func (*Task) BeforeCreate

func (t *Task) BeforeCreate()

func (*Task) BuildFailed

func (t *Task) BuildFailed() error

func (*Task) BuildSucceed

func (t *Task) BuildSucceed() error

func (*Task) CommitURL

func (t *Task) CommitURL() string

func (*Task) CreatedTime

func (t *Task) CreatedTime() time.Time

func (*Task) Save

func (t *Task) Save() error

func (*Task) UpdatedTime

func (t *Task) UpdatedTime() time.Time

type TaskStatus

type TaskStatus int
const (
	TASK_STATUS_PENDING TaskStatus = iota
	TASK_STATUS_BUILDING
	TASK_STATUS_UPLOADING
	TASK_STATUS_FAILED
	TASK_STATUS_SUCCEED
	TASK_STATUS_ARCHIVED TaskStatus = 99
)

func (TaskStatus) ToString

func (s TaskStatus) ToString() string

type TrustLevel

type TrustLevel int
const (
	TRUST_LEVEL_UNAPPROVED TrustLevel = iota
	TRUST_LEVEL_APPROVED
	TRUST_LEVEL_OFFICIAL TrustLevel = 99
)

func ParseTrustLevel

func ParseTrustLevel(n int) TrustLevel

func (TrustLevel) ToString

func (l TrustLevel) ToString() string

type User

type User struct {
	ID        int64
	OAuthID   string `gorm:"column:oauth_id;UNIQUE"`
	GitHubID  string `gorm:"column:github_id;UNIQUE"`
	Username  string
	AvatarURL string
	IsAdmin   bool `gorm:"NOT NULL"`
	Created   int64
}

func GetOrCreateUserByGitHubID

func GetOrCreateUserByGitHubID(oauthID, githubID, username, avatarURL string) (*User, bool, error)

GetOrCreateUserByGitHubID retrieves a user based on GitHub ID, and creates a new user if does not exists. It returns true if a new user created.

func GetOrCreateUserByOAuthID

func GetOrCreateUserByOAuthID(oauthID string) (*User, bool, error)

GetOrCreateUserByOAuthID retrieves a user based on OAuth ID, and creates a new user if does not exists. It returns true if a new user created.

func GetUserByGitHubID

func GetUserByGitHubID(githubID string) (*User, error)

func GetUserByID

func GetUserByID(id int64) (*User, error)

func GetUserByOAuthID

func GetUserByOAuthID(oauthID string) (*User, error)

func (*User) BeforeCreate

func (u *User) BeforeCreate()

Jump to

Keyboard shortcuts

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