janky 0.11.1 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES +6 -0
- data/README.md +8 -0
- data/Rakefile +4 -0
- data/janky.gemspec +2 -2
- data/lib/janky.rb +6 -4
- data/lib/janky/builder/runner.rb +1 -1
- data/lib/janky/chat_service/hubot.rb +2 -2
- data/lib/janky/github/receiver.rb +1 -1
- data/lib/janky/version.rb +1 -1
- data/test/test_helper.rb +3 -3
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f039c609da4b8b8d5caa60c860aa4140adf8a8a1
|
4
|
+
data.tar.gz: 17f08463778bd8cf3ffc17d2d2e90a59421b9116
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cd76f405decebd3f22357f43d2761121ffd35cd132e602f6c39aa2f9cb16b07f8870f5042a349244c7d6037c5ffcf41bf90666711b7cc9837010e5b73477a125
|
7
|
+
data.tar.gz: 73df879a5376b721b045f0c54555ab736c7077b794ecfa7aa2c4caee2e34c71e29c8f78d982913e274c25dd3013a53765698c9eb1ff3edaa5a9ee35698c40aaa
|
data/CHANGES
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
= 0.12.0 / 2017-06-05
|
2
|
+
* Update yajl-ruby to work with Ruby 2.4
|
3
|
+
* Add the ability to use MySQL 5.7
|
4
|
+
* Update mocha to a more recent version
|
5
|
+
* Allow DATABASE_URL to be specified for tests
|
6
|
+
|
1
7
|
= 0.11.1 / 2015-02-20
|
2
8
|
* Update gemspec to include the hubot chat service files
|
3
9
|
* Update recommended Jenkins version in the README
|
data/README.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
Janky
|
2
2
|
=====
|
3
3
|
|
4
|
+
[![Gem Version](https://badge.fury.io/rb/janky.svg)](https://badge.fury.io/rb/janky)
|
5
|
+
|
4
6
|
This is Janky, a continuous integration server built on top of
|
5
7
|
[Jenkins][], controlled by [Hubot][], and designed for [GitHub][].
|
6
8
|
|
@@ -246,10 +248,16 @@ Sends notifications to Hubot via [janky script](http://git.io/hubot-janky).
|
|
246
248
|
|
247
249
|
Required settings:
|
248
250
|
|
251
|
+
* `JANKY_CHAT=hubot`
|
249
252
|
* `JANKY_CHAT_HUBOT_URL`: URL to your Hubot instance.
|
250
253
|
* `JANKY_CHAT_HUBOT_ROOMS`: List of rooms which can be set via `ci set room`.
|
251
254
|
* For IRC: Comma-separated list of channels `"#room, #another-room"`
|
252
255
|
* For Campfire/HipChat: List with room id and name `"34343:room, 23223:another-room"`
|
256
|
+
* For Slack: List with room names `"room, another-room"`
|
257
|
+
|
258
|
+
Installation:
|
259
|
+
* Add `require "janky/chat_service/hubot"` to the `config/environment.rb`
|
260
|
+
file **before** the `Janky.setup(ENV)` line.
|
253
261
|
|
254
262
|
### Authentication
|
255
263
|
|
data/Rakefile
CHANGED
@@ -2,6 +2,10 @@ $LOAD_PATH.unshift(File.expand_path("../lib", __FILE__))
|
|
2
2
|
ENV["RACK_ENV"] ||= "development"
|
3
3
|
|
4
4
|
require "janky"
|
5
|
+
|
6
|
+
class ActiveRecord::ConnectionAdapters::Mysql2Adapter
|
7
|
+
NATIVE_DATABASE_TYPES[:primary_key] = "int(11) auto_increment PRIMARY KEY"
|
8
|
+
end
|
5
9
|
Janky.setup(ENV)
|
6
10
|
require "janky/tasks"
|
7
11
|
|
data/janky.gemspec
CHANGED
@@ -20,7 +20,7 @@ EOL
|
|
20
20
|
s.add_dependency "sinatra", "~>1.3"
|
21
21
|
s.add_dependency "sinatra_auth_github", "~>1.0.0"
|
22
22
|
s.add_dependency "mustache", "~>0.11"
|
23
|
-
s.add_dependency "yajl-ruby", "~>1.
|
23
|
+
s.add_dependency "yajl-ruby", "~>1.3.0"
|
24
24
|
s.add_dependency "activerecord", "~>3.2.0"
|
25
25
|
s.add_dependency "broach", "~>0.2"
|
26
26
|
s.add_dependency "replicate", "~>1.4"
|
@@ -32,7 +32,7 @@ EOL
|
|
32
32
|
|
33
33
|
# test
|
34
34
|
s.add_development_dependency "database_cleaner", "~>0.6"
|
35
|
-
s.add_development_dependency "mocha", "~>0.
|
35
|
+
s.add_development_dependency "mocha", "~>0.14.0"
|
36
36
|
|
37
37
|
s.files = %w[
|
38
38
|
CHANGES
|
data/lib/janky.rb
CHANGED
@@ -53,6 +53,12 @@ require "janky/views/layout"
|
|
53
53
|
require "janky/views/index"
|
54
54
|
require "janky/views/console"
|
55
55
|
|
56
|
+
# TODO Remove after upgrading to activerecord 4.x
|
57
|
+
require "active_record/connection_adapters/mysql2_adapter"
|
58
|
+
class ActiveRecord::ConnectionAdapters::Mysql2Adapter
|
59
|
+
NATIVE_DATABASE_TYPES[:primary_key] = "int(11) auto_increment PRIMARY KEY"
|
60
|
+
end
|
61
|
+
|
56
62
|
# This is Janky, a continuous integration server. Checkout the 'app'
|
57
63
|
# method on this module for an overview of the different components
|
58
64
|
# involved.
|
@@ -95,10 +101,6 @@ module Janky
|
|
95
101
|
database = URI(settings["DATABASE_URL"])
|
96
102
|
adapter = database.scheme == "postgres" ? "postgresql" : database.scheme
|
97
103
|
encoding = database.scheme == "postgres" ? "unicode" : "utf8"
|
98
|
-
if settings["JANKY_BASE_URL"][-1] != ?/
|
99
|
-
warn "JANKY_BASE_URL must have a trailing slash"
|
100
|
-
settings["JANKY_BASE_URL"] = settings["JANKY_BASE_URL"] + "/"
|
101
|
-
end
|
102
104
|
base_url = URI(settings["JANKY_BASE_URL"]).to_s
|
103
105
|
Build.base_url = base_url
|
104
106
|
|
data/lib/janky/builder/runner.rb
CHANGED
@@ -28,14 +28,14 @@ module Janky
|
|
28
28
|
uri = @url
|
29
29
|
user = uri.user
|
30
30
|
pass = uri.password
|
31
|
-
path = uri.path
|
31
|
+
path = File.join(uri.path, "janky")
|
32
32
|
|
33
33
|
http = Net::HTTP.new(uri.host, uri.port)
|
34
34
|
if uri.scheme == "https"
|
35
35
|
http.use_ssl = true
|
36
36
|
end
|
37
37
|
|
38
|
-
post = Net::HTTP::Post.new(
|
38
|
+
post = Net::HTTP::Post.new(path)
|
39
39
|
post.basic_auth(user, pass) if user && pass
|
40
40
|
post["Content-Type"] = "application/json"
|
41
41
|
post.body = {:message => message, :room => room}.to_json
|
@@ -46,7 +46,7 @@ module Janky
|
|
46
46
|
end
|
47
47
|
|
48
48
|
def valid_signature?
|
49
|
-
digest = OpenSSL::Digest::
|
49
|
+
digest = OpenSSL::Digest::SHA1.new
|
50
50
|
signature = @request.env["HTTP_X_HUB_SIGNATURE"].split("=").last
|
51
51
|
|
52
52
|
signature == OpenSSL::HMAC.hexdigest(digest, @secret, data)
|
data/lib/janky/version.rb
CHANGED
data/test/test_helper.rb
CHANGED
@@ -2,7 +2,7 @@ $LOAD_PATH.unshift(File.expand_path("../../lib", __FILE__))
|
|
2
2
|
|
3
3
|
require "janky"
|
4
4
|
require "test/unit"
|
5
|
-
require "mocha"
|
5
|
+
require "mocha/setup"
|
6
6
|
require "database_cleaner"
|
7
7
|
|
8
8
|
class Test::Unit::TestCase
|
@@ -28,7 +28,7 @@ class Test::Unit::TestCase
|
|
28
28
|
def environment
|
29
29
|
env = default_environment
|
30
30
|
ENV.each do |key, value|
|
31
|
-
if key =~ /^JANKY_/
|
31
|
+
if key =~ /^JANKY_/ || key == "DATABASE_URL"
|
32
32
|
env[key] = value
|
33
33
|
end
|
34
34
|
end
|
@@ -67,7 +67,7 @@ class Test::Unit::TestCase
|
|
67
67
|
|
68
68
|
repo = Janky::Repository.find_by_name!(repo_name)
|
69
69
|
payload = gh_payload(repo, branch, pusher, [gh_commit(commit)])
|
70
|
-
digest = OpenSSL::Digest::
|
70
|
+
digest = OpenSSL::Digest::SHA1.new
|
71
71
|
sig = OpenSSL::HMAC.hexdigest(digest, Janky::GitHub.secret,
|
72
72
|
payload.to_json)
|
73
73
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: janky
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Simon Rozet
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-06-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -72,14 +72,14 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 1.
|
75
|
+
version: 1.3.0
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 1.
|
82
|
+
version: 1.3.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: activerecord
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -184,14 +184,14 @@ dependencies:
|
|
184
184
|
requirements:
|
185
185
|
- - "~>"
|
186
186
|
- !ruby/object:Gem::Version
|
187
|
-
version: 0.
|
187
|
+
version: 0.14.0
|
188
188
|
type: :development
|
189
189
|
prerelease: false
|
190
190
|
version_requirements: !ruby/object:Gem::Requirement
|
191
191
|
requirements:
|
192
192
|
- - "~>"
|
193
193
|
- !ruby/object:Gem::Version
|
194
|
-
version: 0.
|
194
|
+
version: 0.14.0
|
195
195
|
description: Janky is a Continuous Integration server
|
196
196
|
email:
|
197
197
|
executables: []
|
@@ -303,7 +303,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
303
303
|
version: '0'
|
304
304
|
requirements: []
|
305
305
|
rubyforge_project:
|
306
|
-
rubygems_version: 2.2.
|
306
|
+
rubygems_version: 2.2.5
|
307
307
|
signing_key:
|
308
308
|
specification_version: 4
|
309
309
|
summary: Continuous Integration server built on top of Jenkins and designed for GitHub
|