capistrano-jabber 0.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/lib/capistrano-jabber.rb +35 -0
- metadata +61 -0
@@ -0,0 +1,35 @@
|
|
1
|
+
require "xmpp4r"
|
2
|
+
require 'xmpp4r/client'
|
3
|
+
require 'xmpp4r/muc'
|
4
|
+
|
5
|
+
Capistrano::Configuration.instance(:must_exist).load do
|
6
|
+
set :jabber_server, "talk.google.com" unless exists?(:jabber_server)
|
7
|
+
set :jabber_roompassword, nil unless exists?(:jabber_roompassword)
|
8
|
+
raise Exception, "jabber_user must be specified" unless exists?(:jabber_user)
|
9
|
+
raise Exception, "jabber_password must be specified" unless exists?(:jabber_password)
|
10
|
+
raise Exception, "jabber_room must be specified" unless exists?(:jabber_room)
|
11
|
+
|
12
|
+
set :jabber_nick, jabber_user unless exists?(:jabber_nick)
|
13
|
+
|
14
|
+
client = Jabber::Client::new(Jabber::JID::new(jabber_user))
|
15
|
+
client.connect(jabber_server)
|
16
|
+
client.auth(jabber_password)
|
17
|
+
client.send(Jabber::Presence::new.set_type(:available))
|
18
|
+
|
19
|
+
bot = Jabber::MUC::SimpleMUCClient.new(client)
|
20
|
+
bot.join(Jabber::JID.new("#{jabber_room}/#{jabber_nick}", jabber_roompassword))
|
21
|
+
|
22
|
+
set :local_user, ENV['USER'] || ENV['USERNAME'] || 'unknown'
|
23
|
+
branch ||= "master"
|
24
|
+
|
25
|
+
namespace :say do
|
26
|
+
task :end do
|
27
|
+
if client && bot
|
28
|
+
info = "#{local_user} deployed #{application} to #{stage} with branch #{branch}. Result: OK"
|
29
|
+
bot.say(info)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
after "deploy:restart", "say:end"
|
35
|
+
end
|
metadata
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: capistrano-jabber
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: '0.1'
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Tomáš Dundáček
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-03-09 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: capistrano-ext
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ~>
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 1.2.1
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ~>
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 1.2.1
|
30
|
+
description: ''
|
31
|
+
email: tomas.dundacek@khlhokej.cz
|
32
|
+
executables: []
|
33
|
+
extensions: []
|
34
|
+
extra_rdoc_files: []
|
35
|
+
files:
|
36
|
+
- lib/capistrano-jabber.rb
|
37
|
+
homepage:
|
38
|
+
licenses: []
|
39
|
+
post_install_message:
|
40
|
+
rdoc_options: []
|
41
|
+
require_paths:
|
42
|
+
- lib
|
43
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
44
|
+
none: false
|
45
|
+
requirements:
|
46
|
+
- - ! '>='
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: '0'
|
49
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
requirements: []
|
56
|
+
rubyforge_project:
|
57
|
+
rubygems_version: 1.8.25
|
58
|
+
signing_key:
|
59
|
+
specification_version: 3
|
60
|
+
summary: Make capistrano write to a jabber conference
|
61
|
+
test_files: []
|