Semaphore/db/Repository.go

31 lines
864 B
Go
Raw Normal View History

2017-02-23 06:12:16 +01:00
package db
2016-04-04 15:44:34 +02:00
// Repository is the model for code stored in a git repository
2016-04-04 15:44:34 +02:00
type Repository struct {
ID int `db:"id" json:"id"`
Name string `db:"name" json:"name" binding:"required"`
2016-04-04 15:44:34 +02:00
ProjectID int `db:"project_id" json:"project_id"`
GitURL string `db:"git_url" json:"git_url" binding:"required"`
GitBranch string `db:"git_branch" json:"git_branch" binding:"required"`
SSHKeyID int `db:"ssh_key_id" json:"ssh_key_id" binding:"required"`
Removed bool `db:"removed" json:"removed"`
SSHKey AccessKey `db:"-" json:"-"`
}
func (r Repository) Validate() error {
if r.Name == "" {
return &ValidationError{"repository name can't be empty"}
}
if r.GitURL == "" {
return &ValidationError{"repository url can't be empty"}
}
if r.GitBranch == "" {
return &ValidationError{"repository branch can't be empty"}
}
return nil
}