command_timer 0.0.11 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -1,21 +1,34 @@
1
1
  # CommandTimer
2
2
 
3
- Execute commands on schedule.
3
+ Simple tool to execute commands on schedule. Designed for maintain web applications.
4
4
 
5
5
  ## Installation
6
6
 
7
- Add this line to your application's Gemfile:
8
-
9
- gem 'command_timer'
10
-
11
- And then execute:
12
-
13
- $ bundle
14
-
15
- Or install it yourself as:
16
-
17
7
  $ gem install command_timer
18
8
 
19
9
  ## Usage
20
10
 
21
- TODO: Write usage instructions here
11
+ $ cmdtimer command_config_file
12
+
13
+ ## Command Config File Sample (YAML)
14
+
15
+ command1:
16
+ description: "stop unicorn"
17
+ burn_time: "14:00:00"
18
+ content: |
19
+ cd /path/to/app/
20
+ cap unicorn:stop
21
+ command2:
22
+ desciption: "deploy"
23
+ burn_time:
24
+ content: |
25
+ cd /path/to/app/
26
+ cap deploy
27
+ observer: |
28
+ cd /path/to/app/
29
+ cap invoke COMMAND="tail -f /path/to/log/file"
30
+
31
+ * burn_time:
32
+ 1. HH:mm:ss - execute commands on time.
33
+ 2. blank - execute commands by user input.
34
+ 3. auto - execute commands after previous command ended.
@@ -22,17 +22,17 @@ module CommandTimer
22
22
  end
23
23
  end
24
24
 
25
- def echo_command
25
+ def echo_command(prefix = '')
26
26
  @content.split(';').each do |line|
27
- puts ">> #{line.strip.gsub('\\', '')}"
27
+ puts "#{prefix}>> #{line.strip.gsub('\\', '')}"
28
28
  end
29
29
  end
30
30
 
31
31
  def run_observer
32
- puts "===================="
32
+ puts "========================================"
33
33
  puts "= Start observer, press <Ctrl-C> to stop it."
34
34
  puts "= #{@observer}"
35
- puts "===================="
35
+ puts "========================================"
36
36
  system @observer
37
37
  puts "Observer stopped."
38
38
  end
@@ -9,10 +9,11 @@ module CommandTimer
9
9
 
10
10
  def start
11
11
  @commands.each_with_index do |command, index|
12
- puts "####################"
12
+ puts "########################################"
13
13
  puts "# Next: Command#{index + 1}"
14
14
  puts "# #{command.description}" if command.description
15
- puts "####################"
15
+ command.echo_command("# ")
16
+ puts "########################################"
16
17
  if command.burn_time
17
18
  if ['auto', 'Auto'].include?(command.burn_time)
18
19
  command.exec
@@ -75,7 +76,7 @@ module CommandTimer
75
76
 
76
77
  def echo_commands
77
78
  @commands.each_with_index do |command, index|
78
- puts "--------------------"
79
+ puts "----------------------------------------"
79
80
  puts "Command #{index + 1}"
80
81
  puts command.description if command.description
81
82
  if command.burn_time
@@ -86,7 +87,7 @@ module CommandTimer
86
87
  command.echo_command
87
88
  puts "Observer: #{command.observer}" if command.observer
88
89
  end
89
- puts "--------------------"
90
+ puts "----------------------------------------"
90
91
  puts ""
91
92
  end
92
93
  end
@@ -1,3 +1,3 @@
1
1
  module CommandTimer
2
- VERSION = "0.0.11"
2
+ VERSION = "0.1.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: command_timer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-19 00:00:00.000000000 Z
12
+ date: 2012-08-22 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Simple tool to execute commands on schedule
15
15
  email: