Documentation ¶
Index ¶
- func IsErrNotSupportedSCM(err error) bool
- func NewDatabaseService(db *gorm.DB) core.DatabaseService
- type Coverage
- type OAuthStore
- type OAuthToken
- type Reference
- type Repo
- type RepoHook
- type RepoSetting
- type RepoStore
- func (store *RepoStore) BatchUpdateOrCreate(repos []*core.Repo) error
- func (store *RepoStore) Create(repo *core.Repo) error
- func (store *RepoStore) Creator(repo *core.Repo) (*core.User, error)
- func (store *RepoStore) Find(repo *core.Repo) (*core.Repo, error)
- func (store *RepoStore) FindHook(repo *core.Repo) (*core.Hook, error)
- func (store *RepoStore) Finds(urls ...string) ([]*core.Repo, error)
- func (store *RepoStore) Setting(repo *core.Repo) (*core.RepoSetting, error)
- func (store *RepoStore) Update(repo *core.Repo) error
- func (store *RepoStore) UpdateCreator(repo *core.Repo, user *core.User) error
- func (store *RepoStore) UpdateHook(repo *core.Repo, hook *core.Hook) error
- func (store *RepoStore) UpdateOrCreate(repo *core.Repo) error
- func (store *RepoStore) UpdateSetting(repo *core.Repo, setting *core.RepoSetting) error
- type Report
- type ReportComment
- type ReportStore
- func (store *ReportStore) CreateComment(r *core.Report, comment *core.ReportComment) error
- func (store *ReportStore) Find(r *core.Report) (*core.Report, error)
- func (store *ReportStore) FindComment(r *core.Report, number int) (*core.ReportComment, error)
- func (store *ReportStore) Finds(r *core.Report) ([]*core.Report, error)
- func (store *ReportStore) List(reportID, ref string) ([]*core.Report, error)
- func (store *ReportStore) Upload(r *core.Report) error
- type User
- type UserStore
- func (store *UserStore) Bind(scm core.SCMProvider, user *core.User, scmUser *scm.User, token *core.Token) (*core.User, error)
- func (store *UserStore) Create(scm core.SCMProvider, user *scm.User, token *core.Token) error
- func (store *UserStore) Find(scm core.SCMProvider, user *scm.User) (*core.User, error)
- func (store *UserStore) FindByLogin(login string) (*core.User, error)
- func (store *UserStore) ListRepositories(user *core.User) ([]*core.Repo, error)
- func (store *UserStore) Update(scm core.SCMProvider, user *scm.User, token *core.Token) error
- func (store *UserStore) UpdateRepositories(user *core.User, repositories []*core.Repo) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewDatabaseService ¶
func NewDatabaseService(db *gorm.DB) core.DatabaseService
NewDatabaseService with GORM
Types ¶
type Coverage ¶ added in v0.1.0
Coverage defines test coverage report
func (*Coverage) ToCoreCoverage ¶ added in v0.1.0
func (c *Coverage) ToCoreCoverage() (*core.CoverageReport, error)
ToCoreCoverage unmarshal Coverage Data
type OAuthStore ¶ added in v0.1.8
type OAuthStore struct {
DB core.DatabaseService
}
OAuthStore tokens
func (*OAuthStore) Create ¶ added in v0.1.8
func (store *OAuthStore) Create(token *core.OAuthToken) error
Create token
func (*OAuthStore) Delete ¶ added in v0.1.8
func (store *OAuthStore) Delete(token *core.OAuthToken) error
Delete token with seed
func (*OAuthStore) Find ¶ added in v0.1.8
func (store *OAuthStore) Find(token *core.OAuthToken) (*core.OAuthToken, error)
Find token with seed
func (*OAuthStore) List ¶ added in v0.1.8
func (store *OAuthStore) List(user *core.User) ([]*core.OAuthToken, error)
List user's oauth tokens
type OAuthToken ¶ added in v0.1.8
type OAuthToken struct { gorm.Model Name string `gorm:"index"` Code string `gorm:"index"` Access string `gorm:"index"` Refresh string `gorm:"index"` Expires time.Time OwnerID uint Owner *User `gorm:"foreignKey:OwnerID"` Data []byte }
OAuthToken information
func (OAuthToken) TableName ¶ added in v0.1.8
func (OAuthToken) TableName() string
TableName for GORM
type Reference ¶ added in v0.1.0
type Reference struct { gorm.Model ReportID string `gorm:"size:256;uniqueIndex:reference_record"` Name string `gorm:"size:256;uniqueIndex:reference_record"` Reports []*Report `gorm:"many2many:report_reference"` }
Reference of Report, such as branch or tag name
type Repo ¶
type Repo struct { gorm.Model URL string `gorm:"size:256;uniqueIndex;not null"` ReportID string NameSpace string `gorm:"index;not null"` Name string `gorm:"index;not null"` Branch string SCM string `gorm:"index;not null"` Creator string Private bool }
Repo defines a repository
type RepoSetting ¶
RepoSetting defines user customization
func (*RepoSetting) Update ¶
func (setting *RepoSetting) Update(newSetting *core.RepoSetting) error
Update with a new setting
type RepoStore ¶
type RepoStore struct {
DB core.DatabaseService
}
RepoStore repositories in storage
func (*RepoStore) BatchUpdateOrCreate ¶ added in v0.1.9
BatchUpdateOrCreate repositories
func (*RepoStore) Find ¶
Find Repo with seed. The non-empty filed of input will use as where condition
func (*RepoStore) UpdateCreator ¶ added in v0.1.9
UpdateCreator of the repository
func (*RepoStore) UpdateHook ¶
UpdateHook of the repository
func (*RepoStore) UpdateOrCreate ¶ added in v0.1.9
UpdateOrCreate repository, notice that only below fields will be affected: Name, NameSpace, URL, SCM, Branch, Private
func (*RepoStore) UpdateSetting ¶
UpdateSetting for the repository
type Report ¶
type Report struct { gorm.Model FileData []byte ReportID string `gorm:"size:256;uniqueIndex:report_record"` Coverages []*Coverage References []*Reference `gorm:"many2many:report_reference"` Commit string `gorm:"size:256;uniqueIndex:report_record"` }
Report holds the report
type ReportComment ¶
type ReportComment struct { gorm.Model ReportID string `gorm:"size:256;uniqueIndex:report_comment_number"` // Number is the PR number Number int `gorm:"uniqueIndex:report_comment_number"` Comment int }
ReportComment defines summary report comment in the pull request
type ReportStore ¶
type ReportStore struct {
DB core.DatabaseService
}
ReportStore reports in storage
func (*ReportStore) CreateComment ¶
func (store *ReportStore) CreateComment(r *core.Report, comment *core.ReportComment) error
CreateComment of the report summary
func (*ReportStore) Find ¶
Find report with the input seed. No-empty filed will use as where condition
func (*ReportStore) FindComment ¶
func (store *ReportStore) FindComment(r *core.Report, number int) (*core.ReportComment, error)
FindComment summary of given PR number
type User ¶
type User struct { gorm.Model Login string `gorm:"size:256;uniqueIndex;not null"` Name string Email string `gorm:"index"` Active bool Avater string // Gitea GiteaLogin string `gorm:"index"` GiteaEmail string `gorm:"index"` GiteaToken string GiteaRefresh string GiteaExpire int64 // GitLab GitLabLogin string `gorm:"index"` GitLabEmail string `gorm:"index"` GitLabToken string GitLabRefresh string GitLabExpire int64 // Github GithubLogin string `gorm:"index"` GithubEmail string `gorm:"index"` GithubToken string GithubRefresh string GithubExpire int64 Repositories []*Repo `gorm:"many2many:user_repositories"` }
User data
type UserStore ¶
type UserStore struct {
DB core.DatabaseService
}
UserStore user in storage
func (*UserStore) Bind ¶
func (store *UserStore) Bind( scm core.SCMProvider, user *core.User, scmUser *scm.User, token *core.Token, ) (*core.User, error)
Bind a new user from another SCM to registered user
func (*UserStore) FindByLogin ¶ added in v0.1.8
FindByLogin name
func (*UserStore) ListRepositories ¶ added in v0.1.9
ListRepositories for the user