2017-04-16 15:51:04 +03:00
// Copyright 2017 The Gitea Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
2019-05-11 13:21:34 +03:00
package structs
2017-04-16 15:51:04 +03:00
import (
"time"
)
// StatusState holds the state of a Status
// It can be "pending", "success", "error", "failure", and "warning"
type StatusState string
const (
// StatusPending is for when the Status is Pending
StatusPending StatusState = "pending"
// StatusSuccess is for when the Status is Success
StatusSuccess StatusState = "success"
// StatusError is for when the Status is Error
2017-08-21 14:13:47 +03:00
StatusError StatusState = "error"
2017-04-16 15:51:04 +03:00
// StatusFailure is for when the Status is Failure
StatusFailure StatusState = "failure"
// StatusWarning is for when the Status is Warning
StatusWarning StatusState = "warning"
)
// Status holds a single Status of a single Commit
type Status struct {
ID int64 ` json:"id" `
State StatusState ` json:"status" `
TargetURL string ` json:"target_url" `
Description string ` json:"description" `
URL string ` json:"url" `
Context string ` json:"context" `
Creator * User ` json:"creator" `
2017-11-13 10:02:25 +03:00
// swagger:strfmt date-time
2018-03-06 04:22:16 +03:00
Created time . Time ` json:"created_at" `
2017-11-13 10:02:25 +03:00
// swagger:strfmt date-time
2018-03-06 04:22:16 +03:00
Updated time . Time ` json:"updated_at" `
2017-04-16 15:51:04 +03:00
}
// CombinedStatus holds the combined state of several statuses for a single commit
type CombinedStatus struct {
State StatusState ` json:"state" `
SHA string ` json:"sha" `
TotalCount int ` json:"total_count" `
Statuses [ ] * Status ` json:"statuses" `
Repository * Repository ` json:"repository" `
CommitURL string ` json:"commit_url" `
URL string ` json:"url" `
}
// CreateStatusOption holds the information needed to create a new Status for a Commit
type CreateStatusOption struct {
State StatusState ` json:"state" `
TargetURL string ` json:"target_url" `
Description string ` json:"description" `
Context string ` json:"context" `
}
// ListStatusesOption holds pagination information
type ListStatusesOption struct {
Page int
}