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.
- checksums.yaml +5 -5
- data/CHANGELOG.md +74 -0
- data/CONTRIBUTING.md +392 -0
- data/Gemfile +17 -3
- data/Gemfile.lock +373 -0
- data/LICENSE +16 -19
- data/NOTES.md +275 -0
- data/README.md +1977 -707
- data/Rakefile +2 -2
- data/bin/dpl +7 -3
- data/lib/dpl.rb +20 -0
- data/lib/dpl/assets/atlas/install +19 -0
- data/lib/dpl/assets/dpl/README.erb.md +133 -0
- data/lib/dpl/assets/dpl/git_ssh +2 -0
- data/lib/dpl/assets/git/detect_private_key +8 -0
- data/lib/dpl/assets/hephy/filter_log +3 -0
- data/lib/dpl/assets/pypi/install +4 -0
- data/lib/dpl/assets/scalingo/install +6 -0
- data/lib/dpl/cli.rb +36 -48
- data/lib/dpl/ctx.rb +2 -0
- data/lib/dpl/ctx/bash.rb +543 -0
- data/lib/dpl/ctx/test.rb +242 -0
- data/lib/dpl/helper/assets.rb +36 -0
- data/lib/dpl/helper/cmd.rb +167 -0
- data/lib/dpl/helper/config_file.rb +47 -0
- data/lib/dpl/helper/env.rb +39 -0
- data/lib/dpl/helper/interpolate.rb +126 -0
- data/lib/dpl/helper/memoize.rb +20 -0
- data/lib/dpl/helper/squiggle.rb +22 -0
- data/lib/dpl/helper/zip.rb +69 -0
- data/lib/dpl/provider.rb +562 -234
- data/lib/dpl/provider/dsl.rb +369 -0
- data/lib/dpl/provider/examples.rb +128 -0
- data/lib/dpl/provider/status.rb +59 -0
- data/lib/dpl/providers.rb +40 -0
- data/lib/dpl/providers/anynines.rb +65 -0
- data/lib/dpl/providers/atlas.rb +49 -0
- data/lib/dpl/providers/azure_web_apps.rb +59 -0
- data/lib/dpl/providers/bintray.rb +313 -0
- data/lib/dpl/providers/bluemixcloudfoundry.rb +92 -0
- data/lib/dpl/providers/boxfuse.rb +48 -0
- data/lib/dpl/providers/cargo.rb +19 -0
- data/lib/dpl/providers/chef_supermarket.rb +128 -0
- data/lib/dpl/providers/cloud66.rb +40 -0
- data/lib/dpl/providers/cloudfiles.rb +56 -0
- data/lib/dpl/providers/cloudfoundry.rb +81 -0
- data/lib/dpl/providers/codedeploy.rb +179 -0
- data/lib/dpl/providers/datica.rb +60 -0
- data/lib/dpl/providers/elasticbeanstalk.rb +195 -0
- data/lib/dpl/providers/engineyard.rb +107 -0
- data/lib/dpl/providers/firebase.rb +41 -0
- data/lib/dpl/providers/gae.rb +74 -0
- data/lib/dpl/providers/gcs.rb +105 -0
- data/lib/dpl/providers/hackage.rb +47 -0
- data/lib/dpl/providers/hephy.rb +101 -0
- data/lib/dpl/providers/heroku.rb +111 -0
- data/lib/dpl/providers/heroku/api.rb +119 -0
- data/lib/dpl/providers/heroku/git.rb +50 -0
- data/lib/dpl/providers/lambda.rb +202 -0
- data/lib/dpl/providers/launchpad.rb +74 -0
- data/lib/dpl/providers/netlify.rb +30 -0
- data/lib/dpl/providers/npm.rb +88 -0
- data/lib/dpl/providers/openshift.rb +46 -0
- data/lib/dpl/providers/opsworks.rb +142 -0
- data/lib/dpl/providers/packagecloud.rb +190 -0
- data/lib/dpl/providers/pages.rb +17 -0
- data/lib/dpl/providers/pages/api.rb +102 -0
- data/lib/dpl/providers/pages/git.rb +251 -0
- data/lib/dpl/providers/puppetforge.rb +44 -0
- data/lib/dpl/providers/pypi.rb +120 -0
- data/lib/dpl/providers/releases.rb +214 -0
- data/lib/dpl/providers/rubygems.rb +89 -0
- data/lib/dpl/providers/s3.rb +243 -0
- data/lib/dpl/providers/scalingo.rb +63 -0
- data/lib/dpl/providers/script.rb +28 -0
- data/lib/dpl/providers/snap.rb +59 -0
- data/lib/dpl/providers/surge.rb +55 -0
- data/lib/dpl/providers/testfairy.rb +93 -0
- data/lib/dpl/providers/transifex.rb +66 -0
- data/lib/dpl/support/aws_sdk_patch.rb +23 -0
- data/lib/dpl/support/gems.rb +69 -0
- data/lib/dpl/support/gstore_patch.rb +6 -0
- data/lib/dpl/support/version.rb +83 -0
- data/lib/dpl/version.rb +2 -2
- metadata +98 -169
- data/.coveralls.yml +0 -1
- data/.github/CONTRIBUTING.md +0 -173
- data/.github/stale.yml +0 -53
- data/.gitignore +0 -13
- data/.rspec +0 -2
- data/.travis.yml +0 -56
- data/dpl-anynines.gemspec +0 -3
- data/dpl-atlas.gemspec +0 -3
- data/dpl-azure_webapps.gemspec +0 -3
- data/dpl-bintray.gemspec +0 -3
- data/dpl-bitballoon.gemspec +0 -3
- data/dpl-bluemix_cloud_foundry.gemspec +0 -3
- data/dpl-boxfuse.gemspec +0 -3
- data/dpl-cargo.gemspec +0 -3
- data/dpl-catalyze.gemspec +0 -3
- data/dpl-chef_supermarket.gemspec +0 -20
- data/dpl-cloud66.gemspec +0 -3
- data/dpl-cloud_files.gemspec +0 -3
- data/dpl-cloud_foundry.gemspec +0 -3
- data/dpl-code_deploy.gemspec +0 -3
- data/dpl-deis.gemspec +0 -3
- data/dpl-elastic_beanstalk.gemspec +0 -3
- data/dpl-engine_yard.gemspec +0 -3
- data/dpl-firebase.gemspec +0 -3
- data/dpl-gae.gemspec +0 -3
- data/dpl-gcs.gemspec +0 -3
- data/dpl-hackage.gemspec +0 -3
- data/dpl-hephy.gemspec +0 -3
- data/dpl-heroku.gemspec +0 -3
- data/dpl-lambda.gemspec +0 -3
- data/dpl-launchpad.gemspec +0 -3
- data/dpl-npm.gemspec +0 -3
- data/dpl-openshift.gemspec +0 -3
- data/dpl-ops_works.gemspec +0 -3
- data/dpl-packagecloud.gemspec +0 -3
- data/dpl-pages.gemspec +0 -3
- data/dpl-puppet_forge.gemspec +0 -3
- data/dpl-pypi.gemspec +0 -3
- data/dpl-releases.gemspec +0 -8
- data/dpl-rubygems.gemspec +0 -3
- data/dpl-s3.gemspec +0 -3
- data/dpl-scalingo.gemspec +0 -3
- data/dpl-script.gemspec +0 -3
- data/dpl-snap.gemspec +0 -3
- data/dpl-surge.gemspec +0 -3
- data/dpl-testfairy.gemspec +0 -3
- data/dpl-transifex.gemspec +0 -3
- data/dpl.gemspec +0 -3
- data/gemspec_helper.rb +0 -51
- data/lib/dpl/error.rb +0 -3
- data/notes/engine_yard.md +0 -1
- data/notes/heroku.md +0 -3
- data/spec/cli_spec.rb +0 -36
- data/spec/provider_spec.rb +0 -191
- data/spec/spec_helper.rb +0 -20
data/Gemfile
CHANGED
@@ -1,5 +1,19 @@
|
|
1
|
+
$: << 'lib'
|
2
|
+
require 'dpl/support/gems'
|
3
|
+
|
1
4
|
source 'https://rubygems.org'
|
2
|
-
ruby '
|
3
|
-
|
5
|
+
ruby '>= 2.2'
|
6
|
+
|
7
|
+
gemspec name: 'dpl'
|
8
|
+
# gem 'cl', path: '../../cl'
|
9
|
+
|
10
|
+
gems = Dpl::Support::Gems.new('lib/dpl/providers/**/*.rb')
|
11
|
+
gems.each do |name, version, opts|
|
12
|
+
gem name, version, opts
|
13
|
+
end
|
4
14
|
|
5
|
-
|
15
|
+
group :test do
|
16
|
+
gem 'coveralls'
|
17
|
+
gem 'rspec'
|
18
|
+
gem 'webmock'
|
19
|
+
end
|
data/Gemfile.lock
ADDED
@@ -0,0 +1,373 @@
|
|
1
|
+
PATH
|
2
|
+
remote: ../../cl
|
3
|
+
specs:
|
4
|
+
cl (1.1.1)
|
5
|
+
regstry (~> 1.0.3)
|
6
|
+
|
7
|
+
PATH
|
8
|
+
remote: .
|
9
|
+
specs:
|
10
|
+
dpl (2.0.0.alpha.1)
|
11
|
+
cl (~> 1.0)
|
12
|
+
|
13
|
+
GEM
|
14
|
+
remote: https://rubygems.org/
|
15
|
+
specs:
|
16
|
+
addressable (2.6.0)
|
17
|
+
public_suffix (>= 2.0.2, < 4.0)
|
18
|
+
awesome_print (1.8.0)
|
19
|
+
aws-eventstream (1.0.3)
|
20
|
+
aws-partitions (1.203.0)
|
21
|
+
aws-sdk-codedeploy (1.26.0)
|
22
|
+
aws-sdk-core (~> 3, >= 3.61.1)
|
23
|
+
aws-sigv4 (~> 1.1)
|
24
|
+
aws-sdk-core (3.64.0)
|
25
|
+
aws-eventstream (~> 1.0, >= 1.0.2)
|
26
|
+
aws-partitions (~> 1.0)
|
27
|
+
aws-sigv4 (~> 1.1)
|
28
|
+
jmespath (~> 1.0)
|
29
|
+
aws-sdk-elasticbeanstalk (1.25.0)
|
30
|
+
aws-sdk-core (~> 3, >= 3.61.1)
|
31
|
+
aws-sigv4 (~> 1.1)
|
32
|
+
aws-sdk-kms (1.24.0)
|
33
|
+
aws-sdk-core (~> 3, >= 3.61.1)
|
34
|
+
aws-sigv4 (~> 1.1)
|
35
|
+
aws-sdk-lambda (1.29.0)
|
36
|
+
aws-sdk-core (~> 3, >= 3.61.1)
|
37
|
+
aws-sigv4 (~> 1.1)
|
38
|
+
aws-sdk-opsworks (1.20.0)
|
39
|
+
aws-sdk-core (~> 3, >= 3.61.1)
|
40
|
+
aws-sigv4 (~> 1.1)
|
41
|
+
aws-sdk-s3 (1.46.0)
|
42
|
+
aws-sdk-core (~> 3, >= 3.61.1)
|
43
|
+
aws-sdk-kms (~> 1)
|
44
|
+
aws-sigv4 (~> 1.1)
|
45
|
+
aws-sigv4 (1.1.0)
|
46
|
+
aws-eventstream (~> 1.0, >= 1.0.2)
|
47
|
+
belafonte (0.5.0)
|
48
|
+
optionally
|
49
|
+
wrapomatic (~> 0.3)
|
50
|
+
builder (3.2.3)
|
51
|
+
chef (12.22.5)
|
52
|
+
addressable
|
53
|
+
bundler (>= 1.10)
|
54
|
+
chef-config (= 12.22.5)
|
55
|
+
chef-zero (>= 4.8, < 13)
|
56
|
+
diff-lcs (~> 1.2, >= 1.2.4)
|
57
|
+
erubis (~> 2.7)
|
58
|
+
ffi-yajl (~> 2.2)
|
59
|
+
highline (~> 1.6, >= 1.6.9)
|
60
|
+
iniparse (~> 1.4)
|
61
|
+
mixlib-archive (~> 0.4)
|
62
|
+
mixlib-authentication (~> 1.4)
|
63
|
+
mixlib-cli (~> 1.7)
|
64
|
+
mixlib-log (~> 1.3)
|
65
|
+
mixlib-shellout (~> 2.0)
|
66
|
+
net-sftp (~> 2.1, >= 2.1.2)
|
67
|
+
net-ssh (>= 2.9, < 5.0)
|
68
|
+
net-ssh-multi (~> 1.2, >= 1.2.1)
|
69
|
+
ohai (>= 8.6.0.alpha.1, < 13)
|
70
|
+
plist (~> 3.2)
|
71
|
+
proxifier (~> 1.0)
|
72
|
+
rspec-core (~> 3.5)
|
73
|
+
rspec-expectations (~> 3.5)
|
74
|
+
rspec-mocks (~> 3.5)
|
75
|
+
rspec_junit_formatter (~> 0.2.0)
|
76
|
+
serverspec (~> 2.7)
|
77
|
+
specinfra (~> 2.10)
|
78
|
+
syslog-logger (~> 1.6)
|
79
|
+
uuidtools (~> 2.1.5)
|
80
|
+
chef-config (12.22.5)
|
81
|
+
addressable
|
82
|
+
fuzzyurl
|
83
|
+
mixlib-config (~> 2.0)
|
84
|
+
mixlib-shellout (~> 2.0)
|
85
|
+
chef-zero (5.3.2)
|
86
|
+
ffi-yajl (~> 2.2)
|
87
|
+
hashie (>= 2.0, < 4.0)
|
88
|
+
mixlib-log (~> 1.3)
|
89
|
+
rack (~> 2.0)
|
90
|
+
uuidtools (~> 2.1)
|
91
|
+
cistern (0.12.3)
|
92
|
+
coderay (1.1.2)
|
93
|
+
colorize (0.8.1)
|
94
|
+
cookiejar (0.3.3)
|
95
|
+
coveralls (0.8.23)
|
96
|
+
json (>= 1.8, < 3)
|
97
|
+
simplecov (~> 0.16.1)
|
98
|
+
term-ansicolor (~> 1.3)
|
99
|
+
thor (>= 0.19.4, < 2.0)
|
100
|
+
tins (~> 1.6)
|
101
|
+
crack (0.4.3)
|
102
|
+
safe_yaml (~> 1.0.0)
|
103
|
+
diff-lcs (1.3)
|
104
|
+
docile (1.3.2)
|
105
|
+
domain_name (0.5.20190701)
|
106
|
+
unf (>= 0.0.5, < 1.0.0)
|
107
|
+
em-http-request (1.1.5)
|
108
|
+
addressable (>= 2.3.4)
|
109
|
+
cookiejar (!= 0.3.1)
|
110
|
+
em-socksify (>= 0.3)
|
111
|
+
eventmachine (>= 1.0.3)
|
112
|
+
http_parser.rb (>= 0.6.0)
|
113
|
+
em-socksify (0.3.2)
|
114
|
+
eventmachine (>= 1.0.0.beta.4)
|
115
|
+
erubis (2.7.0)
|
116
|
+
escape (0.0.4)
|
117
|
+
eventmachine (1.2.7)
|
118
|
+
excon (0.66.0)
|
119
|
+
ey-core (3.5.0)
|
120
|
+
addressable
|
121
|
+
awesome_print
|
122
|
+
belafonte
|
123
|
+
cistern (~> 0.12.3)
|
124
|
+
colorize
|
125
|
+
escape
|
126
|
+
ey-hmac (~> 2.0)
|
127
|
+
faraday (~> 0.9)
|
128
|
+
faraday_middleware (~> 0.9)
|
129
|
+
faye
|
130
|
+
highline
|
131
|
+
json (< 2.0)
|
132
|
+
mime-types
|
133
|
+
oj
|
134
|
+
oj_mimic_json
|
135
|
+
pry
|
136
|
+
rack
|
137
|
+
sshkey (~> 1.6)
|
138
|
+
table_print
|
139
|
+
ey-hmac (2.2.0)
|
140
|
+
facter (2.5.5)
|
141
|
+
faraday (0.9.2)
|
142
|
+
multipart-post (>= 1.2, < 3)
|
143
|
+
faraday_middleware (0.13.1)
|
144
|
+
faraday (>= 0.7.4, < 1.0)
|
145
|
+
fast_gettext (1.1.2)
|
146
|
+
faye (1.2.4)
|
147
|
+
cookiejar (>= 0.3.0)
|
148
|
+
em-http-request (>= 0.3.0)
|
149
|
+
eventmachine (>= 0.12.0)
|
150
|
+
faye-websocket (>= 0.9.1)
|
151
|
+
multi_json (>= 1.0.0)
|
152
|
+
rack (>= 1.0.0)
|
153
|
+
websocket-driver (>= 0.5.1)
|
154
|
+
faye-websocket (0.10.9)
|
155
|
+
eventmachine (>= 0.12.0)
|
156
|
+
websocket-driver (>= 0.5.1)
|
157
|
+
ffi (1.11.1)
|
158
|
+
ffi-yajl (2.3.1)
|
159
|
+
libyajl2 (~> 1.2)
|
160
|
+
fog-core (2.1.0)
|
161
|
+
builder
|
162
|
+
excon (~> 0.58)
|
163
|
+
formatador (~> 0.2)
|
164
|
+
mime-types
|
165
|
+
fog-json (1.2.0)
|
166
|
+
fog-core
|
167
|
+
multi_json (~> 1.10)
|
168
|
+
fog-rackspace (0.1.6)
|
169
|
+
fog-core (>= 1.35)
|
170
|
+
fog-json (>= 1.0)
|
171
|
+
fog-xml (>= 0.1)
|
172
|
+
ipaddress (>= 0.8)
|
173
|
+
fog-xml (0.1.3)
|
174
|
+
fog-core
|
175
|
+
nokogiri (>= 1.5.11, < 2.0.0)
|
176
|
+
formatador (0.2.5)
|
177
|
+
fuzzyurl (0.9.0)
|
178
|
+
gems (1.1.1)
|
179
|
+
json
|
180
|
+
hashdiff (1.0.0)
|
181
|
+
hashie (3.6.0)
|
182
|
+
hiera (3.5.0)
|
183
|
+
highline (1.7.10)
|
184
|
+
http-cookie (1.0.3)
|
185
|
+
domain_name (~> 0.5)
|
186
|
+
http_parser.rb (0.6.0)
|
187
|
+
iniparse (1.4.4)
|
188
|
+
ipaddress (0.8.3)
|
189
|
+
jmespath (1.4.0)
|
190
|
+
json (1.8.6)
|
191
|
+
json_pure (1.8.6)
|
192
|
+
libyajl2 (1.2.0)
|
193
|
+
locale (2.1.2)
|
194
|
+
method_source (0.9.2)
|
195
|
+
mime (0.4.4)
|
196
|
+
mime-types (3.2.2)
|
197
|
+
mime-types-data (~> 3.2015)
|
198
|
+
mime-types-data (3.2019.0331)
|
199
|
+
mini_portile2 (2.4.0)
|
200
|
+
mixlib-archive (0.4.20)
|
201
|
+
mixlib-log
|
202
|
+
mixlib-authentication (1.4.2)
|
203
|
+
mixlib-cli (1.7.0)
|
204
|
+
mixlib-config (2.2.18)
|
205
|
+
tomlrb
|
206
|
+
mixlib-log (1.7.1)
|
207
|
+
mixlib-shellout (2.4.4)
|
208
|
+
multi_json (1.13.1)
|
209
|
+
multipart-post (2.0.0)
|
210
|
+
net-scp (2.0.0)
|
211
|
+
net-ssh (>= 2.6.5, < 6.0.0)
|
212
|
+
net-sftp (2.1.2)
|
213
|
+
net-ssh (>= 2.6.5)
|
214
|
+
net-ssh (4.2.0)
|
215
|
+
net-ssh-gateway (2.0.0)
|
216
|
+
net-ssh (>= 4.0.0)
|
217
|
+
net-ssh-multi (1.2.1)
|
218
|
+
net-ssh (>= 2.6.5)
|
219
|
+
net-ssh-gateway (>= 1.2.0)
|
220
|
+
net-telnet (0.1.1)
|
221
|
+
netrc (0.11.0)
|
222
|
+
nokogiri (1.9.1)
|
223
|
+
mini_portile2 (~> 2.4.0)
|
224
|
+
octokit (4.14.0)
|
225
|
+
sawyer (~> 0.8.0, >= 0.5.3)
|
226
|
+
ohai (8.26.1)
|
227
|
+
chef-config (>= 12.5.0.alpha.1, < 14)
|
228
|
+
ffi (~> 1.9)
|
229
|
+
ffi-yajl (~> 2.2)
|
230
|
+
ipaddress
|
231
|
+
mixlib-cli
|
232
|
+
mixlib-config (~> 2.0)
|
233
|
+
mixlib-log (>= 1.7.1, < 2.0)
|
234
|
+
mixlib-shellout (~> 2.0)
|
235
|
+
plist (~> 3.1)
|
236
|
+
systemu (~> 2.6.4)
|
237
|
+
wmi-lite (~> 1.0)
|
238
|
+
oj (3.9.0)
|
239
|
+
oj_mimic_json (1.0.1)
|
240
|
+
optionally (0.0.3)
|
241
|
+
packagecloud-ruby (1.0.8)
|
242
|
+
excon (~> 0.40)
|
243
|
+
json_pure (~> 1)
|
244
|
+
mime (~> 0.4)
|
245
|
+
multi_json (~> 1.0)
|
246
|
+
pathspec (0.2.1)
|
247
|
+
plist (3.5.0)
|
248
|
+
proxifier (1.0.3)
|
249
|
+
pry (0.12.2)
|
250
|
+
coderay (~> 1.1.0)
|
251
|
+
method_source (~> 0.9.0)
|
252
|
+
public_suffix (3.0.3)
|
253
|
+
puppet (5.5.16)
|
254
|
+
facter (> 2.0.1, < 4)
|
255
|
+
fast_gettext (~> 1.1.2)
|
256
|
+
hiera (>= 3.2.1, < 4)
|
257
|
+
locale (~> 2.1)
|
258
|
+
multi_json (~> 1.10)
|
259
|
+
puppet-blacksmith (3.3.1)
|
260
|
+
puppet (>= 2.7.16)
|
261
|
+
rest-client
|
262
|
+
rack (2.0.7)
|
263
|
+
rake (12.3.3)
|
264
|
+
regstry (1.0.14)
|
265
|
+
rendezvous (0.1.3)
|
266
|
+
rest-client (2.0.2)
|
267
|
+
http-cookie (>= 1.0.2, < 2.0)
|
268
|
+
mime-types (>= 1.16, < 4.0)
|
269
|
+
netrc (~> 0.8)
|
270
|
+
rspec (3.8.0)
|
271
|
+
rspec-core (~> 3.8.0)
|
272
|
+
rspec-expectations (~> 3.8.0)
|
273
|
+
rspec-mocks (~> 3.8.0)
|
274
|
+
rspec-core (3.8.2)
|
275
|
+
rspec-support (~> 3.8.0)
|
276
|
+
rspec-expectations (3.8.4)
|
277
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
278
|
+
rspec-support (~> 3.8.0)
|
279
|
+
rspec-its (1.3.0)
|
280
|
+
rspec-core (>= 3.0.0)
|
281
|
+
rspec-expectations (>= 3.0.0)
|
282
|
+
rspec-mocks (3.8.1)
|
283
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
284
|
+
rspec-support (~> 3.8.0)
|
285
|
+
rspec-support (3.8.2)
|
286
|
+
rspec_junit_formatter (0.2.3)
|
287
|
+
builder (< 4)
|
288
|
+
rspec-core (>= 2, < 4, != 2.12.0)
|
289
|
+
rubyzip (1.2.3)
|
290
|
+
safe_yaml (1.0.5)
|
291
|
+
sawyer (0.8.2)
|
292
|
+
addressable (>= 2.3.5)
|
293
|
+
faraday (> 0.8, < 2.0)
|
294
|
+
serverspec (2.41.5)
|
295
|
+
multi_json
|
296
|
+
rspec (~> 3.0)
|
297
|
+
rspec-its
|
298
|
+
specinfra (~> 2.72)
|
299
|
+
sfl (2.3)
|
300
|
+
simplecov (0.16.1)
|
301
|
+
docile (~> 1.1)
|
302
|
+
json (>= 1.8, < 3)
|
303
|
+
simplecov-html (~> 0.10.0)
|
304
|
+
simplecov-html (0.10.2)
|
305
|
+
specinfra (2.81.0)
|
306
|
+
net-scp
|
307
|
+
net-ssh (>= 2.7)
|
308
|
+
net-telnet (= 0.1.1)
|
309
|
+
sfl
|
310
|
+
sshkey (1.9.0)
|
311
|
+
syslog-logger (1.6.8)
|
312
|
+
systemu (2.6.5)
|
313
|
+
table_print (1.5.6)
|
314
|
+
term-ansicolor (1.7.1)
|
315
|
+
tins (~> 1.0)
|
316
|
+
thor (0.20.3)
|
317
|
+
tins (1.21.1)
|
318
|
+
tomlrb (1.2.8)
|
319
|
+
unf (0.1.4)
|
320
|
+
unf_ext
|
321
|
+
unf_ext (0.0.7.6)
|
322
|
+
uuidtools (2.1.5)
|
323
|
+
webmock (3.6.2)
|
324
|
+
addressable (>= 2.3.6)
|
325
|
+
crack (>= 0.3.2)
|
326
|
+
hashdiff (>= 0.4.0, < 2.0.0)
|
327
|
+
websocket-driver (0.7.1)
|
328
|
+
websocket-extensions (>= 0.1.0)
|
329
|
+
websocket-extensions (0.1.4)
|
330
|
+
wmi-lite (1.0.2)
|
331
|
+
wrapomatic (0.3.0)
|
332
|
+
|
333
|
+
PLATFORMS
|
334
|
+
ruby
|
335
|
+
|
336
|
+
DEPENDENCIES
|
337
|
+
aws-sdk-codedeploy (~> 1.0)
|
338
|
+
aws-sdk-elasticbeanstalk (~> 1.0)
|
339
|
+
aws-sdk-lambda (~> 1.0)
|
340
|
+
aws-sdk-opsworks (~> 1.0)
|
341
|
+
aws-sdk-s3 (~> 1.0)
|
342
|
+
chef (~> 12.0)
|
343
|
+
cl!
|
344
|
+
coveralls
|
345
|
+
dpl!
|
346
|
+
ey-core (~> 3.5)
|
347
|
+
faraday (~> 0.9.2)
|
348
|
+
fog-core (= 2.1.0)
|
349
|
+
fog-rackspace (~> 0.1.6)
|
350
|
+
gems (~> 1.1.1)
|
351
|
+
json
|
352
|
+
mime-types (~> 3.2.2)
|
353
|
+
multipart-post (~> 2.0.0)
|
354
|
+
netrc (~> 0.11.0)
|
355
|
+
nokogiri (< 1.10)
|
356
|
+
octokit (~> 4.14.0)
|
357
|
+
packagecloud-ruby (~> 1.0.8)
|
358
|
+
pathspec (~> 0.2.1)
|
359
|
+
public_suffix (~> 3.0.3)
|
360
|
+
puppet (~> 5.5.14)
|
361
|
+
puppet-blacksmith (~> 3.3.1)
|
362
|
+
rack
|
363
|
+
rake (~> 12.3)
|
364
|
+
rendezvous (~> 0.1.3)
|
365
|
+
rspec
|
366
|
+
rubyzip (~> 1.2.2)
|
367
|
+
webmock
|
368
|
+
|
369
|
+
RUBY VERSION
|
370
|
+
ruby 2.2.2p95
|
371
|
+
|
372
|
+
BUNDLED WITH
|
373
|
+
2.0.1
|
data/LICENSE
CHANGED
@@ -1,22 +1,19 @@
|
|
1
|
-
Copyright (c) 2013
|
1
|
+
Copyright (c) 2013-2019 Travis CI GmbH
|
2
2
|
|
3
|
-
Permission is hereby granted, free of charge, to any person
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
Software is furnished to do so, subject to the following
|
10
|
-
conditions:
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
4
|
+
this software and associated documentation files (the "Software"), to deal in
|
5
|
+
the Software without restriction, including without limitation the rights to
|
6
|
+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
7
|
+
of the Software, and to permit persons to whom the Software is furnished to do
|
8
|
+
so, subject to the following conditions:
|
11
9
|
|
12
|
-
The above copyright notice and this permission notice shall be
|
13
|
-
|
10
|
+
The above copyright notice and this permission notice shall be included in all
|
11
|
+
copies or substantial portions of the Software.
|
14
12
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
OTHER DEALINGS IN THE SOFTWARE.
|
13
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
14
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
15
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
16
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
17
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
18
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
19
|
+
SOFTWARE.
|
data/NOTES.md
ADDED
@@ -0,0 +1,275 @@
|
|
1
|
+
x add `opts required: [:api_key, [:user, :password]]`
|
2
|
+
x add opt '--foo', requires: :other
|
3
|
+
x add opt '--foo', alias: :other
|
4
|
+
x add opt '--foo', format: /.+/
|
5
|
+
x add opt '--foo', deprecated: true
|
6
|
+
x add opt '--foo', alias: :other, deprecated: :other
|
7
|
+
x add opt '--foo', max: 10, type: :integer
|
8
|
+
x add opt '--foo', enum: ['one', 'two']
|
9
|
+
x consider automatically adding `[no-]` to booleans
|
10
|
+
x make it so that Cl::Cmd parses the args, not Runner. only that way sub cmd specific opts can sit on the sub command
|
11
|
+
x cleanup and move matchers
|
12
|
+
x add lookup and interpolation to assert
|
13
|
+
x revisit using MSGS and CMDS everywhere
|
14
|
+
x add something like :keep for automatically moving things out of the way before cleanup
|
15
|
+
x make specs validate that cmds have run in the correct order
|
16
|
+
x revisit what's up with `needs_key`
|
17
|
+
x revisit what's up with `git_http_user_agent false`
|
18
|
+
x revisit the run stages in Provider
|
19
|
+
x implement folds
|
20
|
+
x port on-demand installation of sub gems
|
21
|
+
x make MSGS etc class methods, so they can inherit from base classes (for Heroku)
|
22
|
+
x move sub cmd opts etc to sub classes for Heroku
|
23
|
+
x look into using FakeFS, MemFS sucks
|
24
|
+
x make a list of strategies/tools providers use
|
25
|
+
x revisit which providers need an ssh key, git, etc.
|
26
|
+
x should have run in order matcher does not work
|
27
|
+
x write bin/readme
|
28
|
+
x test Cl against all Ruby versions >= 2.0
|
29
|
+
x test Ctx
|
30
|
+
x go through all providers, remove fakefs, use chdir 'tmp/dpl'
|
31
|
+
x make sure all provider fs write operations go through ctx
|
32
|
+
x what is `options[:no_deploy]` for? (it's for testing. added it back as `--stages`)
|
33
|
+
x make sure dasherized options are accepted and normalized
|
34
|
+
x add opt internal: true to Cl
|
35
|
+
x write comments on the most important classes, so we can generate some api docs
|
36
|
+
x install gems with sudo if Process::UID.eid is 0
|
37
|
+
x document Provider.env
|
38
|
+
x add retry to Ctx#script
|
39
|
+
x try installing all gems at once
|
40
|
+
x run apt-get update before apt-get install, once
|
41
|
+
x make sure failed dependency installation fails the command
|
42
|
+
x fix dependency installation for various providers
|
43
|
+
x look into making `--app` and `--key_name` attr readers, rather than options
|
44
|
+
x make it so that options are being overwritten if specified by both base and sub classes
|
45
|
+
x test that `bin/dpl --stage install` runs as expected for various providers
|
46
|
+
x on Travis CI add a stage that tests `bin/dpl --stage install` for various providers on various ruby versions
|
47
|
+
x try using bundler/inline for gem dependencies
|
48
|
+
x write a proper readme for Cl
|
49
|
+
x add yard docs to Cl
|
50
|
+
x autogenerate examples
|
51
|
+
x update .github/CONTRIBUTING.md
|
52
|
+
x consider adding `note: 'some comment` to Cl opts (e.g. see Lambda tracing mode)
|
53
|
+
x bundle/inline seems to pick up an existing Gemfile.lock (which might be incompatible)
|
54
|
+
x figure out how to deal with python tooling on non-python images etc (just die for now)
|
55
|
+
x unit test netlfiy
|
56
|
+
x move ./.dpl to ~/.dpl (clutters the working dir)
|
57
|
+
x add a DSL for adding paths to PATH, e.g. gcs
|
58
|
+
x make sure all error messages are actually being displayed
|
59
|
+
x remove the fold for finishing the deployment, it's confusing. Maybe do not fold the deployment itself? or somehow keep the last fold open if there is an error?
|
60
|
+
x BitBalloon is now Netlify Drop https://app.netlify.com/drop. time to rename it?
|
61
|
+
x make `--skip_cleanup` the default
|
62
|
+
x make sure all main shell scripts use assert: true, echo: true
|
63
|
+
x make sure all asserts have an err msg (can we test this?), or add a generic error message
|
64
|
+
x add secure: true, in order to tell Cl to filter log output for a given option
|
65
|
+
x refactor Provider by splitting out a Cmd class for shell commands
|
66
|
+
x document Cmd methods
|
67
|
+
x revisit README and CONTRIBUTING
|
68
|
+
x Make sure failed deployments always fail the build starting with dpl 2.0
|
69
|
+
|
70
|
+
- amend and pr sf-ey-core
|
71
|
+
- amend and pr sf-cookbook-name (ports #968)
|
72
|
+
- amend and pr sf-s3-file-specific-opts (ports #958)
|
73
|
+
- amend and pr sf-twine-check (see #944)
|
74
|
+
- amend and pr sf-s3-verbose (ports #882)
|
75
|
+
- amend and pr sf-aws-sdk-v3 (ports #863)
|
76
|
+
- amend and pr sf-pypi-upload-docs (see #835)
|
77
|
+
- amend and pr sf-gae-configs (see #829)
|
78
|
+
- amend and pr sf-script-multi (see #673)
|
79
|
+
- amend and pr sf-releases-release-notes (see #155)
|
80
|
+
- amend and pr sf-lambda-layers (see #933)
|
81
|
+
|
82
|
+
https://github.com/travis-ci/dpl/pull/1060 through https://github.com/travis-ci/dpl/pull/1070
|
83
|
+
|
84
|
+
ported PRs:
|
85
|
+
|
86
|
+
- https://github.com/travis-ci/dpl/pull/1058 (adds Convox)
|
87
|
+
- https://github.com/travis-ci/dpl/pull/1056 (adds Gleis)
|
88
|
+
- https://github.com/travis-ci/dpl/pull/1055 (adds Tsuru)
|
89
|
+
- https://github.com/travis-ci/dpl/pull/1023
|
90
|
+
- https://github.com/travis-ci/dpl/pull/1019
|
91
|
+
- https://github.com/travis-ci/dpl/pull/987
|
92
|
+
- https://github.com/travis-ci/dpl/pull/980
|
93
|
+
- https://github.com/travis-ci/dpl/pull/970 (adds Azure Storage)
|
94
|
+
- https://github.com/travis-ci/dpl/pull/963
|
95
|
+
- https://github.com/travis-ci/dpl/pull/951 (adds cloudformation, needs more tests)
|
96
|
+
- https://github.com/travis-ci/dpl/pull/950
|
97
|
+
- https://github.com/travis-ci/dpl/pull/949
|
98
|
+
- https://github.com/travis-ci/dpl/pull/938
|
99
|
+
- https://github.com/travis-ci/dpl/pull/920 (adds AWS ECR)
|
100
|
+
- https://github.com/travis-ci/dpl/pull/824
|
101
|
+
- https://github.com/travis-ci/dpl/pull/884
|
102
|
+
- https://github.com/travis-ci/dpl/pull/875
|
103
|
+
- https://github.com/travis-ci/dpl/pull/860
|
104
|
+
- https://github.com/travis-ci/dpl/pull/856
|
105
|
+
- https://github.com/travis-ci/dpl/pull/849
|
106
|
+
- https://github.com/travis-ci/dpl/pull/844
|
107
|
+
- https://github.com/travis-ci/dpl/pull/827
|
108
|
+
- https://github.com/travis-ci/dpl/pull/795 (adds Zeit now)
|
109
|
+
- https://github.com/travis-ci/dpl/pull/758
|
110
|
+
- https://github.com/travis-ci/dpl/pull/754
|
111
|
+
- https://github.com/travis-ci/dpl/pull/713 (double check with Hiro and implementor)
|
112
|
+
- https://github.com/travis-ci/dpl/pull/695
|
113
|
+
- https://github.com/travis-ci/dpl/pull/600
|
114
|
+
- https://github.com/travis-ci/dpl/pull/593
|
115
|
+
|
116
|
+
already implemented:
|
117
|
+
|
118
|
+
- https://github.com/travis-ci/dpl/pull/1006
|
119
|
+
- https://github.com/travis-ci/dpl/pull/966
|
120
|
+
- https://github.com/travis-ci/dpl/pull/959
|
121
|
+
- https://github.com/travis-ci/dpl/pull/943
|
122
|
+
- https://github.com/travis-ci/dpl/pull/860
|
123
|
+
- https://github.com/travis-ci/dpl/pull/700
|
124
|
+
- https://github.com/travis-ci/dpl/pull/623 (double check with Hiro)
|
125
|
+
- https://github.com/travis-ci/dpl/pull/569
|
126
|
+
- https://github.com/travis-ci/dpl/pull/529
|
127
|
+
|
128
|
+
check with implementors:
|
129
|
+
|
130
|
+
- https://github.com/travis-ci/dpl/pull/720
|
131
|
+
|
132
|
+
outdated:
|
133
|
+
|
134
|
+
- https://github.com/travis-ci/dpl/pull/1014
|
135
|
+
- https://github.com/travis-ci/dpl/pull/1012 (double check with Hiro)
|
136
|
+
- https://github.com/travis-ci/dpl/pull/1000 (double check with Hiro)
|
137
|
+
- https://github.com/travis-ci/dpl/pull/974 (double check with Hiro)
|
138
|
+
- https://github.com/travis-ci/dpl/pull/940
|
139
|
+
|
140
|
+
not sure:
|
141
|
+
|
142
|
+
- https://github.com/travis-ci/dpl/pull/978 (check with Hiro)
|
143
|
+
|
144
|
+
|
145
|
+
- add a DSL for moving files out of the way, and moving them back later, e.g. gcs /etc/boto.cfg
|
146
|
+
- start a CHANGELOG.md?
|
147
|
+
|
148
|
+
- update the docs for the changed netlify provider (Petra's branch?)
|
149
|
+
- update the docs for the changed openshift provider
|
150
|
+
- update the docs for the renamed catalyze (now datica) provider
|
151
|
+
- remove deis from the docs, keep hephy
|
152
|
+
|
153
|
+
Docs
|
154
|
+
|
155
|
+
- EY docs do not explain where to obtain the api key
|
156
|
+
|
157
|
+
Future improvements
|
158
|
+
|
159
|
+
- https://www.freecodecamp.org/news/how-to-deploy-your-cloud-foundry-app-with-almost-zero-fear-using-travis-ci-926697fff8f6/
|
160
|
+
|
161
|
+
|
162
|
+
|
163
|
+
Dependencies:
|
164
|
+
|
165
|
+
```
|
166
|
+
chef_supermarket
|
167
|
+
# the cli cli is a gem, too. would be easier to test though, and maybe more robust?
|
168
|
+
# https://docs.chef.io/ctl_chef.html
|
169
|
+
chef
|
170
|
+
|
171
|
+
cloud_files
|
172
|
+
# rackspace's cli is written in go
|
173
|
+
# https://developer.rackspace.com/docs/rack-cli/configuration/#installation-and-configuration
|
174
|
+
fog-rackspace
|
175
|
+
|
176
|
+
code_deploy
|
177
|
+
aws-sdk
|
178
|
+
|
179
|
+
elastic_beanstalk
|
180
|
+
aws-sdk
|
181
|
+
zip
|
182
|
+
|
183
|
+
engine_yard
|
184
|
+
# the engineyard cli is a gem, too. would be easier to test though, and maybe more robust?
|
185
|
+
# https://support.cloud.engineyard.com/hc/en-us/articles/205406968-Deploy-from-the-CLI-Engine-Yard-CLI-User-Guide-
|
186
|
+
engineyard-cloud-client
|
187
|
+
|
188
|
+
gcs
|
189
|
+
# https://cloud.google.com/storage/docs/gsutil
|
190
|
+
# the GCS cli is a python thing which can be installed via curl/bash:
|
191
|
+
# curl https://sdk.cloud.google.com | bash
|
192
|
+
gstore
|
193
|
+
mime-types
|
194
|
+
|
195
|
+
heroku
|
196
|
+
faraday
|
197
|
+
|
198
|
+
open_shift
|
199
|
+
# red hat seems to have a cli, but the instructions are quite opaque, and want
|
200
|
+
# to log in to their portal
|
201
|
+
# https://docs.openshift.com/container-platform/3.9/cli_reference/get_started_cli.html#installing-the-cli
|
202
|
+
rhc
|
203
|
+
|
204
|
+
packagecloud
|
205
|
+
# has a cli that is a rubygem (with a different name though, has an underscore)
|
206
|
+
# https://packagecloud.io/l/cli
|
207
|
+
packagecloud
|
208
|
+
|
209
|
+
pages
|
210
|
+
octokit
|
211
|
+
|
212
|
+
puppet_forge
|
213
|
+
# not sure if there's actually no cli?
|
214
|
+
puppet
|
215
|
+
puppet_blacksmith
|
216
|
+
|
217
|
+
rubygems
|
218
|
+
gems
|
219
|
+
|
220
|
+
s3
|
221
|
+
aws-sdk
|
222
|
+
mime-types
|
223
|
+
|
224
|
+
testfairy
|
225
|
+
# they have a minimal cli in bash, not sure that's worth it though, also
|
226
|
+
# not sure about the quality of this thing
|
227
|
+
# https://github.com/testfairy/command-line-uploader
|
228
|
+
multipart-post
|
229
|
+
```
|
230
|
+
|
231
|
+
```
|
232
|
+
| provider | tooling | auth | ssh-keygen | git-ssh |
|
233
|
+
| ----------------- | -------------------------------------------------- | -------------- | ---------- | ------- |
|
234
|
+
| Anynines | cf cli (manual download) | user/pass | no | no |
|
235
|
+
| Atlas | atlas-upload cli (go get install) | token (env) | no | no |
|
236
|
+
| Azure Web Apps | Git only | user/pass | no | no |
|
237
|
+
| Bitballoon | bitballoon cli (installed how??) | token | no | no |
|
238
|
+
| Bluemix CF | cf cli (manual download) | user/pass | no | no |
|
239
|
+
| Boxfuse | boxfuse cli (manual download) | user/pass | no? | no? |
|
240
|
+
| Cargo | cargo cli (preinstalled?) | token | no | no |
|
241
|
+
| Catalyze | Git only | ? | no | no |
|
242
|
+
| Chef Supermarket | gem chef | api key | no | no |
|
243
|
+
| Cloud66 | Net::HTTP | ? | no | no |
|
244
|
+
| Cloud Files | gem fog (rackspace) | user/key | no | no |
|
245
|
+
| Cloud Foundry | cf cli (manual download) | user/pass | no | no |
|
246
|
+
| Code Deploy | gem aws-sdk (v2) | key/secret | no | no |
|
247
|
+
| Deis | deis cli (manual download) | user/pass | yes | yes? |
|
248
|
+
| Elastic Beanstalk | gem aws-sdk (v2) | key/secret | no | no |
|
249
|
+
| EngineYard | gem engineyard-cloud-client | api key | no | no |
|
250
|
+
| Firebase | NPM firebase-tools | token | no | no |
|
251
|
+
| GAE | google-cloud-sdk (manual download) | keyfile | no | no |
|
252
|
+
| GCS | gem gstore (archived) | key/secret | no | no |
|
253
|
+
| Hackage | cabal (apt-get install) | user/pass | no | no |
|
254
|
+
| Hephy | `deis` cli (manual download) | user/pass | yes | yes? |
|
255
|
+
| Heroku API | gem faraday | api key | no | no |
|
256
|
+
| Heroku Git | gem faraday and Git | both?? | no | no |
|
257
|
+
| Lambda | gem aws-sdk (v2) | key/secret | no | no |
|
258
|
+
| Launchpad | Net:HTTP | token/secret | no | no |
|
259
|
+
| NPM | npm (preinstall) | api key | no | no |
|
260
|
+
| Open Shift | gem rhc (archived) and Git | user/pass | yes | yes? |
|
261
|
+
| Ops Works | gem aws-sdk (v2) | key/secret | no | no |
|
262
|
+
| Packagecloud | gem packagecloud | user/token | no | no |
|
263
|
+
| Pages | gem octokit | token | no | no |
|
264
|
+
| Puppet Forge | gems puppet, puppet_blacksmith | user/pass | no | no |
|
265
|
+
| PyPI | pip/twine (manual download) | user/pass | no | no |
|
266
|
+
| Releases | gem octokit | token | no | no |
|
267
|
+
| Rubygems | gem gems | api key | no | no |
|
268
|
+
| S3 | gem aws-sdk (v2) | key/secret | no | no |
|
269
|
+
| Scalingo | scalingo (manual download) | u/p or api key | yes | no? |
|
270
|
+
| Script | - | - | no | no |
|
271
|
+
| Snap | snap (apt-get) | token | no | no |
|
272
|
+
| Surge | surge (npm install) | login/token | no | no |
|
273
|
+
| Testfairy | gem multipart-post | api key | no | no |
|
274
|
+
| Transifex | tx (pip install) | user/pass | no | no |
|
275
|
+
```
|