ember_cli_deploy_redis 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/README.md +4 -0
- data/lib/ember_cli_deploy_redis/version.rb +1 -1
- data/lib/ember_cli_deploy_redis/web.rb +8 -3
- data/lib/ember_cli_deploy_redis/web_helpers.rb +21 -1
- data/spec/lib/ember_cli_deploy_redis/web_spec.rb +19 -19
- data/web/views/_footer.erb +2 -2
- data/web/views/application.erb +9 -9
- data/web/views/dashboard.erb +5 -5
- data/web/views/layout.erb +6 -6
- metadata +45 -40
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
YTgwYjZmYTdmZGUwYjQwMjUzMWI5N2I3ZDBmZTFjMjUwMDBhNjhhNQ==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: baae47917d4532d449a73befdaaa83f72bce7016
|
4
|
+
data.tar.gz: 1b23a6a7a553e9632ffa0a7e4d1cbc0961ea6055
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
NDEwOWVhNmNkMGJlM2VhZDZkM2E3OGYxOTA0ZDM1MTY0YjQ2OTY3ZDQ3M2Fj
|
11
|
-
YjgxZTY0NTYyODUwNDQ4OGUxZGU0NmVkNTE5NTcxYWIwMmJmODU=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
Y2M3OTEyMmMwMDJkMDk3ZjNhZmY4ZmY0OTQwODQ2NWM4OTFjZTQ2NDE2MTZj
|
14
|
-
OWMzNmQyYzdhZmNhNTEzYjhmZGU4NDZmNmEwZWE1MGNlNDM2Y2ViZGFmMjI1
|
15
|
-
NDY4YzY5NTYyMGM3OGZiMjAwMmExNWJjOGE4ZGU5YWJkN2NiM2E=
|
6
|
+
metadata.gz: a873a67c786d7b5b218fa04160fdba8b139a5d45e3148f8d99a02d8a0c624234cd4a2d5a9d0f96d472bd72dcafed3a0a3dd4209f47bc3896fd7d0a6072d9e475
|
7
|
+
data.tar.gz: 8787bcb514208aff9d14087770705193422f2292900cd25268b17cd5a9c08930f1be5a6194e9662f994b1cd227c6ad807db2c3172269bcde57e663dc56fe4329
|
data/README.md
CHANGED
@@ -107,6 +107,10 @@ EmberCliDeployRedis.configure do |config|
|
|
107
107
|
config.on_revision_activated do |new_revision|
|
108
108
|
# Slack webhook here!
|
109
109
|
end
|
110
|
+
|
111
|
+
# By default, the web interface will assume that the Rack app it's mounted in will have sessions
|
112
|
+
# enabled. If not, issue the following:
|
113
|
+
# EmberCliDeployRedis::Web.enable_sessions!
|
110
114
|
end
|
111
115
|
```
|
112
116
|
|
@@ -7,7 +7,10 @@ require 'ember_cli_deploy_redis/web_helpers'
|
|
7
7
|
|
8
8
|
module EmberCliDeployRedis
|
9
9
|
class Web < Sinatra::Base
|
10
|
-
|
10
|
+
def self.enable_sessions!
|
11
|
+
enable :sessions
|
12
|
+
end
|
13
|
+
|
11
14
|
use Rack::Protection, :use => :authenticity_token unless ENV['RACK_ENV'] == 'test'
|
12
15
|
|
13
16
|
set :root, File.expand_path(File.dirname(__FILE__) + "/../../web")
|
@@ -24,14 +27,16 @@ module EmberCliDeployRedis
|
|
24
27
|
erb :dashboard
|
25
28
|
end
|
26
29
|
|
27
|
-
get "/applications
|
30
|
+
get "/applications/*" do
|
31
|
+
params[:app_name] = params[:splat].first
|
28
32
|
halt 404 unless params[:app_name]
|
29
33
|
@application = Application.new(params[:app_name])
|
30
34
|
@revisions = @application.revisions
|
31
35
|
erb :application
|
32
36
|
end
|
33
37
|
|
34
|
-
post "/applications
|
38
|
+
post "/applications/*/activate/*" do
|
39
|
+
params[:app_name], params[:revision_name] = params[:splat]
|
35
40
|
halt 404 unless params[:app_name]
|
36
41
|
halt 404 unless params[:revision_name]
|
37
42
|
application = Application.new(params[:app_name])
|
@@ -128,6 +128,14 @@ module EmberCliDeployRedis
|
|
128
128
|
retry
|
129
129
|
end
|
130
130
|
|
131
|
+
def u(text)
|
132
|
+
::Rack::Utils.escape(text)
|
133
|
+
rescue ArgumentError => e
|
134
|
+
raise unless e.message.eql?('invalid byte sequence in UTF-8')
|
135
|
+
text.encode!('UTF-16', 'UTF-8', invalid: :replace, replace: '').encode!('UTF-8', 'UTF-16')
|
136
|
+
retry
|
137
|
+
end
|
138
|
+
|
131
139
|
# Any paginated list that performs an action needs to redirect
|
132
140
|
# back to the proper page after performing that action.
|
133
141
|
def redirect_with_query(url)
|
@@ -155,8 +163,20 @@ module EmberCliDeployRedis
|
|
155
163
|
EmberCliDeployRedis.configuration.revision_specifier_query_param
|
156
164
|
end
|
157
165
|
|
166
|
+
def application_path(application)
|
167
|
+
"applications/#{u application.name}"
|
168
|
+
end
|
169
|
+
|
158
170
|
def revision_test_url(revision)
|
159
|
-
"/?#{revision_specifier_query_param}[#{revision.application.name}]=#{revision.name}"
|
171
|
+
"/?#{u revision_specifier_query_param}[#{u revision.application.name}]=#{u revision.name}"
|
172
|
+
end
|
173
|
+
|
174
|
+
def revision_activate_path(revision)
|
175
|
+
"applications/#{u revision.application.name}/activate/#{u revision.name}"
|
176
|
+
end
|
177
|
+
|
178
|
+
def css_class_name(text)
|
179
|
+
text.gsub(/\W+/, '-')
|
160
180
|
end
|
161
181
|
end
|
162
182
|
end
|
@@ -13,11 +13,11 @@ describe EmberCliDeployRedis::Web do
|
|
13
13
|
end
|
14
14
|
|
15
15
|
let(:application1) { EmberCliDeployRedis::Application.new('application1') }
|
16
|
-
let(:app1_revision_a) { EmberCliDeployRedis::Revision.new(application1, '
|
17
|
-
let(:app1_revision_b) { EmberCliDeployRedis::Revision.new(application1, '
|
16
|
+
let(:app1_revision_a) { EmberCliDeployRedis::Revision.new(application1, 'app1:revision_a') }
|
17
|
+
let(:app1_revision_b) { EmberCliDeployRedis::Revision.new(application1, 'app1:revision_b') }
|
18
18
|
let(:application2) { EmberCliDeployRedis::Application.new('application2') }
|
19
|
-
let(:app2_revision_a) { EmberCliDeployRedis::Revision.new(application2, '
|
20
|
-
let(:app2_revision_b) { EmberCliDeployRedis::Revision.new(application2, '
|
19
|
+
let(:app2_revision_a) { EmberCliDeployRedis::Revision.new(application2, 'app2:revision_a') }
|
20
|
+
let(:app2_revision_b) { EmberCliDeployRedis::Revision.new(application2, 'app2:revision_b') }
|
21
21
|
|
22
22
|
describe 'GET /' do
|
23
23
|
let(:the_request) { get '/' }
|
@@ -39,12 +39,12 @@ describe EmberCliDeployRedis::Web do
|
|
39
39
|
it 'includes a row for each application' do
|
40
40
|
the_request
|
41
41
|
expect(last_response.body).to have_tag('tr') do
|
42
|
-
with_tag 'td.col-application a',
|
43
|
-
with_tag 'td.col-current-revision', text: /
|
42
|
+
with_tag 'td.col-application a', text: '/applications/application1', text: 'application1'
|
43
|
+
with_tag 'td.col-current-revision', text: /app1:revision_a/
|
44
44
|
end
|
45
45
|
expect(last_response.body).to have_tag('tr') do
|
46
46
|
with_tag 'td.col-application a', href: '/applications/application2', text: 'application2'
|
47
|
-
with_tag 'td.col-current-revision', text: /
|
47
|
+
with_tag 'td.col-current-revision', text: /app2:revision_b/
|
48
48
|
end
|
49
49
|
end
|
50
50
|
end
|
@@ -65,40 +65,40 @@ describe EmberCliDeployRedis::Web do
|
|
65
65
|
it 'includes a row for each revision' do
|
66
66
|
the_request
|
67
67
|
expect(last_response.body).to have_tag('tr') do
|
68
|
-
with_tag 'td.col-revision', text: /
|
68
|
+
with_tag 'td.col-revision', text: /app1:revision_b/
|
69
69
|
end
|
70
70
|
expect(last_response.body).to have_tag('tr') do
|
71
|
-
with_tag 'td.col-revision', text: /
|
71
|
+
with_tag 'td.col-revision', text: /app1:revision_a/
|
72
72
|
end
|
73
73
|
expect(last_response.body).to have_tag('tr') do
|
74
|
-
with_tag 'td.col-revision', text: /
|
74
|
+
with_tag 'td.col-revision', text: /app1:revision_b/
|
75
75
|
end
|
76
76
|
end
|
77
77
|
it 'shows the correct revisions as Active' do
|
78
78
|
the_request
|
79
|
-
expect(last_response.body).to have_tag('tr.revision-
|
79
|
+
expect(last_response.body).to have_tag('tr.revision-app1-revision_b') do
|
80
80
|
with_tag 'td.col-status', text: /\A\s*Active\s*\z/
|
81
81
|
end
|
82
82
|
end
|
83
83
|
it 'does not show the inactive revisions as Active' do
|
84
84
|
the_request
|
85
|
-
expect(last_response.body).to have_tag('tr.revision-
|
85
|
+
expect(last_response.body).to have_tag('tr.revision-app1-revision_a') do
|
86
86
|
without_tag 'td.col-status', text: /\A\s*Active\s*\z/
|
87
87
|
end
|
88
88
|
end
|
89
89
|
it 'has a Make Active button on non-active revisions' do
|
90
90
|
the_request
|
91
91
|
expect(last_response.body).to have_tag(
|
92
|
-
'tr.revision-
|
92
|
+
'tr.revision-app1-revision_a td.col-status form',
|
93
93
|
method: 'post',
|
94
|
-
action: '/applications/application1/activate/
|
94
|
+
action: '/applications/application1/activate/app1%3Arevision_a',
|
95
95
|
) do
|
96
96
|
with_tag 'input', value: /Make Active/i
|
97
97
|
end
|
98
98
|
end
|
99
99
|
it 'does not have a Make Active button on active revisions' do
|
100
100
|
the_request
|
101
|
-
expect(last_response.body).to have_tag('tr.revision-
|
101
|
+
expect(last_response.body).to have_tag('tr.revision-app1-revision_b') do
|
102
102
|
without_tag 'td.col-status form'
|
103
103
|
end
|
104
104
|
end
|
@@ -117,14 +117,14 @@ describe EmberCliDeployRedis::Web do
|
|
117
117
|
it 'has a Test link for each non-active revision' do
|
118
118
|
the_request
|
119
119
|
expect(last_response.body).to have_tag(
|
120
|
-
'tr.revision-
|
120
|
+
'tr.revision-app1-revision_a td.col-revision a',
|
121
121
|
text: /test this revision/i,
|
122
|
-
href: '/?_specified_revision[application1]=
|
122
|
+
href: '/?_specified_revision[application1]=app1%3Arevision_a',
|
123
123
|
)
|
124
124
|
end
|
125
125
|
it 'does not have a Test link for active revisions' do
|
126
126
|
the_request
|
127
|
-
expect(last_response.body).to have_tag('tr.revision-
|
127
|
+
expect(last_response.body).to have_tag('tr.revision-app1-revision_b') do
|
128
128
|
without_tag 'td.col-status a', text: /test this revision/i
|
129
129
|
end
|
130
130
|
end
|
@@ -132,7 +132,7 @@ describe EmberCliDeployRedis::Web do
|
|
132
132
|
end
|
133
133
|
|
134
134
|
describe 'POST /applications/:app_name/activate/:revision_name' do
|
135
|
-
let(:the_request) { post "/applications/application1/activate/
|
135
|
+
let(:the_request) { post "/applications/application1/activate/app1%3Arevision_a" }
|
136
136
|
|
137
137
|
before do
|
138
138
|
app1_revision_a.activate!
|
data/web/views/_footer.erb
CHANGED
@@ -3,10 +3,10 @@
|
|
3
3
|
<div class="container text-center">
|
4
4
|
<ul class="nav">
|
5
5
|
<li>
|
6
|
-
<p class="navbar-text" style="color:white;"><%= product_version %></p>
|
6
|
+
<p class="navbar-text" style="color:white;"><%= h product_version %></p>
|
7
7
|
</li>
|
8
8
|
<li>
|
9
|
-
<p class="navbar-text"><%= Time.now.utc.strftime('%H:%M:%S UTC') %></p>
|
9
|
+
<p class="navbar-text"><%= h Time.now.utc.strftime('%H:%M:%S UTC') %></p>
|
10
10
|
</li>
|
11
11
|
</ul>
|
12
12
|
</div>
|
data/web/views/application.erb
CHANGED
@@ -1,33 +1,33 @@
|
|
1
1
|
<div class= "dashboard clearfix">
|
2
2
|
<h3 >
|
3
|
-
<%= t('ApplicationRevisions', application_name: @application.name) %>
|
3
|
+
<%= h t('ApplicationRevisions', application_name: @application.name) %>
|
4
4
|
</h3>
|
5
5
|
</div>
|
6
6
|
|
7
7
|
<div class="table_container">
|
8
8
|
<table class="revisions table table-hover table-bordered table-striped table-white">
|
9
9
|
<thead>
|
10
|
-
<th class='col col-status'><%= t('Status') %></th>
|
11
|
-
<th class='col col-revision'><%= t('Revision') %></th>
|
10
|
+
<th class='col col-status'><%= h t('Status') %></th>
|
11
|
+
<th class='col col-revision'><%= h t('Revision') %></th>
|
12
12
|
</thead>
|
13
13
|
<tbody>
|
14
14
|
<% @revisions.each do |revision| %>
|
15
|
-
<tr class='revision revision-<%= revision.name
|
15
|
+
<tr class='revision revision-<%= css_class_name(revision.name) %>'>
|
16
16
|
<td class='col col-status' width="15%">
|
17
17
|
<% if revision.active? %>
|
18
18
|
Active
|
19
19
|
<% else %>
|
20
|
-
<form action="<%= root_path
|
20
|
+
<form action="<%= h root_path %><%= h revision_activate_path(revision) %>" method="post">
|
21
21
|
<%= csrf_tag %>
|
22
|
-
<input class="btn btn-warn btn-xs" type="submit" name="activate" value="<%= t('MakeActive') %>" data-confirm="<%= t('AreYouSureActivateRevision', revision:
|
22
|
+
<input class="btn btn-warn btn-xs" type="submit" name="activate" value="<%= h t('MakeActive') %>" data-confirm="<%= h t('AreYouSureActivateRevision', revision: revision.name) %>" />
|
23
23
|
</form>
|
24
24
|
<% end %>
|
25
25
|
</td>
|
26
26
|
<td class='col col-revision'>
|
27
|
-
<%= revision.name %>
|
27
|
+
<%= h revision.name %>
|
28
28
|
<% if revision_specifier_query_param && !revision.active? %>
|
29
|
-
<a target='_new' href="<%= revision_test_url(revision) %>">
|
30
|
-
<%= t('TestThisRevision') %>
|
29
|
+
<a target='_new' href="<%= h revision_test_url(revision) %>">
|
30
|
+
<%= h t('TestThisRevision') %>
|
31
31
|
</a>
|
32
32
|
<% end %>
|
33
33
|
</td>
|
data/web/views/dashboard.erb
CHANGED
@@ -1,23 +1,23 @@
|
|
1
1
|
<div class= "dashboard clearfix">
|
2
2
|
<h3 >
|
3
|
-
<%= t('DeployedApplications') %>
|
3
|
+
<%= h t('DeployedApplications') %>
|
4
4
|
</h3>
|
5
5
|
</div>
|
6
6
|
|
7
7
|
<div class="table_container">
|
8
8
|
<table class="applications table table-hover table-bordered table-striped table-white">
|
9
9
|
<thead>
|
10
|
-
<th class='col col-application'><%= t('Application') %></th>
|
11
|
-
<th class='col col-current-revision'><%= t('CurrentRevision') %></th>
|
10
|
+
<th class='col col-application'><%= h t('Application') %></th>
|
11
|
+
<th class='col col-current-revision'><%= h t('CurrentRevision') %></th>
|
12
12
|
</thead>
|
13
13
|
<tbody>
|
14
14
|
<% @applications.each do |application| %>
|
15
15
|
<tr class='application'>
|
16
16
|
<td class='col col-application'>
|
17
|
-
<a href="<%= root_path
|
17
|
+
<a href="<%= h root_path %><%= h application_path(application) %>"><%= h application.name %></a>
|
18
18
|
</td>
|
19
19
|
<td class='col col-current-revision'>
|
20
|
-
<%= application.active_revision ? application.active_revision.name : t('none')%>
|
20
|
+
<%= h application.active_revision ? application.active_revision.name : t('none')%>
|
21
21
|
</td>
|
22
22
|
</tr>
|
23
23
|
<% end %>
|
data/web/views/layout.erb
CHANGED
@@ -3,11 +3,11 @@
|
|
3
3
|
<head>
|
4
4
|
<title>Ember-CLI Deployments</title>
|
5
5
|
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
|
6
|
-
<link href="<%= root_path %>stylesheets/bootstrap.css" media="screen" rel="stylesheet" type="text/css" />
|
7
|
-
<link href="<%= root_path %>stylesheets/application.css" media="screen" rel="stylesheet" type="text/css" />
|
8
|
-
<link rel="shortcut icon" type="image/ico" href="<%= root_path %>images/favicon.ico" />
|
9
|
-
<script type="text/javascript" src="<%= root_path %>javascripts/application.js"></script>
|
10
|
-
<script type="text/javascript" src="<%= root_path %>javascripts/locales/jquery.timeago.<%= locale %>.js"></script>
|
6
|
+
<link href="<%= h root_path %>stylesheets/bootstrap.css" media="screen" rel="stylesheet" type="text/css" />
|
7
|
+
<link href="<%= h root_path %>stylesheets/application.css" media="screen" rel="stylesheet" type="text/css" />
|
8
|
+
<link rel="shortcut icon" type="image/ico" href="<%= h root_path %>images/favicon.ico" />
|
9
|
+
<script type="text/javascript" src="<%= h root_path %>javascripts/application.js"></script>
|
10
|
+
<script type="text/javascript" src="<%= h root_path %>javascripts/locales/jquery.timeago.<%= h locale %>.js"></script>
|
11
11
|
<meta name="google" content="notranslate" />
|
12
12
|
<%= display_custom_head %>
|
13
13
|
</head>
|
@@ -21,6 +21,6 @@
|
|
21
21
|
</div>
|
22
22
|
</div>
|
23
23
|
</div>
|
24
|
-
<%=
|
24
|
+
<%= erb :_footer %>
|
25
25
|
</body>
|
26
26
|
</html>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ember_cli_deploy_redis
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ahalogy
|
@@ -9,148 +9,144 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2016-01-22 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: redis
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- -
|
18
|
+
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '0'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- -
|
25
|
+
- - ">="
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: '0'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: fakeredis
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- -
|
32
|
+
- - ">="
|
33
33
|
- !ruby/object:Gem::Version
|
34
34
|
version: '0'
|
35
35
|
type: :development
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
|
-
- -
|
39
|
+
- - ">="
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: '0'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: shoulda-matchers
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
|
-
- -
|
46
|
+
- - ">="
|
47
47
|
- !ruby/object:Gem::Version
|
48
48
|
version: '0'
|
49
49
|
type: :development
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
|
-
- -
|
53
|
+
- - ">="
|
54
54
|
- !ruby/object:Gem::Version
|
55
55
|
version: '0'
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: dotenv
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
|
-
- -
|
60
|
+
- - ">="
|
61
61
|
- !ruby/object:Gem::Version
|
62
62
|
version: '0'
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
|
-
- -
|
67
|
+
- - ">="
|
68
68
|
- !ruby/object:Gem::Version
|
69
69
|
version: '0'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: rspec
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
|
-
- -
|
74
|
+
- - ">="
|
75
75
|
- !ruby/object:Gem::Version
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
|
-
- -
|
81
|
+
- - ">="
|
82
82
|
- !ruby/object:Gem::Version
|
83
83
|
version: '0'
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
85
|
name: sinatra
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
|
-
- - ~>
|
88
|
+
- - "~>"
|
89
89
|
- !ruby/object:Gem::Version
|
90
90
|
version: '1.4'
|
91
|
-
- -
|
91
|
+
- - ">="
|
92
92
|
- !ruby/object:Gem::Version
|
93
93
|
version: 1.4.6
|
94
94
|
type: :development
|
95
95
|
prerelease: false
|
96
96
|
version_requirements: !ruby/object:Gem::Requirement
|
97
97
|
requirements:
|
98
|
-
- - ~>
|
98
|
+
- - "~>"
|
99
99
|
- !ruby/object:Gem::Version
|
100
100
|
version: '1.4'
|
101
|
-
- -
|
101
|
+
- - ">="
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: 1.4.6
|
104
104
|
- !ruby/object:Gem::Dependency
|
105
105
|
name: rack-test
|
106
106
|
requirement: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
type: :development
|
112
112
|
prerelease: false
|
113
113
|
version_requirements: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - ">="
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: '0'
|
118
118
|
- !ruby/object:Gem::Dependency
|
119
119
|
name: rspec-html-matchers
|
120
120
|
requirement: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - ">="
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
125
|
type: :development
|
126
126
|
prerelease: false
|
127
127
|
version_requirements: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- -
|
129
|
+
- - ">="
|
130
130
|
- !ruby/object:Gem::Version
|
131
131
|
version: '0'
|
132
|
-
description:
|
133
|
-
deployed using our fork of
|
134
|
-
|
132
|
+
description: |
|
133
|
+
Handles the serving of page contents of deployed ember-cli projects deployed using our fork of
|
135
134
|
(ember-cli-deploy-redis)[https://github.com/Ahalogy/ember-cli-deploy-redis],
|
136
|
-
|
137
135
|
which stores deployment information including the index page contents in Redis.
|
138
|
-
|
139
|
-
'
|
140
136
|
email:
|
141
137
|
- robin@robindaugherty.net
|
142
138
|
executables: []
|
143
139
|
extensions: []
|
144
140
|
extra_rdoc_files: []
|
145
141
|
files:
|
146
|
-
- .gitignore
|
147
|
-
- .hound.yml
|
148
|
-
- .jrubyrc
|
149
|
-
- .rspec
|
150
|
-
- .rubocop.yml
|
151
|
-
- .ruby-version
|
152
|
-
- .tm_properties
|
153
|
-
- .travis.yml
|
142
|
+
- ".gitignore"
|
143
|
+
- ".hound.yml"
|
144
|
+
- ".jrubyrc"
|
145
|
+
- ".rspec"
|
146
|
+
- ".rubocop.yml"
|
147
|
+
- ".ruby-version"
|
148
|
+
- ".tm_properties"
|
149
|
+
- ".travis.yml"
|
154
150
|
- Gemfile
|
155
151
|
- README.md
|
156
152
|
- Rakefile
|
@@ -237,23 +233,32 @@ require_paths:
|
|
237
233
|
- lib
|
238
234
|
required_ruby_version: !ruby/object:Gem::Requirement
|
239
235
|
requirements:
|
240
|
-
- - ~>
|
236
|
+
- - "~>"
|
241
237
|
- !ruby/object:Gem::Version
|
242
238
|
version: '2.0'
|
243
239
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
244
240
|
requirements:
|
245
|
-
- -
|
241
|
+
- - ">="
|
246
242
|
- !ruby/object:Gem::Version
|
247
243
|
version: '0'
|
248
244
|
requirements:
|
249
245
|
- An Ember-ClI project
|
250
|
-
- (ember-cli-deploy)[https://github.com/ember-cli/ember-cli-deploy], 0.4.x
|
251
|
-
- (ember-cli-deploy-redis)[https://github.com/Ahalogy/ember-cli-deploy-redis]
|
246
|
+
- "(ember-cli-deploy)[https://github.com/ember-cli/ember-cli-deploy], 0.4.x"
|
247
|
+
- "(ember-cli-deploy-redis)[https://github.com/Ahalogy/ember-cli-deploy-redis]"
|
252
248
|
- A Ruby (Rails/Sinatra/etc) app to serve up the Ember-CLI project and provide it
|
253
249
|
an API.
|
254
250
|
rubyforge_project:
|
255
|
-
rubygems_version: 2.4.5
|
251
|
+
rubygems_version: 2.4.5.1
|
256
252
|
signing_key:
|
257
253
|
specification_version: 4
|
258
254
|
summary: Serves up ember-cli content deployed with our fork of ember-cli-deploy-redis
|
259
|
-
test_files:
|
255
|
+
test_files:
|
256
|
+
- spec/lib/ember_cli_deploy_redis/application_spec.rb
|
257
|
+
- spec/lib/ember_cli_deploy_redis/configuration_spec.rb
|
258
|
+
- spec/lib/ember_cli_deploy_redis/revision_list_spec.rb
|
259
|
+
- spec/lib/ember_cli_deploy_redis/revision_spec.rb
|
260
|
+
- spec/lib/ember_cli_deploy_redis/web_helpers_spec.rb
|
261
|
+
- spec/lib/ember_cli_deploy_redis/web_spec.rb
|
262
|
+
- spec/lib/ember_cli_deploy_redis_spec.rb
|
263
|
+
- spec/spec_helper.rb
|
264
|
+
has_rdoc:
|