2017-02-23 06:12:16 +01:00
|
|
|
package db
|
2016-04-04 15:44:34 +02:00
|
|
|
|
2018-03-27 22:12:47 +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"`
|
2016-04-11 12:02:10 +02:00
|
|
|
Name string `db:"name" json:"name" binding:"required"`
|
2016-04-04 15:44:34 +02:00
|
|
|
ProjectID int `db:"project_id" json:"project_id"`
|
2018-03-27 22:12:47 +02:00
|
|
|
GitURL string `db:"git_url" json:"git_url" binding:"required"`
|
2022-01-20 15:53:48 +01:00
|
|
|
GitBranch string `db:"git_branch" json:"git_branch" binding:"required"`
|
2018-03-27 22:12:47 +02:00
|
|
|
SSHKeyID int `db:"ssh_key_id" json:"ssh_key_id" binding:"required"`
|
2016-06-17 22:16:46 +02:00
|
|
|
Removed bool `db:"removed" json:"removed"`
|
2016-04-07 14:49:34 +02:00
|
|
|
|
2018-03-27 22:12:47 +02:00
|
|
|
SSHKey AccessKey `db:"-" json:"-"`
|
2016-04-07 14:49:34 +02:00
|
|
|
}
|
2022-01-22 09:16:23 +01:00
|
|
|
|
|
|
|
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
|
|
|
|
}
|