dpl 1.10.17.travis.6637.6 → 2.0.0.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (140) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +74 -0
  3. data/CONTRIBUTING.md +392 -0
  4. data/Gemfile +17 -3
  5. data/Gemfile.lock +373 -0
  6. data/LICENSE +16 -19
  7. data/NOTES.md +275 -0
  8. data/README.md +1977 -707
  9. data/Rakefile +2 -2
  10. data/bin/dpl +7 -3
  11. data/lib/dpl.rb +20 -0
  12. data/lib/dpl/assets/atlas/install +19 -0
  13. data/lib/dpl/assets/dpl/README.erb.md +133 -0
  14. data/lib/dpl/assets/dpl/git_ssh +2 -0
  15. data/lib/dpl/assets/git/detect_private_key +8 -0
  16. data/lib/dpl/assets/hephy/filter_log +3 -0
  17. data/lib/dpl/assets/pypi/install +4 -0
  18. data/lib/dpl/assets/scalingo/install +6 -0
  19. data/lib/dpl/cli.rb +36 -48
  20. data/lib/dpl/ctx.rb +2 -0
  21. data/lib/dpl/ctx/bash.rb +543 -0
  22. data/lib/dpl/ctx/test.rb +242 -0
  23. data/lib/dpl/helper/assets.rb +36 -0
  24. data/lib/dpl/helper/cmd.rb +167 -0
  25. data/lib/dpl/helper/config_file.rb +47 -0
  26. data/lib/dpl/helper/env.rb +39 -0
  27. data/lib/dpl/helper/interpolate.rb +126 -0
  28. data/lib/dpl/helper/memoize.rb +20 -0
  29. data/lib/dpl/helper/squiggle.rb +22 -0
  30. data/lib/dpl/helper/zip.rb +69 -0
  31. data/lib/dpl/provider.rb +562 -234
  32. data/lib/dpl/provider/dsl.rb +369 -0
  33. data/lib/dpl/provider/examples.rb +128 -0
  34. data/lib/dpl/provider/status.rb +59 -0
  35. data/lib/dpl/providers.rb +40 -0
  36. data/lib/dpl/providers/anynines.rb +65 -0
  37. data/lib/dpl/providers/atlas.rb +49 -0
  38. data/lib/dpl/providers/azure_web_apps.rb +59 -0
  39. data/lib/dpl/providers/bintray.rb +313 -0
  40. data/lib/dpl/providers/bluemixcloudfoundry.rb +92 -0
  41. data/lib/dpl/providers/boxfuse.rb +48 -0
  42. data/lib/dpl/providers/cargo.rb +19 -0
  43. data/lib/dpl/providers/chef_supermarket.rb +128 -0
  44. data/lib/dpl/providers/cloud66.rb +40 -0
  45. data/lib/dpl/providers/cloudfiles.rb +56 -0
  46. data/lib/dpl/providers/cloudfoundry.rb +81 -0
  47. data/lib/dpl/providers/codedeploy.rb +179 -0
  48. data/lib/dpl/providers/datica.rb +60 -0
  49. data/lib/dpl/providers/elasticbeanstalk.rb +195 -0
  50. data/lib/dpl/providers/engineyard.rb +107 -0
  51. data/lib/dpl/providers/firebase.rb +41 -0
  52. data/lib/dpl/providers/gae.rb +74 -0
  53. data/lib/dpl/providers/gcs.rb +105 -0
  54. data/lib/dpl/providers/hackage.rb +47 -0
  55. data/lib/dpl/providers/hephy.rb +101 -0
  56. data/lib/dpl/providers/heroku.rb +111 -0
  57. data/lib/dpl/providers/heroku/api.rb +119 -0
  58. data/lib/dpl/providers/heroku/git.rb +50 -0
  59. data/lib/dpl/providers/lambda.rb +202 -0
  60. data/lib/dpl/providers/launchpad.rb +74 -0
  61. data/lib/dpl/providers/netlify.rb +30 -0
  62. data/lib/dpl/providers/npm.rb +88 -0
  63. data/lib/dpl/providers/openshift.rb +46 -0
  64. data/lib/dpl/providers/opsworks.rb +142 -0
  65. data/lib/dpl/providers/packagecloud.rb +190 -0
  66. data/lib/dpl/providers/pages.rb +17 -0
  67. data/lib/dpl/providers/pages/api.rb +102 -0
  68. data/lib/dpl/providers/pages/git.rb +251 -0
  69. data/lib/dpl/providers/puppetforge.rb +44 -0
  70. data/lib/dpl/providers/pypi.rb +120 -0
  71. data/lib/dpl/providers/releases.rb +214 -0
  72. data/lib/dpl/providers/rubygems.rb +89 -0
  73. data/lib/dpl/providers/s3.rb +243 -0
  74. data/lib/dpl/providers/scalingo.rb +63 -0
  75. data/lib/dpl/providers/script.rb +28 -0
  76. data/lib/dpl/providers/snap.rb +59 -0
  77. data/lib/dpl/providers/surge.rb +55 -0
  78. data/lib/dpl/providers/testfairy.rb +93 -0
  79. data/lib/dpl/providers/transifex.rb +66 -0
  80. data/lib/dpl/support/aws_sdk_patch.rb +23 -0
  81. data/lib/dpl/support/gems.rb +69 -0
  82. data/lib/dpl/support/gstore_patch.rb +6 -0
  83. data/lib/dpl/support/version.rb +83 -0
  84. data/lib/dpl/version.rb +2 -2
  85. metadata +98 -169
  86. data/.coveralls.yml +0 -1
  87. data/.github/CONTRIBUTING.md +0 -173
  88. data/.github/stale.yml +0 -53
  89. data/.gitignore +0 -13
  90. data/.rspec +0 -2
  91. data/.travis.yml +0 -56
  92. data/dpl-anynines.gemspec +0 -3
  93. data/dpl-atlas.gemspec +0 -3
  94. data/dpl-azure_webapps.gemspec +0 -3
  95. data/dpl-bintray.gemspec +0 -3
  96. data/dpl-bitballoon.gemspec +0 -3
  97. data/dpl-bluemix_cloud_foundry.gemspec +0 -3
  98. data/dpl-boxfuse.gemspec +0 -3
  99. data/dpl-cargo.gemspec +0 -3
  100. data/dpl-catalyze.gemspec +0 -3
  101. data/dpl-chef_supermarket.gemspec +0 -20
  102. data/dpl-cloud66.gemspec +0 -3
  103. data/dpl-cloud_files.gemspec +0 -3
  104. data/dpl-cloud_foundry.gemspec +0 -3
  105. data/dpl-code_deploy.gemspec +0 -3
  106. data/dpl-deis.gemspec +0 -3
  107. data/dpl-elastic_beanstalk.gemspec +0 -3
  108. data/dpl-engine_yard.gemspec +0 -3
  109. data/dpl-firebase.gemspec +0 -3
  110. data/dpl-gae.gemspec +0 -3
  111. data/dpl-gcs.gemspec +0 -3
  112. data/dpl-hackage.gemspec +0 -3
  113. data/dpl-hephy.gemspec +0 -3
  114. data/dpl-heroku.gemspec +0 -3
  115. data/dpl-lambda.gemspec +0 -3
  116. data/dpl-launchpad.gemspec +0 -3
  117. data/dpl-npm.gemspec +0 -3
  118. data/dpl-openshift.gemspec +0 -3
  119. data/dpl-ops_works.gemspec +0 -3
  120. data/dpl-packagecloud.gemspec +0 -3
  121. data/dpl-pages.gemspec +0 -3
  122. data/dpl-puppet_forge.gemspec +0 -3
  123. data/dpl-pypi.gemspec +0 -3
  124. data/dpl-releases.gemspec +0 -8
  125. data/dpl-rubygems.gemspec +0 -3
  126. data/dpl-s3.gemspec +0 -3
  127. data/dpl-scalingo.gemspec +0 -3
  128. data/dpl-script.gemspec +0 -3
  129. data/dpl-snap.gemspec +0 -3
  130. data/dpl-surge.gemspec +0 -3
  131. data/dpl-testfairy.gemspec +0 -3
  132. data/dpl-transifex.gemspec +0 -3
  133. data/dpl.gemspec +0 -3
  134. data/gemspec_helper.rb +0 -51
  135. data/lib/dpl/error.rb +0 -3
  136. data/notes/engine_yard.md +0 -1
  137. data/notes/heroku.md +0 -3
  138. data/spec/cli_spec.rb +0 -36
  139. data/spec/provider_spec.rb +0 -191
  140. data/spec/spec_helper.rb +0 -20
data/.github/stale.yml DELETED
@@ -1,53 +0,0 @@
1
- # Configuration for probot-stale - https://github.com/probot/stale
2
-
3
- # Number of days of inactivity before an Issue or Pull Request becomes stale
4
- daysUntilStale: 90
5
-
6
- # Number of days of inactivity before a stale Issue or Pull Request is closed.
7
- # Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
8
- daysUntilClose: 1
9
-
10
- # Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
11
- exemptLabels:
12
- - WIP
13
- - work in progress
14
- - important
15
- - locked
16
-
17
- # Set to true to ignore issues in a project (defaults to false)
18
- exemptProjects: false
19
-
20
- # Set to true to ignore issues in a milestone (defaults to false)
21
- exemptMilestones: false
22
-
23
- # Label to use when marking as stale
24
- staleLabel: stale
25
-
26
- # Comment to post when marking as stale. Set to `false` to disable
27
- markComment: >
28
- Thanks for contributing to this issue. As it has been 90 days since the last activity, we are automatically closing the issue. This is often because the request was already solved in some way and it just wasn't updated or it's no longer applicable. If that's not the case, please do feel free to either reopen this issue or open a new one. We'll gladly take a look again! You can read more here: https://blog.travis-ci.com/2018-03-09-closing-old-issues
29
- # Comment to post when removing the stale label.
30
- # unmarkComment: >
31
- # Your comment here.
32
-
33
- # Comment to post when closing a stale Issue or Pull Request.
34
- #closeComment: >
35
- # Thanks for contributing to this issue. As it has been 90 days since the last activity, we are automatically closing the issue. This is often because the request was already solved in some way and it just wasn't updated or it's no longer applicable. If that's not the case, please do feel free to either reopen this issue or open a new one. We'll gladly take a look again! You can read more here: https://blog.travis-ci.com/2018-03-09-closing-old-issues
36
-
37
- # Limit the number of actions per hour, from 1-30. Default is 30
38
- limitPerRun: 30
39
-
40
- # Limit to only `issues` or `pulls`
41
- only: issues
42
-
43
- # Optionally, specify configuration settings that are specific to just 'issues' or 'pulls':
44
- # pulls:
45
- # daysUntilStale: 30
46
- # markComment: >
47
- # This pull request has been automatically marked as stale because it has not had
48
- # recent activity. It will be closed if no further activity occurs. Thank you
49
- # for your contributions.
50
-
51
- # issues:
52
- # exemptLabels:
53
- # - confirmed
data/.gitignore DELETED
@@ -1,13 +0,0 @@
1
- Gemfile-*
2
- Gemfile.lock
3
- .bundle
4
- .coverage
5
- coverage
6
- .dpl
7
- setuptools*.zip
8
- google_appengine_*.zip
9
- google_appengine/*
10
- npm-debug.log
11
- *.gem
12
- stubs
13
- vendor
data/.rspec DELETED
@@ -1,2 +0,0 @@
1
- --color
2
- --tty
data/.travis.yml DELETED
@@ -1,56 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - "2.2.9"
4
- - "2.3.6"
5
- - "2.4"
6
- - "2.5.3"
7
- - "2.6.3"
8
-
9
- jobs:
10
- include:
11
- - stage: deploy
12
- if: branch = v1 AND NOT type IN (pull_request)
13
- cache: false
14
- before_deploy:
15
- - sed -i.bak "s/VERSION = '.*'/VERSION = '${DPL_VERSION}'/g" lib/dpl/version.rb
16
- - git config user.name "travisbot"
17
- - git config user.email "deploy@travis-ci.org"
18
- - git add lib/dpl/version.rb
19
- - git commit -m "Update DPL::Version"
20
- deploy:
21
- - provider: rubygems
22
- edge:
23
- branch: master
24
- api_key:
25
- secure: ZmZoDL1tilWvQrqRWDm2K4xQ5Grt9eRJzYVZPLANR0P1TM5BJBLk+UhWCWCPkkDVIBWMa5ANsiFYBxtH65Lw+uqMztSpVusk0l0LQXZGv9jMpT9445A8008U3vvfS0ke7IG8Q4bMAC7Sd6VGaiHDyZC7zmNvnqMpmVX7ShcgBME=
26
- gem: dpl
27
- gemspec_glob: 'dpl*.gemspec'
28
- on:
29
- repo: travis-ci/dpl
30
- branch: v1
31
- allow_failures:
32
-
33
- env:
34
- global:
35
- - DPL_VERSION=$(ruby -I lib -r dpl/version.rb -e "puts DPL::VERSION.succ + \".travis.#{ENV['TRAVIS_JOB_NUMBER']}\"")
36
-
37
- sudo: false
38
-
39
- before_cache:
40
- - rm -rf $GEM_HOME/cache/dpl-*.travis.*.gem $GEM_HOME/gems/dpl-*.travis.* $GEM_HOME/specifications/dpl-*.travis.*
41
- - git checkout bin/dpl
42
-
43
- cache:
44
- directories:
45
- - vendor/cache
46
- - $GEM_HOME
47
- - node_modules
48
-
49
- before_install:
50
- - gem update bundler
51
-
52
- before_script:
53
- - rm -f $(ruby -r rubygems -e "puts Gem.bindir")/dpl
54
-
55
- script:
56
- - rake
data/dpl-anynines.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'anynines'
data/dpl-atlas.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'atlas'
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'azure_webapps'
data/dpl-bintray.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'bintray'
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'bitballoon', [['bitballoon']]
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'bluemix_cloud_foundry'
data/dpl-boxfuse.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'boxfuse'
data/dpl-cargo.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'cargo'
data/dpl-catalyze.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'catalyze'
@@ -1,20 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- deps = [
4
- ['rack'],
5
- ['mime-types'],
6
- ]
7
-
8
- if Gem::Version.new(RUBY_VERSION) < Gem::Version.new("2.3.0")
9
- deps.shift
10
- deps << ['net-telnet', '~> 0.1.0'] << ['chef', '~> 12.0'] << ['public_suffix', '< 3.1.0'] << ['rack', '~> 2.1.2'] << ['ffi', '< 1.13.0']
11
- gemspec_for 'chef_supermarket', deps
12
- elsif Gem::Version.new(RUBY_VERSION) < Gem::Version.new("2.4.0")
13
- gemspec_for 'chef_supermarket', (deps << ['chef', '~> 13.0'])
14
- elsif Gem::Version.new(RUBY_VERSION) < Gem::Version.new("2.5.0")
15
- gemspec_for 'chef_supermarket', (deps << ['chef', '~> 14.0'])
16
- elsif Gem::Version.new(RUBY_VERSION) < Gem::Version.new("2.6.0")
17
- gemspec_for 'chef_supermarket', (deps << ['chef', '~> 15.0'] << ['chef-zero', '<= 14.0.17'])
18
- else
19
- gemspec_for 'chef_supermarket', (deps << ['chef', '>= 16'])
20
- end
data/dpl-cloud66.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'cloud66'
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'cloud_files', [['nokogiri', '< 1.10'], ['fog-rackspace']]
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'cloud_foundry'
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'code_deploy', [['aws-sdk', '~> 2.0']]
data/dpl-deis.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'deis'
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'elastic_beanstalk', [['aws-sdk', '~> 2.0'], ['rubyzip', '~> 1.0']]
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'engine_yard', [['engineyard-cloud-client']]
data/dpl-firebase.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'firebase'
data/dpl-gae.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'gae'
data/dpl-gcs.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'gcs', [['gstore'], ['mime-types', '~> 3.0']]
data/dpl-hackage.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'hackage'
data/dpl-hephy.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'hephy'
data/dpl-heroku.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'heroku', [['faraday'], ['rendezvous'], ['netrc']]
data/dpl-lambda.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'lambda', [['aws-sdk', '~> 2.0'], ['rubyzip', '~> 1.0']]
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'launchpad'
data/dpl-npm.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'npm'
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'openshift', [['httpclient', '~> 2.4.0'], ['net-ssh'], ['net-ssh-gateway'], ['rhc']]
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'ops_works', [['aws-sdk', '~> 2.0']]
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'packagecloud', [['packagecloud-ruby', '1.0.8']]
data/dpl-pages.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'pages', [['octokit', '~> 4.6.2'], ['public_suffix', '< 3.1.0'], ['faraday', '< 0.16.0']]
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'puppet_forge', [['puppet', '~> 5'], ['puppet-blacksmith', '~> 4.1'], ['json_pure']]
data/dpl-pypi.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'pypi'
data/dpl-releases.gemspec DELETED
@@ -1,8 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'releases', [
4
- ['octokit', '~> 4.6.2'],
5
- ['faraday', '< 0.16.0'],
6
- ['mime-types', '~> 3.0'],
7
- ['public_suffix', '< 3.1.0']
8
- ]
data/dpl-rubygems.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'rubygems', [['gems', '>= 1.1.0']]
data/dpl-s3.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 's3', [['aws-sdk', '~> 2.0'], ['mime-types', '~> 3.0']]
data/dpl-scalingo.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'scalingo'
data/dpl-script.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'script'
data/dpl-snap.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'snap'
data/dpl-surge.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'surge'
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'testfairy', [['multipart-post', '2.0.0']]
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for 'transifex'
data/dpl.gemspec DELETED
@@ -1,3 +0,0 @@
1
- require './gemspec_helper'
2
-
3
- gemspec_for
data/gemspec_helper.rb DELETED
@@ -1,51 +0,0 @@
1
- $:.unshift File.expand_path("../lib", __FILE__)
2
- require "dpl/version"
3
-
4
- def gemspec_for(provider_name=nil, runtime_dependencies=[])
5
- Gem::Specification.new do |s|
6
-
7
- s.name = ["dpl", provider_name].compact.join("-")
8
- s.author = "Konstantin Haase"
9
- s.email = "konstantin.mailinglists@googlemail.com"
10
- s.homepage = "https://github.com/travis-ci/dpl"
11
- s.summary = %q{deploy tool}
12
- s.description = %q{deploy tool abstraction for clients}
13
- s.license = 'MIT'
14
-
15
- s.require_path = 'lib'
16
- s.required_ruby_version = '>= 2.2'
17
-
18
- # set up version
19
- s.version = ENV['DPL_VERSION'] || DPL::VERSION
20
-
21
- # dependencies
22
- if provider_name
23
- s.add_runtime_dependency 'dpl', s.version
24
- end
25
-
26
- runtime_dependencies.each do |part|
27
- s.add_runtime_dependency *part
28
- end
29
-
30
- s.add_development_dependency 'rspec'
31
- s.add_development_dependency 'rspec-its'
32
- s.add_development_dependency 'rake'
33
- s.add_development_dependency 'json_pure'
34
- s.add_development_dependency 'tins'
35
- s.add_development_dependency 'coveralls'
36
- s.add_development_dependency 'highline'
37
- s.add_development_dependency 'term-ansicolor'
38
- s.add_development_dependency 'faraday'
39
-
40
- # set up files
41
- if provider_name
42
- s.files = `git ls-files`.split("\n").grep(Regexp.new provider_name.to_s) + ["lib/dpl/version.rb"]
43
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n").grep(Regexp.new provider_name.to_s)
44
- else
45
- s.files = `git ls-files`.split("\n").reject {|f| f =~ Regexp.new("provider/")}
46
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n").reject {|f| f =~ Regexp.new("provider/")}
47
- end
48
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }.grep(Regexp.new provider_name.to_s)
49
-
50
- end
51
- end
data/lib/dpl/error.rb DELETED
@@ -1,3 +0,0 @@
1
- module DPL
2
- Error = Class.new(StandardError)
3
- end
data/notes/engine_yard.md DELETED
@@ -1 +0,0 @@
1
- EY has a a special deploy app. Get in touch with Kevin Holler if we don't hear back from them.
data/notes/heroku.md DELETED
@@ -1,3 +0,0 @@
1
- Heroku might send out emails for new deploy keys (doesn't do it for me, but for some others).
2
-
3
- Alternative is Anvil, but it's not perfect, as it duplicates a lot of Heroku logic internally (and failed for me in one case).
data/spec/cli_spec.rb DELETED
@@ -1,36 +0,0 @@
1
- require 'spec_helper'
2
- require 'dpl/cli'
3
-
4
- describe DPL::CLI do
5
- describe "#options" do
6
- example { expect(described_class.new.options[:app]) .to eq(File.basename(Dir.pwd)) }
7
- example { expect(described_class.new(:app => 'foo') .options[:app]).to eq('foo') }
8
- example { expect(described_class.new("--app=foo") .options[:app]).to eq('foo') }
9
- example { expect(described_class.new("--app") .options[:app]).to eq(true) }
10
- example { expect(described_class.new("--app=foo", "--app=bar") .options[:app]).to eq(['foo', 'bar']) }
11
-
12
- example "error handling" do
13
- expect($stderr).to receive(:puts).with('invalid option "app"')
14
- expect { described_class.new("app") }.to raise_error(SystemExit)
15
- end
16
- end
17
-
18
- describe "#run" do
19
- example "triggers deploy" do
20
- provider = double('provider')
21
- expect(DPL::Provider).to receive(:new).and_return(provider)
22
- expect(provider).to receive(:deploy)
23
-
24
- described_class.run("--provider=foo")
25
- end
26
-
27
- example "error handling" do
28
- expect($stderr).to receive(:puts).with('missing provider')
29
- expect { described_class.run }.to raise_error(SystemExit)
30
- end
31
-
32
- example "error handling in debug mode" do
33
- expect { described_class.run("--debug") }.to raise_error(DPL::Error, 'missing provider')
34
- end
35
- end
36
- end