guard-process 1.0.3 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +1 -0
- data/.travis.yml +0 -2
- data/README.md +15 -14
- data/Vagrantfile +10 -0
- data/guard-process.gemspec +1 -1
- data/lib/guard/process.rb +4 -1
- data/test/guard/process_test.rb +7 -0
- data/vagrant-provision +10 -0
- metadata +24 -22
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -1,19 +1,16 @@
|
|
1
|
-
Guard::Process [](http://travis-ci.org/socialreferral/guard-process)
|
2
|
-
==============
|
1
|
+
# Guard::Process [](http://travis-ci.org/socialreferral/guard-process)
|
3
2
|
Guard to run continues processes.
|
4
3
|
|
5
4
|
This gem requires Ruby 1.9.2, 1.9.3 or JRuby in 1.9 mode.
|
6
5
|
|
7
|
-
Usage
|
8
|
-
-----
|
6
|
+
# Usage
|
9
7
|
Please read the [Guard documentation](https://github.com/guard/guard#readme) to learn how to use Guard.
|
10
8
|
|
11
9
|
There is also an exellent screencast available on [Railscasts](http://railscasts.com/episodes/264-guard)
|
12
10
|
|
13
11
|
Additionally there is a great introductory article on [Intridea Blog](http://intridea.com/2011/8/25/hire-a-guard-for-your-project) mentioning Guard::Process.
|
14
12
|
|
15
|
-
Guardfile
|
16
|
-
---------
|
13
|
+
# Guardfile
|
17
14
|
You can add as many process Guards as you want, an example Guardfile:
|
18
15
|
|
19
16
|
``` ruby
|
@@ -26,14 +23,15 @@ You can add as many process Guards as you want, an example Guardfile:
|
|
26
23
|
end
|
27
24
|
```
|
28
25
|
|
29
|
-
Options
|
30
|
-
-------
|
26
|
+
# Options
|
31
27
|
The following options are available:
|
32
28
|
|
33
29
|
- name
|
34
30
|
The display name of your process in Guard, this is shown when Guard::Process is starting and stopping your process
|
35
31
|
- command
|
36
32
|
The command to run as you would run it from the command line
|
33
|
+
- dir
|
34
|
+
The directory in which you want to run the command, if none is given then Ruby's current working directory is used
|
37
35
|
- stop_signal
|
38
36
|
The signal that Guard::Process sends to terminate the process when it needs to stop/restart it. This defaults to 'TERM' (in some cases you may need KILL).
|
39
37
|
- env
|
@@ -42,8 +40,13 @@ The following options are available:
|
|
42
40
|
{"SSL_CERTS_DIR" => "/etc/ssl/certs", "JAVA_HOME" => "/usr/local/java"}
|
43
41
|
```
|
44
42
|
|
45
|
-
|
46
|
-
|
43
|
+
# Changes
|
44
|
+
|
45
|
+
## 1.0.4
|
46
|
+
|
47
|
+
- Adds the dir option
|
48
|
+
|
49
|
+
# Development
|
47
50
|
- Source hosted on [GitHub](https://github.com)
|
48
51
|
- Please report issues and feature requests using [GitHub issues](https://github.com/socialreferral/guard-process/issues)
|
49
52
|
|
@@ -52,10 +55,8 @@ Pull requests are welcome, please make sure your patches are well tested before
|
|
52
55
|
- Add tests for your changes using MiniTest::Unit
|
53
56
|
- Do not change the version number in the gemspec
|
54
57
|
|
55
|
-
License
|
56
|
-
-------
|
58
|
+
# License
|
57
59
|
Guard::Process is released under the MIT license.
|
58
60
|
|
59
|
-
Author
|
60
|
-
------
|
61
|
+
# Author
|
61
62
|
[Mark Kremer](https://github.com/mkremer)
|
data/Vagrantfile
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
# -*- mode: ruby -*-
|
2
|
+
# vi: set ft=ruby :
|
3
|
+
|
4
|
+
Vagrant::Config.run do |config|
|
5
|
+
config.vm.box = "guard"
|
6
|
+
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
|
7
|
+
config.vm.network :hostonly, "192.168.33.21"
|
8
|
+
config.vm.share_folder "v-root", "/vagrant", ".", :nfs => !(ENV["OS"] =~ /windows/i)
|
9
|
+
config.vm.provision :shell, :path => "vagrant-provision"
|
10
|
+
end
|
data/guard-process.gemspec
CHANGED
data/lib/guard/process.rb
CHANGED
@@ -9,6 +9,7 @@ module Guard
|
|
9
9
|
@command = options.fetch(:command).split(" ")
|
10
10
|
@env = options[:env] || {}
|
11
11
|
@name = options[:name]
|
12
|
+
@dir = options[:dir] || Dir.getwd
|
12
13
|
@stop_signal = options[:stop_signal] || "TERM"
|
13
14
|
super
|
14
15
|
end
|
@@ -28,7 +29,9 @@ module Guard
|
|
28
29
|
original_env[key] = ENV[key]
|
29
30
|
ENV[key] = value
|
30
31
|
end
|
31
|
-
|
32
|
+
Dir.chdir(@dir) do
|
33
|
+
@pid = Spoon.spawnp(*@command)
|
34
|
+
end
|
32
35
|
original_env.each_pair do |key, value|
|
33
36
|
ENV[key] = value
|
34
37
|
end
|
data/test/guard/process_test.rb
CHANGED
@@ -74,6 +74,13 @@ class GuardProcessTest < MiniTest::Unit::TestCase
|
|
74
74
|
assert_equal 'VALUE 2', written_env['VAR3']
|
75
75
|
end
|
76
76
|
|
77
|
+
def test_changed_working_directory_if_option_dir_is_set
|
78
|
+
@options = {:command => 'ls', :name => 'LsProcess', :dir => TEST_ROOT}
|
79
|
+
Dir.expects(:chdir).with(TEST_ROOT)
|
80
|
+
@guard = Guard::Process.new([], @options)
|
81
|
+
@guard.start and @guard.stop
|
82
|
+
end
|
83
|
+
|
77
84
|
def test_commands_are_formatted_properly_for_spoon
|
78
85
|
@options = {:command => 'echo test test', :name => 'EchoProcess', :env => {"VAR1" => "VALUE 1"}}
|
79
86
|
::Process.stubs(:kill).returns(true)
|
data/vagrant-provision
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
|
3
|
+
export DEBIAN_FRONTEND=noninteractive
|
4
|
+
|
5
|
+
apt-get update > /dev/null
|
6
|
+
apt-get -y install build-essential git-core ruby1.9.1-full ruby1.9.1-dev libyaml-dev libssl-dev zlib1g-dev libreadline-dev openssl libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev autoconf libc6-dev ncurses-dev automake libtool bison libffi-dev
|
7
|
+
|
8
|
+
gem install bundler pry
|
9
|
+
|
10
|
+
su -c 'cd /vagrant && bundle' vagrant
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: guard-process
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-11-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: guard
|
16
|
-
requirement: &
|
16
|
+
requirement: &84583090 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.4.2
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *84583090
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: spoon
|
27
|
-
requirement: &
|
27
|
+
requirement: &84582790 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 0.0.1
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *84582790
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: ffi
|
38
|
-
requirement: &
|
38
|
+
requirement: &84582530 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.0.9
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *84582530
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: minitest
|
49
|
-
requirement: &
|
49
|
+
requirement: &84582280 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *84582280
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: mocha
|
60
|
-
requirement: &
|
60
|
+
requirement: &84581940 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *84581940
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: guard-minitest
|
71
|
-
requirement: &
|
71
|
+
requirement: &84581720 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *84581720
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: guard-bundler
|
82
|
-
requirement: &
|
82
|
+
requirement: &84581500 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: '0'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *84581500
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: rake
|
93
|
-
requirement: &
|
93
|
+
requirement: &84581230 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ! '>='
|
@@ -98,10 +98,10 @@ dependencies:
|
|
98
98
|
version: '0'
|
99
99
|
type: :development
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *84581230
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: rb-inotify
|
104
|
-
requirement: &
|
104
|
+
requirement: &84580980 !ruby/object:Gem::Requirement
|
105
105
|
none: false
|
106
106
|
requirements:
|
107
107
|
- - ! '>='
|
@@ -109,7 +109,7 @@ dependencies:
|
|
109
109
|
version: '0'
|
110
110
|
type: :development
|
111
111
|
prerelease: false
|
112
|
-
version_requirements: *
|
112
|
+
version_requirements: *84580980
|
113
113
|
description: Guard extension to run cli processes
|
114
114
|
email:
|
115
115
|
- mark@socialreferral.com
|
@@ -124,12 +124,14 @@ files:
|
|
124
124
|
- LICENSE
|
125
125
|
- README.md
|
126
126
|
- Rakefile
|
127
|
+
- Vagrantfile
|
127
128
|
- guard-process.gemspec
|
128
129
|
- lib/guard/process.rb
|
129
130
|
- lib/guard/process/templates/Guardfile
|
130
131
|
- test/guard/process_test.rb
|
131
132
|
- test/run_me.rb
|
132
133
|
- test/test_helper.rb
|
134
|
+
- vagrant-provision
|
133
135
|
homepage: ''
|
134
136
|
licenses: []
|
135
137
|
post_install_message:
|
@@ -150,10 +152,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
150
152
|
version: '0'
|
151
153
|
segments:
|
152
154
|
- 0
|
153
|
-
hash:
|
155
|
+
hash: 1062270739
|
154
156
|
requirements: []
|
155
157
|
rubyforge_project:
|
156
|
-
rubygems_version: 1.8.
|
158
|
+
rubygems_version: 1.8.11
|
157
159
|
signing_key:
|
158
160
|
specification_version: 3
|
159
161
|
summary: Guard extension to run cli processes
|