skypager 0.1.0 → 0.1.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,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 984b19714ab85d3529b5fde69301e7c3e39c38f1
4
- data.tar.gz: 4aaec7c874f1775de6ccccabcdb9fabaee4ea23f
3
+ metadata.gz: 98c87935f39c09753e202717a0834fb5758aab8e
4
+ data.tar.gz: 41896a5735a47f7e40740cbd280005e424216cf7
5
5
  SHA512:
6
- metadata.gz: 9b46f49ffd6b585be6cc99b0e9500af38f83f356f39e14110fa7f3b2443fc39795c4617db2e3fa9cc46a4267113d50420637acc2a14ffd665c24c62c6a8c59d2
7
- data.tar.gz: 29438b7fae153b509d13f7ec0debf2728bdcbd10099bd7c183889e3c13b9ab057d1c0ede0bdcaec9ab2c59959d8b23c055c546e12671e0e5dfc66525273f5cbb
6
+ metadata.gz: 0c718aa2daa482d9857251dce6565cc9660795f4667571f723e2fd76e251d1a8afbe5b8eb8af976dfeda3788f69be881e274273fdfd9c5510897db461ced7607
7
+ data.tar.gz: 1f5812373a97ec78b53b63a1ee369a59b245e7b7e88490befea11637a3365b3cc154316ffa057cde394f11beaba3c74f4b656c4207d27fc32004fb9f6879fab7
File without changes
@@ -48,12 +48,19 @@ module Skypager
48
48
  end
49
49
  end
50
50
 
51
+ def respond_to_directory_request(request)
52
+ [200, {}, [{type:"directory"}.to_json]]
53
+ end
54
+
51
55
  def respond_to(request)
52
56
  puts "== Responding to: #{ request.path }"
53
57
  case
54
58
  when request.path.match(/hooks/)
55
59
  puts "== Found hooks path"
56
60
  respond_to_webhook(request)
61
+ when request.path.match(/directory/)
62
+ puts "== Found directory path"
63
+ respond_to_directory_request(request)
57
64
  else
58
65
  [404, {}, [""]]
59
66
  end
@@ -1,3 +1,22 @@
1
+ command 'show deploy info' do |c|
2
+ c.syntax = 'skypager show deploy info'
3
+ c.description = 'display info about where this site will be deployed'
4
+
5
+ c.option '--verbose', nil, 'Display verbose status information'
6
+ c.option '--full', nil, 'Ignore the build manifest, deploy everything'
7
+
8
+ c.action do |args, options|
9
+ app = Skypager.app
10
+ site = app.site
11
+
12
+ puts "== Site Info:"
13
+ puts "==== Bucket Name: #{ site.bucket_name }"
14
+ puts "==== Bucket URL: #{ site.bucket_url }"
15
+ puts "==== CDN URL: #{ site.cname_value }" if site.has_cdn?
16
+ puts "==== Custom Domain: #{ site.custom_domain }" if site.custom_domain?
17
+
18
+ end
19
+ end
1
20
  command 'deploy' do |c|
2
21
  c.syntax = 'skypager deploy [options]'
3
22
  c.description = 'deploy this site'
@@ -22,6 +41,10 @@ command 'deploy' do |c|
22
41
  "/#{ resource.request_path }"
23
42
  end
24
43
 
44
+ paths << "/"
45
+
46
+ paths.uniq!
47
+
25
48
  begin
26
49
  service = cdn.service
27
50
 
@@ -111,10 +111,21 @@ module Skypager
111
111
  DefaultSettings.dup
112
112
  end
113
113
 
114
- def current
115
- @current ||= begin
116
- defaults.merge(home_config.merge(cwd_config.merge(applied_config))).to_mash
117
- end
114
+ def current(using_environment = true)
115
+ @current ||= calculate_config(using_environment)
116
+ end
117
+
118
+ def calculate_config(using_environment = true)
119
+ @current = defaults.merge(home_config.merge(cwd_config.merge(applied_config))).to_mash
120
+
121
+ (defaults.keys + home_config.keys + cwd_config.keys).uniq.each do |key|
122
+ upper = key.to_s.upcase
123
+ if ENV[upper]
124
+ @current[key] = ENV[upper]
125
+ end
126
+ end if using_environment
127
+
128
+ @current
118
129
  end
119
130
 
120
131
  def apply_config(hash={})
@@ -152,6 +152,8 @@ module Skypager
152
152
  def last_updated_at
153
153
  if value = spreadsheet.document_feed_entry_internal.css('updated').try(:text) rescue nil
154
154
  DateTime.parse(value).to_i
155
+ else
156
+ Time.now.to_i
155
157
  end
156
158
  end
157
159
 
@@ -56,7 +56,9 @@ module Skypager
56
56
  @options = options
57
57
  @config = options.delete(:config)
58
58
  @config ||= self.class.directory[@name] ||= {name: @name}
59
- @config = @config.to_mash if @config.is_a?(Hash)
59
+ @config = @config.to_mash if @config.is_a?(Hash)
60
+
61
+ @config.reverse_merge!(options[:deploy_options]) if options[:deploy_options]
60
62
  end
61
63
 
62
64
  def build_command
@@ -134,7 +136,7 @@ module Skypager
134
136
 
135
137
  def deploy_options
136
138
  options.fetch(:deploy_options) do
137
- config.deploy_options || {}
139
+ (config.deploy_options || {}).to_mash
138
140
  end
139
141
  end
140
142
 
@@ -285,7 +287,7 @@ module Skypager
285
287
  end
286
288
 
287
289
  def custom_domain?
288
- get!(:custom_domain)
290
+ "#{get!(:custom_domain) || deploy_options.custom_domain}".to_s.length > 0
289
291
  end
290
292
 
291
293
  def deploy_options_config_string
@@ -314,8 +316,9 @@ module Skypager
314
316
  end
315
317
 
316
318
  def custom_domain
317
- value = get(:custom_domain).to_s
318
- value if value.length > 0
319
+ value = get!(:custom_domain)
320
+ value = deploy_options.custom_domain if value.nil? || value.to_s.length > 0
321
+ value
319
322
  end
320
323
 
321
324
  def fetch(key, &block)
@@ -1,3 +1,3 @@
1
1
  module Skypager
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ["lib"]
20
20
 
21
21
  spec.add_dependency 'hashie'
22
- spec.add_dependency 'commander'
22
+ spec.add_dependency 'commander', '~> 4.2'
23
23
  spec.add_dependency 'fog'
24
24
  spec.add_dependency 'dropbox-api', '>= 0.4.3'
25
25
  spec.add_dependency 'google_drive'
@@ -38,7 +38,7 @@ Gem::Specification.new do |spec|
38
38
  # spec.add_dependency 'spawnling', '~> 2.1.5'
39
39
  # spec.add_dependency 'eventmachine'
40
40
 
41
- spec.add_dependency "aws-sdk-core", "2.0.0.rc8"
41
+ #spec.add_dependency "aws-sdk-core", "2.0.0.rc8"
42
42
 
43
43
  spec.add_development_dependency "bundler", "~> 1.3"
44
44
  spec.add_development_dependency "rake", '~> 0'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: skypager
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathan Soeder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-03 00:00:00.000000000 Z
11
+ date: 2015-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hashie
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: commander
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '4.2'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '4.2'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: fog
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -206,20 +206,6 @@ dependencies:
206
206
  - - ">="
207
207
  - !ruby/object:Gem::Version
208
208
  version: 3.0.0
209
- - !ruby/object:Gem::Dependency
210
- name: aws-sdk-core
211
- requirement: !ruby/object:Gem::Requirement
212
- requirements:
213
- - - '='
214
- - !ruby/object:Gem::Version
215
- version: 2.0.0.rc8
216
- type: :runtime
217
- prerelease: false
218
- version_requirements: !ruby/object:Gem::Requirement
219
- requirements:
220
- - - '='
221
- - !ruby/object:Gem::Version
222
- version: 2.0.0.rc8
223
209
  - !ruby/object:Gem::Dependency
224
210
  name: bundler
225
211
  requirement: !ruby/object:Gem::Requirement