gorgon 0.4.1.rc1 → 0.4.1
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/Gemfile.lock +1 -1
- data/README.md +43 -3
- data/bin/gorgon +1 -0
- data/lib/gorgon/version.rb +1 -1
- metadata +5 -5
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -6,12 +6,52 @@ About
|
|
6
6
|
|
7
7
|
Gorgon provides a method for distributing the workload of running ruby test suites. It relies on amqp for message passing, and rsync for the synchronization of source code.
|
8
8
|
|
9
|
+
Installing Gorgon
|
10
|
+
-----------------
|
11
|
+
1. `sudo apt-get install rabbitmq-server`
|
12
|
+
1. When you run gorgon, every listener will use rsync to pull the directory tree from origin; therefore, you need passwordless ssh login from every listener to origin (even if origin and listener are on the same host). Follow [these steps](http://linuxconfig.org/Passwordless_ssh).
|
13
|
+
1. cd to your project
|
14
|
+
1. `gem install gorgon`
|
15
|
+
1. if using rails, `gorgon init rails` will create initial files for a typical rails project. Otherwise, you can use `gorgon init`
|
16
|
+
1. check gorgon.json to see and modify any necessary setting
|
17
|
+
1. add the following lines to your _database.yml_ file
|
18
|
+
|
19
|
+
```yaml
|
20
|
+
remote_test: &remote_test
|
21
|
+
<<: *defaults
|
22
|
+
database: <my-app>_remote_test_<%=ENV['TEST_ENV_NUMBER']%>
|
23
|
+
min_messages: warning
|
24
|
+
```
|
25
|
+
|
26
|
+
Where `<<: *defaults` are the default values used in _database.yml_, like for example, adapter, username, password, and host. Replace <my-app> with a name to identify this application's dbs
|
27
|
+
|
28
|
+
Installing listener as a Daemon process (Ubuntu 9.10 or later)
|
29
|
+
----------------------------------------------------------------
|
30
|
+
1. run `gorgon install_listener` from the directory where gorgon.json is
|
31
|
+
1. run `gorgon ping` to check if the listener is running
|
32
|
+
|
33
|
+
Try it out!
|
34
|
+
-----------
|
35
|
+
1. run `gorgon` to run all the tests.
|
36
|
+
|
37
|
+
**NOTE:** if you get `cannot load such file -- qrack/qrack (LoadError)`, just add `gem 'gorgon', '~> 0.4.1' , :group => :remote_test` to your Gemfile, and run tests using `bundle exec gorgon`
|
38
|
+
|
39
|
+
Also note that these steps are **not** meant to work on every project, they will only give you initial settings. You will probably have to modify the following files:
|
40
|
+
* gorgon.json
|
41
|
+
* test/gorgon_callbacks/after\_sync.rb
|
42
|
+
* test/gorgon_callbacks/before\_creating\_workers.rb
|
43
|
+
* test/gorgon_callbacks/before\_start.rb
|
44
|
+
* test/gorgon_callbacks/after\_complete.rb
|
45
|
+
* ~/.gorgon/gorgon_listener.json
|
46
|
+
|
47
|
+
If you modify ~/.gorgon/gorgon_listener.json, make sure you restart the listener by running `sudo restart gorgon`
|
48
|
+
|
9
49
|
Usage
|
10
50
|
---------------------
|
11
51
|
|
12
52
|
To queue the current test suite, run `gorgon start`, or `gorgon`. _gorgon_ will read the application configuration out of _gorgon.json_, connect to the AMQP server, and publish the job.
|
13
53
|
|
14
|
-
|
54
|
+
If you want to run the listener manually (didn't install Daemon process), you must run _gorgon job listeners_. To start a gorgon listener, run `gorgon listen`. This command will read the listener configuration out of _gorgon\_listener.json_, then start the listener process in the background.
|
15
55
|
|
16
56
|
Configuration
|
17
57
|
---------------------
|
@@ -37,8 +77,8 @@ This file contains the listener-specific settings, such as:
|
|
37
77
|
|
38
78
|
See [gorgon_listener.json example](/Fitzsimmons/Gorgon/blob/master/gorgon_listener.json.sample) for more details.
|
39
79
|
|
40
|
-
###
|
41
|
-
|
80
|
+
### Manually setting up gorgon listener as a daemon process (Ubuntu 9.10 or later)
|
81
|
+
If `gorgon install_listener` didn't work for you, you can try [these steps](/Fitzsimmons/Gorgon/blob/master/daemon_with_upstart_and_rvm.md)
|
42
82
|
|
43
83
|
Contributing
|
44
84
|
---------------------
|
data/bin/gorgon
CHANGED
@@ -51,6 +51,7 @@ def usage
|
|
51
51
|
puts "\tstart - remotely runs all tests specified in gorgon.json"
|
52
52
|
puts "\tlisten - starts a listener process using the settings in gorgon_listener.json"
|
53
53
|
puts "\tping - pings listeners and shows hosts and gorgon's version they are running"
|
54
|
+
puts "\tinit [rails] - create initial files for current project
|
54
55
|
puts "\tinstall_listener - runs gorgon listener as a daemon process"
|
55
56
|
puts "\tgem command [options...] - execute the gem command on every listener and shutdown listener. e.g. 'gorgon gem install --version 1.0.0'"
|
56
57
|
end
|
data/lib/gorgon/version.rb
CHANGED
metadata
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gorgon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.1
|
5
|
-
prerelease:
|
4
|
+
version: 0.4.1
|
5
|
+
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Justin Fitzsimmons
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2012-12-
|
16
|
+
date: 2012-12-21 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: rake
|
@@ -284,9 +284,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
284
284
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
285
285
|
none: false
|
286
286
|
requirements:
|
287
|
-
- - ! '
|
287
|
+
- - ! '>='
|
288
288
|
- !ruby/object:Gem::Version
|
289
|
-
version:
|
289
|
+
version: '0'
|
290
290
|
requirements: []
|
291
291
|
rubyforge_project: gorgon
|
292
292
|
rubygems_version: 1.8.24
|