god 0.10.1 → 0.11.0
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/History.txt +9 -1
- data/god.gemspec +2 -3
- data/lib/god.rb +30 -22
- data/lib/god/contact.rb +8 -0
- data/lib/god/contacts/campfire.rb +97 -59
- data/lib/god/contacts/email.rb +80 -48
- data/lib/god/contacts/jabber.rb +50 -101
- data/lib/god/contacts/prowl.rb +25 -45
- data/lib/god/contacts/scout.rb +25 -34
- data/lib/god/contacts/twitter.rb +33 -20
- data/lib/god/contacts/webhook.rb +50 -24
- data/test/configs/contact/contact.god +59 -41
- data/test/test_campfire.rb +14 -32
- data/test/test_email.rb +22 -33
- data/test/test_jabber.rb +17 -24
- data/test/test_webhook.rb +7 -9
- metadata +37 -105
| @@ -1,66 +1,84 @@ | |
| 1 | 
            -
            God::Contacts:: | 
| 1 | 
            +
            # God::Contacts::Campfire.defaults do |d|
         | 
| 2 | 
            +
            #   d.subdomain = 'github'
         | 
| 3 | 
            +
            #   d.token = '9fb768e421975cc1c6ff3f4f8306f890cb46e24f'
         | 
| 4 | 
            +
            #   d.room = 'Notices'
         | 
| 5 | 
            +
            #   d.ssl = true
         | 
| 6 | 
            +
            # end
         | 
| 7 | 
            +
            #
         | 
| 8 | 
            +
            # God.contact(:campfire) do |c|
         | 
| 9 | 
            +
            #   c.name = 'tom4'
         | 
| 10 | 
            +
            # end
         | 
| 2 11 |  | 
| 3 | 
            -
            God | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 12 | 
            +
            # God.contact(:email) do |c|
         | 
| 13 | 
            +
            #   c.name = 'tom'
         | 
| 14 | 
            +
            #   c.group = 'developers'
         | 
| 15 | 
            +
            #   c.to_email = 'tom@lepton.local'
         | 
| 16 | 
            +
            #   c.from_email = 'god@github.com'
         | 
| 17 | 
            +
            #   c.from_name = 'God'
         | 
| 18 | 
            +
            #   c.delivery_method = :sendmail
         | 
| 19 | 
            +
            # end
         | 
| 8 20 |  | 
| 9 | 
            -
            God | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 21 | 
            +
            # God.contact(:email) do |c|
         | 
| 22 | 
            +
            #   c.name = 'tom'
         | 
| 23 | 
            +
            #   c.group = 'developers'
         | 
| 24 | 
            +
            #   c.to_email = 'tom@mojombo.com'
         | 
| 25 | 
            +
            #   c.from_email = 'god@github.com'
         | 
| 26 | 
            +
            #   c.from_name = 'God'
         | 
| 27 | 
            +
            #   c.server_host = 'smtp.rs.github.com'
         | 
| 28 | 
            +
            # end
         | 
| 15 29 |  | 
| 16 | 
            -
            God.contact(: | 
| 17 | 
            -
             | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
            end
         | 
| 30 | 
            +
            # God.contact(:prowl) do |c|
         | 
| 31 | 
            +
            #   c.name = 'tom3'
         | 
| 32 | 
            +
            #   c.apikey = 'f0fc8e1f3121672686337a631527eac2f1b6031c'
         | 
| 33 | 
            +
            #   c.group = 'developers'
         | 
| 34 | 
            +
            # end
         | 
| 21 35 |  | 
| 22 | 
            -
            God.contact(: | 
| 23 | 
            -
             | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 36 | 
            +
            # God.contact(:twitter) do |c|
         | 
| 37 | 
            +
            #   c.name = 'tom6'
         | 
| 38 | 
            +
            #   c.consumer_token = 'gOhjax6s0L3mLeaTtBWPw'
         | 
| 39 | 
            +
            #   c.consumer_secret = 'yz4gpAVXJHKxvsGK85tEyzQJ7o2FEy27H1KEWL75jfA'
         | 
| 40 | 
            +
            #   c.access_token = '17376380-qS391nCrgaP4HKXAmZtM38gB56xUXMhx1NYbjT6mQ'
         | 
| 41 | 
            +
            #   c.access_secret = 'uMwCDeU4OXlEBWFQBc3KwGyY8OdWCtAV0Jg5KVB0'
         | 
| 42 | 
            +
            # end
         | 
| 27 43 |  | 
| 28 | 
            -
            God.contact(: | 
| 29 | 
            -
             | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 32 | 
            -
            end
         | 
| 44 | 
            +
            # God.contact(:scout) do |c|
         | 
| 45 | 
            +
            #   c.name = 'tom5'
         | 
| 46 | 
            +
            #   c.client_key = '583a51b5-acbc-2421-a830-b6f3f8e4b04e'
         | 
| 47 | 
            +
            #   c.plugin_id = '230641'
         | 
| 48 | 
            +
            # end
         | 
| 33 49 |  | 
| 34 | 
            -
            God.contact(: | 
| 35 | 
            -
             | 
| 36 | 
            -
             | 
| 37 | 
            -
            end
         | 
| 50 | 
            +
            # God.contact(:webhook) do |c|
         | 
| 51 | 
            +
            #   c.name = 'tom'
         | 
| 52 | 
            +
            #   c.url = "http://www.postbin.org/wk7guh"
         | 
| 53 | 
            +
            # end
         | 
| 38 54 |  | 
| 39 | 
            -
            God.contact(: | 
| 40 | 
            -
             | 
| 41 | 
            -
             | 
| 42 | 
            -
             | 
| 43 | 
            -
             | 
| 55 | 
            +
            # God.contact(:jabber) do |c|
         | 
| 56 | 
            +
            #   c.name = 'tom'
         | 
| 57 | 
            +
            #   c.host = 'talk.google.com'
         | 
| 58 | 
            +
            #   c.to_jid = 'mojombo@jabber.org'
         | 
| 59 | 
            +
            #   c.from_jid = 'mojombo@gmail.com'
         | 
| 60 | 
            +
            #   c.password = 'secret'
         | 
| 61 | 
            +
            # end
         | 
| 44 62 |  | 
| 45 63 | 
             
            God.watch do |w|
         | 
| 46 64 | 
             
              w.name = "contact"
         | 
| 47 65 | 
             
              w.interval = 5.seconds
         | 
| 48 66 | 
             
              w.start = "ruby " + File.join(File.dirname(__FILE__), *%w[simple_server.rb])
         | 
| 49 67 | 
             
              w.log = "/Users/tom/contact.log"
         | 
| 50 | 
            -
             | 
| 68 | 
            +
             | 
| 51 69 | 
             
              # determine the state on startup
         | 
| 52 70 | 
             
              w.transition(:init, { true => :up, false => :start }) do |on|
         | 
| 53 71 | 
             
                on.condition(:process_running) do |c|
         | 
| 54 72 | 
             
                  c.running = true
         | 
| 55 73 | 
             
                end
         | 
| 56 74 | 
             
              end
         | 
| 57 | 
            -
             | 
| 75 | 
            +
             | 
| 58 76 | 
             
              # determine when process has finished starting
         | 
| 59 77 | 
             
              w.transition([:start, :restart], :up) do |on|
         | 
| 60 78 | 
             
                on.condition(:process_running) do |c|
         | 
| 61 79 | 
             
                  c.running = true
         | 
| 62 80 | 
             
                end
         | 
| 63 | 
            -
             | 
| 81 | 
            +
             | 
| 64 82 | 
             
                # failsafe
         | 
| 65 83 | 
             
                on.condition(:tries) do |c|
         | 
| 66 84 | 
             
                  c.times = 2
         | 
| @@ -71,10 +89,10 @@ God.watch do |w| | |
| 71 89 | 
             
              # start if process is not running
         | 
| 72 90 | 
             
              w.transition(:up, :start) do |on|
         | 
| 73 91 | 
             
                on.condition(:process_exits) do |c|
         | 
| 74 | 
            -
                  c.notify = {:contacts => [' | 
| 92 | 
            +
                  c.notify = {:contacts => ['tom'], :priority => 1, :category => 'product'}
         | 
| 75 93 | 
             
                end
         | 
| 76 94 | 
             
              end
         | 
| 77 | 
            -
             | 
| 95 | 
            +
             | 
| 78 96 | 
             
              # lifecycle
         | 
| 79 97 | 
             
              w.lifecycle do |on|
         | 
| 80 98 | 
             
                on.condition(:flapping) do |c|
         | 
    
        data/test/test_campfire.rb
    CHANGED
    
    | @@ -2,40 +2,22 @@ require File.dirname(__FILE__) + '/helper' | |
| 2 2 | 
             
            require 'tinder'
         | 
| 3 3 |  | 
| 4 4 | 
             
            class TestCampfire < Test::Unit::TestCase
         | 
| 5 | 
            +
              def setup
         | 
| 6 | 
            +
                @campfire = God::Contacts::Campfire.new
         | 
| 7 | 
            +
              end
         | 
| 8 | 
            +
             | 
| 5 9 | 
             
              def test_exists
         | 
| 6 10 | 
             
                God::Contacts::Campfire
         | 
| 7 11 | 
             
              end
         | 
| 8 | 
            -
             | 
| 9 | 
            -
               | 
| 10 | 
            -
             | 
| 11 | 
            -
                 | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 15 | 
            -
             | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 18 | 
            -
                  g.expects(:room).returns(room)
         | 
| 19 | 
            -
                  g.notify(:a, :b, :c, :d, :e)
         | 
| 20 | 
            -
                  assert_equal "notified campfire: ", g.info
         | 
| 21 | 
            -
                end
         | 
| 22 | 
            -
              end
         | 
| 23 | 
            -
              
         | 
| 24 | 
            -
              # should not establish a new connection because the older is alive
         | 
| 25 | 
            -
              def test_campfire_room_method
         | 
| 26 | 
            -
               assert_nothing_raised do
         | 
| 27 | 
            -
                 room = mock()
         | 
| 28 | 
            -
                 g = God::Contacts::Campfire.new
         | 
| 29 | 
            -
                 g.instance_variable_set(:@room,room)
         | 
| 30 | 
            -
                 assert_equal g.send(:room), room
         | 
| 31 | 
            -
               end
         | 
| 32 | 
            -
              end
         | 
| 33 | 
            -
              
         | 
| 34 | 
            -
              # should raise because the connections parameters have not been set
         | 
| 35 | 
            -
              def test_campfire_delivery_method_for_notify_without_campfire_params
         | 
| 36 | 
            -
                LOG.expects(:log).times(3) # 3 calls: 2 debug (credentials, backtrace) + 1 info (failed message)
         | 
| 37 | 
            -
                g = God::Contacts::Campfire.new
         | 
| 38 | 
            -
                g.notify(:a, :b, :c, :d, :e)
         | 
| 12 | 
            +
             | 
| 13 | 
            +
              def test_notify
         | 
| 14 | 
            +
                @campfire.subdomain = 'github'
         | 
| 15 | 
            +
                @campfire.token = 'abc'
         | 
| 16 | 
            +
                @campfire.room = 'danger'
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                time = Time.now
         | 
| 19 | 
            +
                body = "[#{time.strftime('%H:%M:%S')}] host - msg"
         | 
| 20 | 
            +
                Marshmallow::Connection.any_instance.expects(:speak).with('danger', body)
         | 
| 21 | 
            +
                @campfire.notify('msg', time, 'prio', 'cat', 'host')
         | 
| 39 22 | 
             
              end
         | 
| 40 | 
            -
              
         | 
| 41 23 | 
             
            end
         | 
    
        data/test/test_email.rb
    CHANGED
    
    | @@ -1,45 +1,34 @@ | |
| 1 1 | 
             
            require File.dirname(__FILE__) + '/helper'
         | 
| 2 2 |  | 
| 3 3 | 
             
            class TestEmail < Test::Unit::TestCase
         | 
| 4 | 
            -
              def  | 
| 5 | 
            -
                God::Contacts::Email
         | 
| 4 | 
            +
              def setup
         | 
| 5 | 
            +
                God::Contacts::Email.to_email = 'dev@example.com'
         | 
| 6 | 
            +
                God::Contacts::Email.from_email = 'god@example.com'
         | 
| 7 | 
            +
                @email = God::Contacts::Email.new
         | 
| 6 8 | 
             
              end
         | 
| 7 9 |  | 
| 8 | 
            -
              def  | 
| 9 | 
            -
                 | 
| 10 | 
            -
             | 
| 11 | 
            -
                  God::Contacts::Email.any_instance.expects(:notify_sendmail).never
         | 
| 12 | 
            -
                  God::Contacts::Email.delivery_method = :foo_protocol
         | 
| 13 | 
            -
                  LOG.expects(:log).times(2)
         | 
| 14 | 
            -
             
         | 
| 15 | 
            -
                  g = God::Contacts::Email.new
         | 
| 16 | 
            -
                  g.notify(:a, :b, :c, :d, :e)
         | 
| 17 | 
            -
                  assert_nil g.info
         | 
| 18 | 
            -
                end
         | 
| 10 | 
            +
              def test_validity_delivery
         | 
| 11 | 
            +
                @email.delivery_method = :brainwaves
         | 
| 12 | 
            +
                assert_equal false, @email.valid?
         | 
| 19 13 | 
             
              end
         | 
| 20 14 |  | 
| 21 15 | 
             
              def test_smtp_delivery_method_for_notify
         | 
| 22 | 
            -
                 | 
| 23 | 
            -
             | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 28 | 
            -
             | 
| 29 | 
            -
                  assert_equal "sent email to joe@example.com", g.info
         | 
| 30 | 
            -
                end
         | 
| 16 | 
            +
                @email.delivery_method = :smtp
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                God::Contacts::Email.any_instance.expects(:notify_sendmail).never
         | 
| 19 | 
            +
                God::Contacts::Email.any_instance.expects(:notify_smtp).once.returns(nil)
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                @email.notify('msg', Time.now, 'prio', 'cat', 'host')
         | 
| 22 | 
            +
                assert_equal "sent email to dev@example.com via smtp", @email.info
         | 
| 31 23 | 
             
              end
         | 
| 32 | 
            -
             | 
| 24 | 
            +
             | 
| 33 25 | 
             
              def test_sendmail_delivery_method_for_notify
         | 
| 34 | 
            -
                 | 
| 35 | 
            -
             | 
| 36 | 
            -
             | 
| 37 | 
            -
             | 
| 38 | 
            -
             | 
| 39 | 
            -
             | 
| 40 | 
            -
             | 
| 41 | 
            -
                  assert_equal "sent email to joe@example.com", g.info
         | 
| 42 | 
            -
                end
         | 
| 26 | 
            +
                @email.delivery_method = :sendmail
         | 
| 27 | 
            +
             | 
| 28 | 
            +
                God::Contacts::Email.any_instance.expects(:notify_smtp).never
         | 
| 29 | 
            +
                God::Contacts::Email.any_instance.expects(:notify_sendmail).once.returns(nil)
         | 
| 30 | 
            +
             | 
| 31 | 
            +
                @email.notify('msg', Time.now, 'prio', 'cat', 'host')
         | 
| 32 | 
            +
                assert_equal "sent email to dev@example.com via sendmail", @email.info
         | 
| 43 33 | 
             
              end
         | 
| 44 | 
            -
              
         | 
| 45 34 | 
             
            end
         | 
    
        data/test/test_jabber.rb
    CHANGED
    
    | @@ -4,33 +4,26 @@ require File.dirname(__FILE__) + '/helper' | |
| 4 4 | 
             
            class TestJabber < Test::Unit::TestCase
         | 
| 5 5 |  | 
| 6 6 | 
             
              def setup
         | 
| 7 | 
            -
                God::Contacts::Jabber.settings = { 
         | 
| 8 | 
            -
                  :jabber_id => 'test@example.com',
         | 
| 9 | 
            -
                  :password => 'pass'
         | 
| 10 | 
            -
                }
         | 
| 11 7 | 
             
                @jabber = God::Contacts::Jabber.new
         | 
| 12 | 
            -
                @jabber.jabber_id = 'recipient@example.com'
         | 
| 13 8 | 
             
              end
         | 
| 14 9 |  | 
| 15 10 | 
             
              def test_notify
         | 
| 16 | 
            -
                 | 
| 17 | 
            -
             | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
             | 
| 21 | 
            -
                 | 
| 11 | 
            +
                @jabber.host = 'talk.google.com'
         | 
| 12 | 
            +
                @jabber.from_jid = 'god@jabber.org'
         | 
| 13 | 
            +
                @jabber.password = 'secret'
         | 
| 14 | 
            +
                @jabber.to_jid = 'dev@jabber.org'
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                time = Time.now
         | 
| 17 | 
            +
                body = God::Contacts::Jabber.format.call('msg', time, 'prio', 'cat', 'host')
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                assert_equal "Message: msg\nHost: host\nPriority: prio\nCategory: cat\n", body
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                Jabber::Client.any_instance.expects(:connect).with('talk.google.com', 5222)
         | 
| 22 | 
            +
                Jabber::Client.any_instance.expects(:auth).with('secret')
         | 
| 23 | 
            +
                Jabber::Client.any_instance.expects(:send)
         | 
| 24 | 
            +
                Jabber::Client.any_instance.expects(:close)
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                @jabber.notify('msg', Time.now, 'prio', 'cat', 'host')
         | 
| 27 | 
            +
                assert_equal "sent jabber message to dev@jabber.org", @jabber.info
         | 
| 22 28 | 
             
              end
         | 
| 23 | 
            -
              
         | 
| 24 | 
            -
              # def test_live_notify
         | 
| 25 | 
            -
              #   God::Contacts::Jabber.settings = { 
         | 
| 26 | 
            -
              #     :jabber_id => 'real_user@example.com',
         | 
| 27 | 
            -
              #     :password => 'pass'
         | 
| 28 | 
            -
              #   }
         | 
| 29 | 
            -
              #   recipient = "real_recipient@example.com"
         | 
| 30 | 
            -
              #   
         | 
| 31 | 
            -
              #   jabber = God::Contacts::Jabber.new
         | 
| 32 | 
            -
              #   jabber.jabber_id = recipient
         | 
| 33 | 
            -
              #   jabber.notify("Hello", Time.now, "Test", "Test", "localhost")
         | 
| 34 | 
            -
              #   assert_equal "sent jabber message to #{recipient}", jabber.info
         | 
| 35 | 
            -
              # end
         | 
| 36 29 | 
             
            end
         | 
    
        data/test/test_webhook.rb
    CHANGED
    
    | @@ -1,17 +1,15 @@ | |
| 1 1 | 
             
            require File.dirname(__FILE__) + '/helper'
         | 
| 2 2 |  | 
| 3 3 | 
             
            class TestWebhook < Test::Unit::TestCase
         | 
| 4 | 
            -
              def  | 
| 5 | 
            -
                God::Contacts::Webhook
         | 
| 4 | 
            +
              def setup
         | 
| 5 | 
            +
                @webhook = God::Contacts::Webhook.new
         | 
| 6 6 | 
             
              end
         | 
| 7 7 |  | 
| 8 8 | 
             
              def test_notify
         | 
| 9 | 
            -
                 | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
                  assert_equal "sent webhook to http://test/switch", g.info
         | 
| 15 | 
            -
                end
         | 
| 9 | 
            +
                @webhook.url = 'http://example.com/switch'
         | 
| 10 | 
            +
                Net::HTTP.any_instance.expects(:request).returns(Net::HTTPSuccess.new('a', 'b', 'c'))
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                @webhook.notify('msg', Time.now, 'prio', 'cat', 'host')
         | 
| 13 | 
            +
                assert_equal "sent webhook to http://example.com/switch", @webhook.info
         | 
| 16 14 | 
             
              end
         | 
| 17 15 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,12 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: god
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
               | 
| 5 | 
            -
              segments: 
         | 
| 6 | 
            -
              - 0
         | 
| 7 | 
            -
              - 10
         | 
| 8 | 
            -
              - 1
         | 
| 9 | 
            -
              version: 0.10.1
         | 
| 4 | 
            +
              version: 0.11.0
         | 
| 10 5 | 
             
            platform: ruby
         | 
| 11 6 | 
             
            authors: 
         | 
| 12 7 | 
             
            - Tom Preston-Werner
         | 
| @@ -16,156 +11,95 @@ autorequire: | |
| 16 11 | 
             
            bindir: bin
         | 
| 17 12 | 
             
            cert_chain: []
         | 
| 18 13 |  | 
| 19 | 
            -
            date: 2010- | 
| 14 | 
            +
            date: 2010-07-01 00:00:00 -07:00
         | 
| 20 15 | 
             
            default_executable: god
         | 
| 21 16 | 
             
            dependencies: 
         | 
| 22 17 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 23 18 | 
             
              name: twitter
         | 
| 24 | 
            -
               | 
| 25 | 
            -
               | 
| 19 | 
            +
              type: :development
         | 
| 20 | 
            +
              version_requirement: 
         | 
| 21 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 26 22 | 
             
                requirements: 
         | 
| 27 23 | 
             
                - - ">="
         | 
| 28 24 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 29 | 
            -
                    segments: 
         | 
| 30 | 
            -
                    - 0
         | 
| 31 | 
            -
                    - 3
         | 
| 32 | 
            -
                    - 7
         | 
| 33 25 | 
             
                    version: 0.3.7
         | 
| 34 | 
            -
             | 
| 35 | 
            -
              version_requirements: *id001
         | 
| 26 | 
            +
                version: 
         | 
| 36 27 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 37 28 | 
             
              name: prowly
         | 
| 38 | 
            -
              prerelease: false
         | 
| 39 | 
            -
              requirement: &id002 !ruby/object:Gem::Requirement 
         | 
| 40 | 
            -
                requirements: 
         | 
| 41 | 
            -
                - - ">="
         | 
| 42 | 
            -
                  - !ruby/object:Gem::Version 
         | 
| 43 | 
            -
                    segments: 
         | 
| 44 | 
            -
                    - 0
         | 
| 45 | 
            -
                    - 2
         | 
| 46 | 
            -
                    - 1
         | 
| 47 | 
            -
                    version: 0.2.1
         | 
| 48 29 | 
             
              type: :development
         | 
| 49 | 
            -
               | 
| 50 | 
            -
             | 
| 51 | 
            -
              name: tinder
         | 
| 52 | 
            -
              prerelease: false
         | 
| 53 | 
            -
              requirement: &id003 !ruby/object:Gem::Requirement 
         | 
| 30 | 
            +
              version_requirement: 
         | 
| 31 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 54 32 | 
             
                requirements: 
         | 
| 55 33 | 
             
                - - ">="
         | 
| 56 34 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 57 | 
            -
                     | 
| 58 | 
            -
             | 
| 59 | 
            -
                    - 3
         | 
| 60 | 
            -
                    - 1
         | 
| 61 | 
            -
                    version: 1.3.1
         | 
| 62 | 
            -
                - - <
         | 
| 63 | 
            -
                  - !ruby/object:Gem::Version 
         | 
| 64 | 
            -
                    segments: 
         | 
| 65 | 
            -
                    - 2
         | 
| 66 | 
            -
                    - 0
         | 
| 67 | 
            -
                    - 0
         | 
| 68 | 
            -
                    version: 2.0.0
         | 
| 69 | 
            -
              type: :development
         | 
| 70 | 
            -
              version_requirements: *id003
         | 
| 35 | 
            +
                    version: 0.2.1
         | 
| 36 | 
            +
                version: 
         | 
| 71 37 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 72 38 | 
             
              name: xmpp4r
         | 
| 73 | 
            -
               | 
| 74 | 
            -
               | 
| 39 | 
            +
              type: :development
         | 
| 40 | 
            +
              version_requirement: 
         | 
| 41 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 75 42 | 
             
                requirements: 
         | 
| 76 43 | 
             
                - - ">="
         | 
| 77 44 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 78 | 
            -
                    segments: 
         | 
| 79 | 
            -
                    - 0
         | 
| 80 | 
            -
                    - 4
         | 
| 81 | 
            -
                    - 0
         | 
| 82 45 | 
             
                    version: 0.4.0
         | 
| 83 | 
            -
             | 
| 84 | 
            -
              version_requirements: *id004
         | 
| 46 | 
            +
                version: 
         | 
| 85 47 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 86 48 | 
             
              name: dike
         | 
| 87 | 
            -
               | 
| 88 | 
            -
               | 
| 49 | 
            +
              type: :development
         | 
| 50 | 
            +
              version_requirement: 
         | 
| 51 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 89 52 | 
             
                requirements: 
         | 
| 90 53 | 
             
                - - ">="
         | 
| 91 54 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 92 | 
            -
                    segments: 
         | 
| 93 | 
            -
                    - 0
         | 
| 94 | 
            -
                    - 0
         | 
| 95 | 
            -
                    - 3
         | 
| 96 55 | 
             
                    version: 0.0.3
         | 
| 97 | 
            -
             | 
| 98 | 
            -
              version_requirements: *id005
         | 
| 56 | 
            +
                version: 
         | 
| 99 57 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 100 58 | 
             
              name: snapshot
         | 
| 101 | 
            -
               | 
| 102 | 
            -
               | 
| 59 | 
            +
              type: :development
         | 
| 60 | 
            +
              version_requirement: 
         | 
| 61 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 103 62 | 
             
                requirements: 
         | 
| 104 63 | 
             
                - - ">="
         | 
| 105 64 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 106 | 
            -
                    segments: 
         | 
| 107 | 
            -
                    - 1
         | 
| 108 | 
            -
                    - 0
         | 
| 109 | 
            -
                    - 0
         | 
| 110 65 | 
             
                    version: 1.0.0
         | 
| 111 66 | 
             
                - - <
         | 
| 112 67 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 113 | 
            -
                    segments: 
         | 
| 114 | 
            -
                    - 2
         | 
| 115 | 
            -
                    - 0
         | 
| 116 | 
            -
                    - 0
         | 
| 117 68 | 
             
                    version: 2.0.0
         | 
| 118 | 
            -
             | 
| 119 | 
            -
              version_requirements: *id006
         | 
| 69 | 
            +
                version: 
         | 
| 120 70 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 121 71 | 
             
              name: rcov
         | 
| 122 | 
            -
               | 
| 123 | 
            -
               | 
| 72 | 
            +
              type: :development
         | 
| 73 | 
            +
              version_requirement: 
         | 
| 74 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 124 75 | 
             
                requirements: 
         | 
| 125 76 | 
             
                - - ">="
         | 
| 126 77 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 127 | 
            -
                    segments: 
         | 
| 128 | 
            -
                    - 0
         | 
| 129 | 
            -
                    - 9
         | 
| 130 | 
            -
                    - 8
         | 
| 131 78 | 
             
                    version: 0.9.8
         | 
| 132 | 
            -
             | 
| 133 | 
            -
              version_requirements: *id007
         | 
| 79 | 
            +
                version: 
         | 
| 134 80 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 135 81 | 
             
              name: daemons
         | 
| 136 | 
            -
               | 
| 137 | 
            -
               | 
| 82 | 
            +
              type: :development
         | 
| 83 | 
            +
              version_requirement: 
         | 
| 84 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 138 85 | 
             
                requirements: 
         | 
| 139 86 | 
             
                - - ">="
         | 
| 140 87 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 141 | 
            -
                    segments: 
         | 
| 142 | 
            -
                    - 1
         | 
| 143 | 
            -
                    - 0
         | 
| 144 | 
            -
                    - 10
         | 
| 145 88 | 
             
                    version: 1.0.10
         | 
| 146 89 | 
             
                - - <
         | 
| 147 90 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 148 | 
            -
                    segments: 
         | 
| 149 | 
            -
                    - 2
         | 
| 150 | 
            -
                    - 0
         | 
| 151 | 
            -
                    - 0
         | 
| 152 91 | 
             
                    version: 2.0.0
         | 
| 153 | 
            -
             | 
| 154 | 
            -
              version_requirements: *id008
         | 
| 92 | 
            +
                version: 
         | 
| 155 93 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| 156 94 | 
             
              name: mocha
         | 
| 157 | 
            -
               | 
| 158 | 
            -
               | 
| 95 | 
            +
              type: :development
         | 
| 96 | 
            +
              version_requirement: 
         | 
| 97 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 159 98 | 
             
                requirements: 
         | 
| 160 99 | 
             
                - - ">="
         | 
| 161 100 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 162 | 
            -
                    segments: 
         | 
| 163 | 
            -
                    - 0
         | 
| 164 | 
            -
                    - 9
         | 
| 165 | 
            -
                    - 1
         | 
| 166 101 | 
             
                    version: 0.9.1
         | 
| 167 | 
            -
             | 
| 168 | 
            -
              version_requirements: *id009
         | 
| 102 | 
            +
                version: 
         | 
| 169 103 | 
             
            description: An easy to configure, easy to extend monitoring framework written in Ruby.
         | 
| 170 104 | 
             
            email: god-rb@googlegroups.com
         | 
| 171 105 | 
             
            executables: 
         | 
| @@ -311,20 +245,18 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 311 245 | 
             
              requirements: 
         | 
| 312 246 | 
             
              - - ">="
         | 
| 313 247 | 
             
                - !ruby/object:Gem::Version 
         | 
| 314 | 
            -
                  segments: 
         | 
| 315 | 
            -
                  - 0
         | 
| 316 248 | 
             
                  version: "0"
         | 
| 249 | 
            +
              version: 
         | 
| 317 250 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement 
         | 
| 318 251 | 
             
              requirements: 
         | 
| 319 252 | 
             
              - - ">="
         | 
| 320 253 | 
             
                - !ruby/object:Gem::Version 
         | 
| 321 | 
            -
                  segments: 
         | 
| 322 | 
            -
                  - 0
         | 
| 323 254 | 
             
                  version: "0"
         | 
| 255 | 
            +
              version: 
         | 
| 324 256 | 
             
            requirements: []
         | 
| 325 257 |  | 
| 326 258 | 
             
            rubyforge_project: god
         | 
| 327 | 
            -
            rubygems_version: 1.3. | 
| 259 | 
            +
            rubygems_version: 1.3.5
         | 
| 328 260 | 
             
            signing_key: 
         | 
| 329 261 | 
             
            specification_version: 2
         | 
| 330 262 | 
             
            summary: Process monitoring framework.
         |