Skip to content

Commit

Permalink
use "roles" instead of "[on_]server_roles"
Browse files Browse the repository at this point in the history
  • Loading branch information
cap10morgan committed Aug 21, 2012
1 parent e28122b commit ee28226
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 16 deletions.
4 changes: 2 additions & 2 deletions bin/whenever
Expand Up @@ -32,8 +32,8 @@ OptionParser.new do |opts|
opts.on('-k', '--cut [lines]', 'Cut lines from the top of the cronfile') do |lines| opts.on('-k', '--cut [lines]', 'Cut lines from the top of the cronfile') do |lines|
options[:cut] = lines.to_i if lines options[:cut] = lines.to_i if lines
end end
opts.on('-r', '--server-roles [role1,role2]', 'Comma-separated list of server roles to generate cron jobs for') do |roles| opts.on('-r', '--roles [role1,role2]', 'Comma-separated list of server roles to generate cron jobs for') do |roles|
options[:server_roles] = roles.split(',').map(&:to_sym) if roles options[:roles] = roles.split(',').map(&:to_sym) if roles
end end
opts.on('-v', '--version') { puts "Whenever v#{Whenever::VERSION}"; exit(0) } opts.on('-v', '--version') { puts "Whenever v#{Whenever::VERSION}"; exit(0) }
end.parse! end.parse!
Expand Down
8 changes: 4 additions & 4 deletions lib/whenever/job.rb
Expand Up @@ -2,14 +2,14 @@


module Whenever module Whenever
class Job class Job
attr_reader :at, :server_roles attr_reader :at, :roles


def initialize(options = {}) def initialize(options = {})
@options = options @options = options
@at = options.delete(:at) @at = options.delete(:at)
@template = options.delete(:template) @template = options.delete(:template)
@job_template = options.delete(:job_template) || ":job" @job_template = options.delete(:job_template) || ":job"
@server_roles = Array.wrap(options.delete(:on_server_roles)) @roles = Array.wrap(options.delete(:roles))
@options[:output] = Whenever::Output::Redirection.new(options[:output]).to_s if options.has_key?(:output) @options[:output] = Whenever::Output::Redirection.new(options[:output]).to_s if options.has_key?(:output)
@options[:environment] ||= :production @options[:environment] ||= :production
@options[:path] = Shellwords.shellescape(@options[:path] || Whenever.path) @options[:path] = Shellwords.shellescape(@options[:path] || Whenever.path)
Expand All @@ -24,8 +24,8 @@ def output
out.gsub(/%/, '\%') out.gsub(/%/, '\%')
end end


def has_server_role?(role) def has_role?(role)
server_roles.empty? || server_roles.include?(role) roles.empty? || roles.include?(role)
end end


protected protected
Expand Down
10 changes: 5 additions & 5 deletions lib/whenever/job_list.rb
@@ -1,6 +1,6 @@
module Whenever module Whenever
class JobList class JobList
attr_reader :server_roles attr_reader :roles


def initialize(options) def initialize(options)
@jobs, @env, @set_variables, @pre_set_variables = {}, {}, {}, {} @jobs, @env, @set_variables, @pre_set_variables = {}, {}, {}, {}
Expand All @@ -11,7 +11,7 @@ def initialize(options)


pre_set(options[:set]) pre_set(options[:set])


@server_roles = options[:server_roles] || [] @roles = options[:roles] || []


setup_file = File.expand_path('../setup.rb', __FILE__) setup_file = File.expand_path('../setup.rb', __FILE__)
setup = File.read(setup_file) setup = File.read(setup_file)
Expand Down Expand Up @@ -131,11 +131,11 @@ def cron_jobs
shortcut_jobs = [] shortcut_jobs = []
regular_jobs = [] regular_jobs = []


output_all = server_roles.empty? output_all = roles.empty?
@jobs.each do |time, jobs| @jobs.each do |time, jobs|
jobs.each do |job| jobs.each do |job|
next unless output_all || server_roles.any? do |r| next unless output_all || roles.any? do |r|
job.has_server_role?(r) job.has_role?(r)
end end
Whenever::Output::Cron.output(time, job) do |cron| Whenever::Output::Cron.output(time, job) do |cron|
cron << "\n\n" cron << "\n\n"
Expand Down
10 changes: 5 additions & 5 deletions test/unit/job_test.rb
Expand Up @@ -7,13 +7,13 @@ class JobTest < Test::Unit::TestCase
assert_equal 'foo', new_job(:at => 'foo').at assert_equal 'foo', new_job(:at => 'foo').at
end end


should "return the :on_server_roles set when #server_roles is called" do should "return the :roles set when #roles is called" do
assert_equal ['foo', 'bar'], new_job(:on_server_roles => ['foo', 'bar']).server_roles assert_equal ['foo', 'bar'], new_job(:roles => ['foo', 'bar']).roles
end end


should "return whether it has a server_role from #has_server_role?" do should "return whether it has a role from #has_role?" do
assert new_job(:on_server_roles => 'foo').has_server_role?('foo') assert new_job(:roles => 'foo').has_role?('foo')
assert_equal false, new_job(:on_server_roles => 'bar').has_server_role?('foo') assert_equal false, new_job(:roles => 'bar').has_role?('foo')
end end


should "substitute the :task when #output is called" do should "substitute the :task when #output is called" do
Expand Down

0 comments on commit ee28226

Please sign in to comment.