dpl 1.5.1.travis.173.2 → 1.5.1.travis.174.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NzNmMDI0YzQzZjBlMDJhNTA2ZWQwMWMyMWQ2Y2YxOTQ3MTczZDVhYw==
4
+ OGI4YWI0NGM2YzMzMjc4NmE0NDU2OTdiOGQyNjA0Y2I1MmY1ZTBhOA==
5
5
  data.tar.gz: !binary |-
6
- NzA5OGFlNDIzMDg0MTAzMzljZGYyOWRlNzNiOWUyZmRjMzc3MzBkMw==
6
+ MjE1ZjQ1MTc3ODczNmE1ZTRiYjY4ZjkxMTMxYzNjOTEzMDY2MGQxZA==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- YjBkNjZkZDQzM2FjODIxOWM1ZWM1YWU5ZmMzYTNmN2Q5N2QyMGVjMGM5ZTU4
10
- MjVkYTQyNzVhYWQ2MjA3NzExOWIzYWRhYjQ0N2U3NTA2M2IyYzU2YWRiOWE4
11
- N2Y3MDAwZmZhYmM2OWE1ZmNlYWY1Y2RjNGJjMDU3ZGMxMzU5MWI=
9
+ NDYyOWRjYTk4ZTRlNGFhZjU0NTU5YTQ1MzFjN2FkMzI0YjRkNmM3MzZiZmZl
10
+ NDExMWY4NjA5ZDU5NzY2YWMxZGE0ZWU3ZGMwYzY2ODM3NWIxYmU5ZWYwOWM5
11
+ MGRiMzJiMTE2NDViNmM2NjcxZGQxZThiNGUwNGVlZDI4YmEwZDQ=
12
12
  data.tar.gz: !binary |-
13
- Yzk2MTU3NjNjOWIwMjdjZGRiNWU2ZjgzZDllMTBhY2FlYjQ4M2VlOGQ2YzZl
14
- ODkzN2E5Mjc3OTkzMjczYTMzZjI4ZWJmMWJmMzlkNGEzYjNlYWI1NzMwYjU0
15
- OGNmZTViYTBkMmUzYTNmNDAzMTY5OWM2YTkzZTg4MDkxYWMzZWU=
13
+ MzU0NDJhZDMzNzJmOWY3NjdiOTg3YjRkYjY5MDNjNjcyNjE2OTQ2M2IyMDI5
14
+ ZjFhNzY0ZTFiN2Q3ODYwNzdhY2JhNDU0N2JiNzFhMjcxNjkxNmFiOTA5MTNi
15
+ MDk4NDNhNjg3ZTdmNmU0YzUwZGFmNmE0YjFkMzY0ZmZjOTMwNzA=
data/Gemfile CHANGED
@@ -15,6 +15,10 @@ group :openshift do
15
15
  gem 'rhc'
16
16
  end
17
17
 
18
+ group :appfog do
19
+ gem 'af'
20
+ end
21
+
18
22
  group :rubygems do
19
23
  gem 'gems', '>= 0.8.3'
20
24
  end
data/lib/dpl/provider.rb CHANGED
@@ -6,6 +6,7 @@ module DPL
6
6
  include FileUtils
7
7
 
8
8
  autoload :Heroku, 'dpl/provider/heroku'
9
+ autoload :Appfog, 'dpl/provider/appfog'
9
10
  autoload :EngineYard, 'dpl/provider/engine_yard'
10
11
  autoload :DotCloud, 'dpl/provider/dot_cloud'
11
12
  autoload :Nodejitsu, 'dpl/provider/nodejitsu'
@@ -0,0 +1,25 @@
1
+ module DPL
2
+ class Provider
3
+ class Appfog < Provider
4
+ requires 'af', :load => 'vmc'
5
+ experimental "Appfog"
6
+
7
+ def check_auth
8
+ context.shell "af login --email=#{option(:email)} --password=#{option(:password)}"
9
+ end
10
+
11
+ def needs_key?
12
+ false
13
+ end
14
+
15
+ def push_app
16
+ context.shell "af update #{options[:app] || File.basename(Dir.getwd)}"
17
+ context.shell "af logout"
18
+ end
19
+
20
+ def cleanup
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,35 @@
1
+ require 'spec_helper'
2
+ require 'dpl/provider/appfog'
3
+
4
+ describe DPL::Provider::Appfog do
5
+ subject :provider do
6
+ described_class.new(DummyContext.new, :email => 'blah@foo.com', :password => 'bar')
7
+ end
8
+
9
+ describe :check_auth do
10
+ example do
11
+ provider.context.should_receive(:shell).with("af login --email=blah@foo.com --password=bar")
12
+ provider.check_auth
13
+ end
14
+ end
15
+
16
+ describe :needs_key? do
17
+ example do
18
+ provider.needs_key?.should == false
19
+ end
20
+ end
21
+
22
+ describe :push_app do
23
+ example "Without :app" do
24
+ provider.context.should_receive(:shell).with("af update dpl")
25
+ provider.context.should_receive(:shell).with("af logout")
26
+ provider.push_app
27
+ end
28
+ example "With :app" do
29
+ provider.options.update(:app => 'test')
30
+ provider.context.should_receive(:shell).with("af update test")
31
+ provider.context.should_receive(:shell).with("af logout")
32
+ provider.push_app
33
+ end
34
+ end
35
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dpl
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1.travis.173.2
4
+ version: 1.5.1.travis.174.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Konstantin Haase
@@ -85,6 +85,7 @@ files:
85
85
  - lib/dpl/cli.rb
86
86
  - lib/dpl/error.rb
87
87
  - lib/dpl/provider.rb
88
+ - lib/dpl/provider/appfog.rb
88
89
  - lib/dpl/provider/cloud_foundry.rb
89
90
  - lib/dpl/provider/cloudcontrol.rb
90
91
  - lib/dpl/provider/dot_cloud.rb
@@ -102,6 +103,7 @@ files:
102
103
  - notes/engine_yard.md
103
104
  - notes/heroku.md
104
105
  - spec/cli_spec.rb
106
+ - spec/provider/appfog_spec.rb
105
107
  - spec/provider/cloudcontrol_spec.rb
106
108
  - spec/provider/dotcloud_spec.rb
107
109
  - spec/provider/heroku_anvil_spec.rb