688ee1978e
All checks were successful
continuous-integration/drone/push Build is passing
Add Docs on how to deal with this breaking change doResponse should return responce in all cases, to prosses things manualy if wanted helper func return http response Co-authored-by: 6543 <6543@obermui.de> Reviewed-on: #416 Reviewed-by: Andrew Thornton <art27@cantab.net> Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
45 lines
1.3 KiB
Go
45 lines
1.3 KiB
Go
// Copyright 2020 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.
|
|
|
|
package gitea
|
|
|
|
import (
|
|
"fmt"
|
|
"time"
|
|
)
|
|
|
|
// CronTask represents a Cron task
|
|
type CronTask struct {
|
|
Name string `json:"name"`
|
|
Schedule string `json:"schedule"`
|
|
Next time.Time `json:"next"`
|
|
Prev time.Time `json:"prev"`
|
|
ExecTimes int64 `json:"exec_times"`
|
|
}
|
|
|
|
// ListCronTaskOptions list options for ListCronTasks
|
|
type ListCronTaskOptions struct {
|
|
ListOptions
|
|
}
|
|
|
|
// ListCronTasks list available cron tasks
|
|
func (c *Client) ListCronTasks(opt ListCronTaskOptions) ([]*CronTask, *Response, error) {
|
|
if err := c.CheckServerVersionConstraint(">=1.13.0"); err != nil {
|
|
return nil, nil, err
|
|
}
|
|
opt.setDefaults()
|
|
ct := make([]*CronTask, 0, opt.PageSize)
|
|
resp, err := c.getParsedResponse("GET", fmt.Sprintf("/admin/cron?%s", opt.getURLQuery().Encode()), jsonHeader, nil, &ct)
|
|
return ct, resp, err
|
|
}
|
|
|
|
// RunCronTasks run a cron task
|
|
func (c *Client) RunCronTasks(task string) (*Response, error) {
|
|
if err := c.CheckServerVersionConstraint(">=1.13.0"); err != nil {
|
|
return nil, err
|
|
}
|
|
_, resp, err := c.getResponse("POST", fmt.Sprintf("/admin/cron/%s", task), jsonHeader, nil)
|
|
return resp, err
|
|
}
|