class Runcible::Resources::RepositorySchedule

@see docs.pulpproject.org/dev-guide/integration/rest-api/repo/sync.html#scheduling-a-sync

Public Class Methods

path(repo_id, importer_id, schedule_id = nil) click to toggle source

Generates the API path for Repository Schedules

@param [String] repo_id the ID of the repository @param [String] importer_id the ID of the importer @param [String] schedule_id the ID of the schedule @return [String] the repository schedule path, may contain the ID of the schedule if passed

# File lib/runcible/resources/repository_schedule.rb, line 13
def self.path(repo_id, importer_id, schedule_id = nil)
  repo_path = Runcible::Resources::Repository.path(repo_id)
  path = "#{repo_path}importers/#{importer_id}/schedules/sync/"
  schedule_id.nil? ? path : "#{path}#{schedule_id}/"
end

Public Instance Methods

create(repo_id, importer_type, schedule, optional = {}) click to toggle source

Create a schedule for a repository for a given importer type

@param [String] repo_id the ID of the repository @param [String] importer_type the importer type @param [Hash] schedule a hash representing a schedule @param [Hash] optional container for all optional parameters @return [RestClient::Response]

# File lib/runcible/resources/repository_schedule.rb, line 35
def create(repo_id, importer_type, schedule, optional = {})
  call(:post, path(repo_id, importer_type),
       :payload => { :required => {:schedule => schedule}, :optional => optional })
end
delete(repo_id, importer_type, schedule_id) click to toggle source

Delete a schedule for a repository for a given importer type

@param [String] repo_id the ID of the repository @param [String] importer_type the importer type @param [String] schedule_id the ID of the schedule @return [RestClient::Response]

# File lib/runcible/resources/repository_schedule.rb, line 58
def delete(repo_id, importer_type, schedule_id)
  call(:delete, path(repo_id, importer_type, schedule_id))
end
list(repo_id, importer_type) click to toggle source

List the schedules for a repository for a given importer type

@param [String] repo_id the ID of the repository @param [String] importer_type the importer type @return [RestClient::Response]

# File lib/runcible/resources/repository_schedule.rb, line 24
def list(repo_id, importer_type)
  call(:get, path(repo_id, importer_type))
end
update(repo_id, importer_type, schedule_id, optional = {}) click to toggle source

Update a schedule for a repository for a given importer type

@param [String] repo_id the ID of the repository @param [String] importer_type the importer type @param [String] schedule_id the ID of the schedule @param [Hash] optional container for all optional parameters @return [RestClient::Response]

# File lib/runcible/resources/repository_schedule.rb, line 47
def update(repo_id, importer_type, schedule_id, optional = {})
  call(:put, path(repo_id, importer_type, schedule_id),
       :payload => {:optional => optional })
end