fix tag retention api bug

Signed-off-by: Ziming Zhang <zziming@vmware.com>
Change-Id: Id01b3a00ee0fa18cb5b9e4a74bb61a76d7d29709
This commit is contained in:
Ziming Zhang 2019-07-29 17:22:55 +08:00
parent 7fd06edccf
commit b0f6000f16
3 changed files with 6 additions and 1 deletions

View File

@ -127,6 +127,7 @@ func ListExecutions(policyID int64, query *q.Query) ([]*models.RetentionExecutio
qs := o.QueryTable(new(models.RetentionExecution))
qs = qs.Filter("policy_id", policyID)
qs = qs.OrderBy("-id")
if query != nil {
qs = qs.Limit(query.PageSize, (query.PageNumber-1)*query.PageSize)
}

View File

@ -66,6 +66,7 @@ type DefaultManager struct {
func (d *DefaultManager) CreatePolicy(p *policy.Metadata) (int64, error) {
p1 := &models.RetentionPolicy{}
p1.ScopeLevel = p.Scope.Level
p1.ScopeReference = p.Scope.Reference
p1.TriggerKind = p.Trigger.Kind
data, _ := json.Marshal(p)
p1.Data = string(data)
@ -79,6 +80,7 @@ func (d *DefaultManager) UpdatePolicy(p *policy.Metadata) error {
p1 := &models.RetentionPolicy{}
p1.ID = p.ID
p1.ScopeLevel = p.Scope.Level
p1.ScopeReference = p.Scope.Reference
p1.TriggerKind = p.Trigger.Kind
p.ID = 0
data, _ := json.Marshal(p)
@ -142,6 +144,7 @@ func (d *DefaultManager) ListExecutions(policyID int64, query *q.Query) ([]*Exec
e1.Status = e.Status
e1.StartTime = e.StartTime
e1.EndTime = e.EndTime
e1.DryRun = e.DryRun
execs1 = append(execs1, e1)
}
return execs1, nil
@ -159,6 +162,7 @@ func (d *DefaultManager) GetExecution(eid int64) (*Execution, error) {
e1.Status = e.Status
e1.StartTime = e.StartTime
e1.EndTime = e.EndTime
e1.DryRun = e.DryRun
return e1, nil
}

View File

@ -59,7 +59,7 @@ type Metadata struct {
// Valid Valid
func (m *Metadata) Valid(v *validation.Validation) {
if m.Trigger.Kind == TriggerKindSchedule {
if m.Trigger != nil && m.Trigger.Kind == TriggerKindSchedule {
if m.Trigger.Settings == nil {
_ = v.SetError("Trigger.Settings", "Trigger.Settings is required")
} else {