29 lines
1.0 KiB
Ruby
29 lines
1.0 KiB
Ruby
module Travis::API::V3
|
|
class Services::Crons::Create < Service
|
|
result_type :cron
|
|
params :mon, :tue, :wed, :thu, :fri, :sat, :sun, :disable_by_push, :hour
|
|
|
|
def run!
|
|
raise LoginRequired unless access_control.logged_in? or access_control.full_access?
|
|
raise NotFound unless repository = find(:repository)
|
|
raise NotFound unless branch = find(:branch, repository)
|
|
access_control.permissions(repository).create_cron!
|
|
Models::Cron.create(branch: branch,
|
|
mon: value("mon"),
|
|
tue: value("tue"),
|
|
wed: value("wed"),
|
|
thu: value("thu"),
|
|
fri: value("fri"),
|
|
sat: value("sat"),
|
|
sun: value("sun"),
|
|
hour: params["hour"],
|
|
disable_by_push: value("disable_by_push"))
|
|
end
|
|
|
|
def value s
|
|
params[s] ? params[s] : false
|
|
end
|
|
|
|
end
|
|
end
|