dpl 1.8.15.travis.1358.4 → 1.8.15.travis.1374.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/README.md +20 -0
- data/lib/dpl/provider.rb +1 -0
- data/lib/dpl/provider/surge.rb +33 -0
- data/spec/provider/surge_spec.rb +15 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MzM5YmQ3ZTQ1ZDMxODhlZWY0N2U5NjE3OGIyMWE0Yjg4MDkzZTUzYg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZTlhNWZhZjdmMzRiNjFjNjYwMDcyMjk5YmQ3ZDRjOWE2NTU1OWZlOQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZjNkNTdmM2E5ZWM2NmVlNWI0ODY3Mzc5ZGE0NjA4NDMwZDhhZDBmNjc1ODRl
|
10
|
+
Yzc3NTM3YzhiZTA3MDkwYmNiZWUxMmU2MDA0MWEzNmRlNzEzMTE5YmJkYWNh
|
11
|
+
NDQ5NTMxNDJjOTVmYTc4ODkxMGIzOWVlMzU1N2IzYmE3ZDNjZmM=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NGExODJkZDNlNDc3YjVlNDYyNjkyZGE1Mjg5N2I5ZWY5YTNjMjFiYTdhYzY0
|
14
|
+
Yzk3MjM3OGM5ZjlhNjNmM2MzMTdkZTk4NWEzNzJjZTkwZGNjNDBiMTQ0OTE0
|
15
|
+
NmE2YTQyZjJlNWVjMjA0YThiZTkxZTk4NDkyZmU4YjlkOTE3NGQ=
|
data/README.md
CHANGED
@@ -47,6 +47,7 @@ Dpl supports the following providers:
|
|
47
47
|
* [S3](#s3)
|
48
48
|
* [Scalingo](#scalingo)
|
49
49
|
* [Script](#script)
|
50
|
+
* [Surge.sh](#surgesh)
|
50
51
|
* [TestFairy](#testfairy)
|
51
52
|
|
52
53
|
## Installation:
|
@@ -871,3 +872,22 @@ In order to use this provider, please make sure you have the [App Engine Admin A
|
|
871
872
|
#### Examples:
|
872
873
|
|
873
874
|
dpl --provider=firebase --token=<token> --project=<project>
|
875
|
+
|
876
|
+
|
877
|
+
|
878
|
+
### Surge.sh
|
879
|
+
|
880
|
+
#### Options:
|
881
|
+
|
882
|
+
* **project** Path to project folder relative to repo root. Defaults to repo root if not set.
|
883
|
+
* **domain** Domain to publish to. Can be omitted if domain is set in the `CNAME` file in the project folder.
|
884
|
+
|
885
|
+
|
886
|
+
#### Environment variables:
|
887
|
+
|
888
|
+
* **SURGE_LOGIN**: Set it to the email address you use with Surge
|
889
|
+
* **SURGE_TOKEN**: Set it to your login token (get it by doing a `surge token`)
|
890
|
+
|
891
|
+
#### Example:
|
892
|
+
dpl --provider=surge --project=<project-path> --domain=<domain-name>
|
893
|
+
|
data/lib/dpl/provider.rb
CHANGED
@@ -46,6 +46,7 @@ module DPL
|
|
46
46
|
autoload :S3, 'dpl/provider/s3'
|
47
47
|
autoload :Scalingo, 'dpl/provider/scalingo'
|
48
48
|
autoload :Script, 'dpl/provider/script'
|
49
|
+
autoload :Surge, 'dpl/provider/surge'
|
49
50
|
autoload :TestFairy, 'dpl/provider/testfairy'
|
50
51
|
autoload :Transifex, 'dpl/provider/transifex'
|
51
52
|
|
@@ -0,0 +1,33 @@
|
|
1
|
+
module DPL
|
2
|
+
class Provider
|
3
|
+
class Surge < Provider
|
4
|
+
npm_g 'surge'
|
5
|
+
|
6
|
+
def project
|
7
|
+
File.expand_path( (context.env['TRAVIS_BUILD_DIR'] || '.' ) + "/" + (options[:project] || '') )
|
8
|
+
end
|
9
|
+
|
10
|
+
def domain
|
11
|
+
options[:domain] || ''
|
12
|
+
end
|
13
|
+
|
14
|
+
def check_auth
|
15
|
+
if ! context.env['SURGE_TOKEN'] then raise Error, "Please add SURGE_TOKEN in Travis settings (get your token with 'surge token')" end
|
16
|
+
if ! context.env['SURGE_LOGIN'] then raise Error, "Please add SURGE_LOGIN in Travis settings (its your email)" end
|
17
|
+
end
|
18
|
+
|
19
|
+
def check_app
|
20
|
+
if ! File.directory?(project) then raise Error, "Please set a valid project folder path in .travis.yml under deploy: project: myPath" end
|
21
|
+
if domain.empty? && ! File.exist?("#{project}/CNAME") then raise Error, "Please set domain in .travis.yml under deploy: project: myDomain (or in a CNAME file in the repo project folder)" end
|
22
|
+
end
|
23
|
+
|
24
|
+
def needs_key?
|
25
|
+
false
|
26
|
+
end
|
27
|
+
|
28
|
+
def push_app
|
29
|
+
context.shell "surge #{project} #{domain}"
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'dpl/provider/surge'
|
3
|
+
|
4
|
+
describe DPL::Provider::Surge do
|
5
|
+
subject :provider do
|
6
|
+
described_class.new(DummyContext.new, :project => './', :domain => 'mydomain')
|
7
|
+
end
|
8
|
+
|
9
|
+
describe "#push_app" do
|
10
|
+
it 'should peforme a surge command with correct project and domain set' do
|
11
|
+
expect(provider.context).to receive(:shell).with("surge " + File.expand_path('./') + " mydomain")
|
12
|
+
provider.push_app
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dpl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.15.travis.
|
4
|
+
version: 1.8.15.travis.1374.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Konstantin Haase
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-04-
|
11
|
+
date: 2016-04-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -161,6 +161,7 @@ files:
|
|
161
161
|
- lib/dpl/provider/s3.rb
|
162
162
|
- lib/dpl/provider/scalingo.rb
|
163
163
|
- lib/dpl/provider/script.rb
|
164
|
+
- lib/dpl/provider/surge.rb
|
164
165
|
- lib/dpl/provider/testfairy.rb
|
165
166
|
- lib/dpl/provider/transifex.rb
|
166
167
|
- lib/dpl/version.rb
|
@@ -207,6 +208,7 @@ files:
|
|
207
208
|
- spec/provider/s3_spec.rb
|
208
209
|
- spec/provider/scalingo_spec.rb
|
209
210
|
- spec/provider/script_spec.rb
|
211
|
+
- spec/provider/surge_spec.rb
|
210
212
|
- spec/provider/testfairy_spec.rb
|
211
213
|
- spec/provider/transifex_spec.rb
|
212
214
|
- spec/provider_spec.rb
|