ember_cli_deploy_redis 1.0.0 → 1.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.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MTBjNmE1MTRkMTg2NDY5ZGFjNzY3YTliZjQ4NGUxOTM1MWMxMTZiMg==
5
- data.tar.gz: !binary |-
6
- YTgwYjZmYTdmZGUwYjQwMjUzMWI5N2I3ZDBmZTFjMjUwMDBhNjhhNQ==
2
+ SHA1:
3
+ metadata.gz: baae47917d4532d449a73befdaaa83f72bce7016
4
+ data.tar.gz: 1b23a6a7a553e9632ffa0a7e4d1cbc0961ea6055
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- MTQ5YmM1MDljMWMxMWYxMzk1M2JlZmVhOTExYTlmMDY5MDg3ZTc1ODBkYWVl
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
 
@@ -1,3 +1,3 @@
1
1
  module EmberCliDeployRedis
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
@@ -7,7 +7,10 @@ require 'ember_cli_deploy_redis/web_helpers'
7
7
 
8
8
  module EmberCliDeployRedis
9
9
  class Web < Sinatra::Base
10
- enable :sessions
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/:app_name" do
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/:app_name/activate/:revision_name" do
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, 'app1_revision_a') }
17
- let(:app1_revision_b) { EmberCliDeployRedis::Revision.new(application1, 'app1_revision_b') }
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, 'app2_revision_a') }
20
- let(:app2_revision_b) { EmberCliDeployRedis::Revision.new(application2, 'app2_revision_b') }
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', href: '/applications/application1', text: 'application1'
43
- with_tag 'td.col-current-revision', text: /app1_revision_a/
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: /app2_revision_b/
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: /app1_revision_b/
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: /app1_revision_a/
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: /app1_revision_b/
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-app1_revision_b') do
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-app1_revision_a') do
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-app1_revision_a td.col-status form',
92
+ 'tr.revision-app1-revision_a td.col-status form',
93
93
  method: 'post',
94
- action: '/applications/application1/activate/app1_revision_a',
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-app1_revision_b') do
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-app1_revision_a td.col-revision a',
120
+ 'tr.revision-app1-revision_a td.col-revision a',
121
121
  text: /test this revision/i,
122
- href: '/?_specified_revision[application1]=app1_revision_a',
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-app1_revision_b') do
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/app1_revision_a" }
135
+ let(:the_request) { post "/applications/application1/activate/app1%3Arevision_a" }
136
136
 
137
137
  before do
138
138
  app1_revision_a.activate!
@@ -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>
@@ -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.gsub(/\W+/, '-')%>'>
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 %>applications/<%= @application.name %>/activate/<%= revision.name %>" method="post">
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: h(revision.name)) %>" />
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>
@@ -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 %>applications/<%= application.name %>"><%= application.name %></a>
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 %>
@@ -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
- <%= erb :_footer %>
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.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: 2015-12-22 00:00:00.000000000 Z
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: ! 'Handles the serving of page contents of deployed ember-cli projects
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: