dpl 2.0.0.beta.3 → 2.0.3.beta.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: a1f01c5ac0b8b54c0193bcbcd82563e6e721fcba
4
- data.tar.gz: d6c14a5f04ad1992314280aa0bcee24d5d11e3c8
2
+ SHA256:
3
+ metadata.gz: 8986144ffd8e2b01a258e50d348a92a548a7b5e8d6a4851c628dfb4daed713f4
4
+ data.tar.gz: ffcb50346cf2006a399567f6bb9891045656782386e4a8abc83fa53c633d0bd7
5
5
  SHA512:
6
- metadata.gz: d6abcb163c1b0126c90f8687c7f3f3e804f447c89ef5b6789931726f3b9383450a121f522e13521603907506d9424b73baa35b246c018ab465c4f2a83ea47b19
7
- data.tar.gz: ad90bc374e92a96db13243806da650a39ca633a4bd7571fad63e7da328cd9ce1c90924f40076dfbc2270ce7250e1ed9bf790f6a178369f3a99016d76dd1bc49a
6
+ metadata.gz: b80ee9f27d5214976f7196b9939564b82c81b6c0dbc8dd14190a0bcbdaf34f105489a36026f2521444b965a692701f44f827c86638a1ec5d2fb0a7bf7dde6ff7
7
+ data.tar.gz: c1b76a7cfa0d44c50e3ef736b759f731c29d937234237be0c8c969eda79ce56a158e3daf5f9626f2909f9ecc8c221b91ad5d2a9cb7468a7475b714ea39abf5f5
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## dpl v2.0.3-beta.1 (2022-03-15)
4
+
5
+ * Deprecate support for Ruby 2.2
6
+
7
+ ## dpl v2.0.2-beta.1 (2020-09-15)
8
+
9
+ * Add AWS ECR support
10
+
3
11
  ## dpl v2.0.1-beta.3 (unreleased)
4
12
 
5
13
  * Change git_push to use the GitHub token's user name and email as the
data/Gemfile CHANGED
@@ -2,7 +2,7 @@ $: << 'lib'
2
2
  require 'dpl/support/gems'
3
3
 
4
4
  source 'https://rubygems.org'
5
- ruby '>= 2.2'
5
+ ruby '>= 2.3'
6
6
 
7
7
  gemspec name: 'dpl'
8
8
  # gem 'cl', path: '../../cl'
data/Gemfile.lock CHANGED
@@ -1,46 +1,49 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- dpl (2.0.0.beta.2)
4
+ dpl (2.0.3.beta.1)
5
5
  cl (~> 1.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- addressable (2.7.0)
10
+ addressable (2.8.0)
11
11
  public_suffix (>= 2.0.2, < 5.0)
12
- awesome_print (1.8.0)
13
- aws-eventstream (1.0.3)
14
- aws-partitions (1.273.0)
15
- aws-sdk-cloudformation (1.30.0)
16
- aws-sdk-core (~> 3, >= 3.71.0)
12
+ awesome_print (1.9.2)
13
+ aws-eventstream (1.2.0)
14
+ aws-partitions (1.577.0)
15
+ aws-sdk-cloudformation (1.68.0)
16
+ aws-sdk-core (~> 3, >= 3.127.0)
17
17
  aws-sigv4 (~> 1.1)
18
- aws-sdk-codedeploy (1.27.0)
19
- aws-sdk-core (~> 3, >= 3.71.0)
18
+ aws-sdk-codedeploy (1.49.0)
19
+ aws-sdk-core (~> 3, >= 3.127.0)
20
20
  aws-sigv4 (~> 1.1)
21
- aws-sdk-core (3.90.1)
22
- aws-eventstream (~> 1.0, >= 1.0.2)
23
- aws-partitions (~> 1, >= 1.239.0)
21
+ aws-sdk-core (3.130.1)
22
+ aws-eventstream (~> 1, >= 1.0.2)
23
+ aws-partitions (~> 1, >= 1.525.0)
24
24
  aws-sigv4 (~> 1.1)
25
25
  jmespath (~> 1.0)
26
- aws-sdk-elasticbeanstalk (1.26.0)
27
- aws-sdk-core (~> 3, >= 3.71.0)
26
+ aws-sdk-ecr (1.56.0)
27
+ aws-sdk-core (~> 3, >= 3.127.0)
28
28
  aws-sigv4 (~> 1.1)
29
- aws-sdk-kms (1.29.0)
30
- aws-sdk-core (~> 3, >= 3.71.0)
29
+ aws-sdk-elasticbeanstalk (1.51.0)
30
+ aws-sdk-core (~> 3, >= 3.127.0)
31
31
  aws-sigv4 (~> 1.1)
32
- aws-sdk-lambda (1.35.0)
33
- aws-sdk-core (~> 3, >= 3.71.0)
32
+ aws-sdk-kms (1.55.0)
33
+ aws-sdk-core (~> 3, >= 3.127.0)
34
34
  aws-sigv4 (~> 1.1)
35
- aws-sdk-opsworks (1.21.0)
36
- aws-sdk-core (~> 3, >= 3.71.0)
35
+ aws-sdk-lambda (1.83.0)
36
+ aws-sdk-core (~> 3, >= 3.127.0)
37
37
  aws-sigv4 (~> 1.1)
38
- aws-sdk-s3 (1.60.2)
39
- aws-sdk-core (~> 3, >= 3.83.0)
40
- aws-sdk-kms (~> 1)
38
+ aws-sdk-opsworks (1.41.0)
39
+ aws-sdk-core (~> 3, >= 3.127.0)
41
40
  aws-sigv4 (~> 1.1)
42
- aws-sigv4 (1.1.0)
43
- aws-eventstream (~> 1.0, >= 1.0.2)
41
+ aws-sdk-s3 (1.113.0)
42
+ aws-sdk-core (~> 3, >= 3.127.0)
43
+ aws-sdk-kms (~> 1)
44
+ aws-sigv4 (~> 1.4)
45
+ aws-sigv4 (1.4.0)
46
+ aws-eventstream (~> 1, >= 1.0.2)
44
47
  belafonte (0.5.0)
45
48
  optionally
46
49
  wrapomatic (~> 0.3)
@@ -88,8 +91,9 @@ GEM
88
91
  cistern (0.12.3)
89
92
  cl (1.2.4)
90
93
  regstry (~> 1.0.3)
91
- coderay (1.1.2)
94
+ coderay (1.1.3)
92
95
  colorize (0.8.1)
96
+ concurrent-ruby (1.1.10)
93
97
  cookiejar (0.3.3)
94
98
  coveralls (0.8.23)
95
99
  json (>= 1.8, < 3)
@@ -97,13 +101,14 @@ GEM
97
101
  term-ansicolor (~> 1.3)
98
102
  thor (>= 0.19.4, < 2.0)
99
103
  tins (~> 1.6)
100
- crack (0.4.3)
101
- safe_yaml (~> 1.0.0)
102
- diff-lcs (1.3)
103
- docile (1.3.2)
104
+ crack (0.4.5)
105
+ rexml
106
+ deep_merge (1.2.2)
107
+ diff-lcs (1.5.0)
108
+ docile (1.4.0)
104
109
  domain_name (0.5.20190701)
105
110
  unf (>= 0.0.5, < 1.0.0)
106
- em-http-request (1.1.5)
111
+ em-http-request (1.1.7)
107
112
  addressable (>= 2.3.4)
108
113
  cookiejar (!= 0.3.1)
109
114
  em-socksify (>= 0.3)
@@ -114,7 +119,7 @@ GEM
114
119
  erubis (2.7.0)
115
120
  escape (0.0.4)
116
121
  eventmachine (1.2.7)
117
- excon (0.72.0)
122
+ excon (0.92.2)
118
123
  ey-core (3.5.0)
119
124
  addressable
120
125
  awesome_print
@@ -135,27 +140,27 @@ GEM
135
140
  rack
136
141
  sshkey (~> 1.6)
137
142
  table_print
138
- ey-hmac (2.2.0)
143
+ ey-hmac (2.4.0)
139
144
  facter (2.5.7)
140
145
  faraday (0.9.2)
141
146
  multipart-post (>= 1.2, < 3)
142
147
  faraday_middleware (0.14.0)
143
148
  faraday (>= 0.7.4, < 1.0)
144
- fast_gettext (1.1.2)
145
- faye (1.2.4)
149
+ fast_gettext (1.8.0)
150
+ faye (1.4.0)
146
151
  cookiejar (>= 0.3.0)
147
- em-http-request (>= 0.3.0)
152
+ em-http-request (>= 1.1.6)
148
153
  eventmachine (>= 0.12.0)
149
- faye-websocket (>= 0.9.1)
154
+ faye-websocket (>= 0.11.0)
150
155
  multi_json (>= 1.0.0)
151
156
  rack (>= 1.0.0)
152
157
  websocket-driver (>= 0.5.1)
153
- faye-websocket (0.10.9)
158
+ faye-websocket (0.11.1)
154
159
  eventmachine (>= 0.12.0)
155
160
  websocket-driver (>= 0.5.1)
156
- ffi (1.12.2)
157
- ffi-yajl (2.3.3)
158
- libyajl2 (~> 1.2)
161
+ ffi (1.15.5)
162
+ ffi-yajl (2.4.0)
163
+ libyajl2 (>= 1.2)
159
164
  fog-core (2.1.0)
160
165
  builder
161
166
  excon (~> 0.58)
@@ -169,35 +174,38 @@ GEM
169
174
  fog-json (>= 1.0)
170
175
  fog-xml (>= 0.1)
171
176
  ipaddress (>= 0.8)
172
- fog-xml (0.1.3)
177
+ fog-xml (0.1.4)
173
178
  fog-core
174
179
  nokogiri (>= 1.5.11, < 2.0.0)
175
- formatador (0.2.5)
180
+ formatador (0.3.0)
176
181
  fuzzyurl (0.9.0)
177
182
  gems (1.1.1)
178
183
  json
179
- gleis (0.6.2)
180
- rest-client (~> 2.0.0)
184
+ gleis (0.8.0)
185
+ rest-client (~> 2.1.0)
181
186
  thor (~> 0.20.0)
182
- hashdiff (1.0.0)
187
+ hashdiff (1.0.1)
183
188
  hashie (3.6.0)
184
- hiera (3.6.0)
189
+ hiera (3.8.0)
185
190
  highline (1.7.10)
186
- http-cookie (1.0.3)
191
+ hocon (1.3.1)
192
+ http-accept (1.7.0)
193
+ http-cookie (1.0.4)
187
194
  domain_name (~> 0.5)
188
- http_parser.rb (0.6.0)
189
- iniparse (1.4.4)
195
+ http_parser.rb (0.8.0)
196
+ httpclient (2.8.3)
197
+ iniparse (1.5.0)
190
198
  ipaddress (0.8.3)
191
- jmespath (1.4.0)
199
+ jmespath (1.6.1)
192
200
  json (1.8.6)
193
201
  json_pure (1.8.6)
194
- libyajl2 (1.2.0)
202
+ libyajl2 (2.1.0)
195
203
  locale (2.1.3)
196
- method_source (0.9.2)
204
+ method_source (1.0.0)
197
205
  mime (0.4.4)
198
206
  mime-types (3.2.2)
199
207
  mime-types-data (~> 3.2015)
200
- mime-types-data (3.2019.1009)
208
+ mime-types-data (3.2022.0105)
201
209
  mini_portile2 (2.4.0)
202
210
  mixlib-archive (0.4.20)
203
211
  mixlib-log
@@ -207,10 +215,10 @@ GEM
207
215
  tomlrb
208
216
  mixlib-log (1.7.1)
209
217
  mixlib-shellout (2.4.4)
210
- multi_json (1.14.1)
218
+ multi_json (1.15.0)
211
219
  multipart-post (2.0.0)
212
- net-scp (2.0.0)
213
- net-ssh (>= 2.6.5, < 6.0.0)
220
+ net-scp (3.0.0)
221
+ net-ssh (>= 2.6.5, < 7.0.0)
214
222
  net-sftp (2.1.2)
215
223
  net-ssh (>= 2.6.5)
216
224
  net-ssh (4.2.0)
@@ -238,7 +246,7 @@ GEM
238
246
  plist (~> 3.1)
239
247
  systemu (~> 2.6.4)
240
248
  wmi-lite (~> 1.0)
241
- oj (3.10.2)
249
+ oj (3.13.11)
242
250
  oj_mimic_json (1.0.1)
243
251
  optionally (0.0.3)
244
252
  packagecloud-ruby (1.0.8)
@@ -247,54 +255,62 @@ GEM
247
255
  mime (~> 0.4)
248
256
  multi_json (~> 1.0)
249
257
  pathspec (0.2.1)
250
- plist (3.5.0)
258
+ plist (3.6.0)
251
259
  proxifier (1.0.3)
252
- pry (0.12.2)
253
- coderay (~> 1.1.0)
254
- method_source (~> 0.9.0)
260
+ pry (0.14.1)
261
+ coderay (~> 1.1)
262
+ method_source (~> 1.0)
255
263
  public_suffix (3.0.3)
256
- puppet (5.5.18)
257
- facter (> 2.0.1, < 4)
258
- fast_gettext (~> 1.1.2)
264
+ puppet (6.26.0)
265
+ concurrent-ruby (~> 1.0)
266
+ deep_merge (~> 1.0)
267
+ facter (> 2.0.1, < 5)
268
+ fast_gettext (~> 1.1)
259
269
  hiera (>= 3.2.1, < 4)
270
+ httpclient (~> 2.8)
260
271
  locale (~> 2.1)
261
272
  multi_json (~> 1.10)
262
- puppet-blacksmith (3.3.1)
263
- puppet (>= 2.7.16)
264
- rest-client
265
- rack (2.2.2)
273
+ puppet-resource_api (~> 1.5)
274
+ semantic_puppet (~> 1.0)
275
+ puppet-blacksmith (4.1.2)
276
+ rest-client (~> 2.0)
277
+ puppet-resource_api (1.8.14)
278
+ hocon (>= 1.0)
279
+ rack (2.2.3)
266
280
  rake (12.3.3)
267
281
  regstry (1.0.15)
268
282
  rendezvous (0.1.3)
269
- rest-client (2.0.2)
283
+ rest-client (2.1.0)
284
+ http-accept (>= 1.7.0, < 2.0)
270
285
  http-cookie (>= 1.0.2, < 2.0)
271
286
  mime-types (>= 1.16, < 4.0)
272
287
  netrc (~> 0.8)
273
- rspec (3.8.0)
274
- rspec-core (~> 3.8.0)
275
- rspec-expectations (~> 3.8.0)
276
- rspec-mocks (~> 3.8.0)
277
- rspec-core (3.8.2)
278
- rspec-support (~> 3.8.0)
279
- rspec-expectations (3.8.4)
288
+ rexml (3.2.5)
289
+ rspec (3.11.0)
290
+ rspec-core (~> 3.11.0)
291
+ rspec-expectations (~> 3.11.0)
292
+ rspec-mocks (~> 3.11.0)
293
+ rspec-core (3.11.0)
294
+ rspec-support (~> 3.11.0)
295
+ rspec-expectations (3.11.0)
280
296
  diff-lcs (>= 1.2.0, < 2.0)
281
- rspec-support (~> 3.8.0)
297
+ rspec-support (~> 3.11.0)
282
298
  rspec-its (1.3.0)
283
299
  rspec-core (>= 3.0.0)
284
300
  rspec-expectations (>= 3.0.0)
285
- rspec-mocks (3.8.1)
301
+ rspec-mocks (3.11.1)
286
302
  diff-lcs (>= 1.2.0, < 2.0)
287
- rspec-support (~> 3.8.0)
288
- rspec-support (3.8.2)
303
+ rspec-support (~> 3.11.0)
304
+ rspec-support (3.11.0)
289
305
  rspec_junit_formatter (0.2.3)
290
306
  builder (< 4)
291
307
  rspec-core (>= 2, < 4, != 2.12.0)
292
308
  rubyzip (1.2.4)
293
- safe_yaml (1.0.5)
294
309
  sawyer (0.8.2)
295
310
  addressable (>= 2.3.5)
296
311
  faraday (> 0.8, < 2.0)
297
- serverspec (2.41.5)
312
+ semantic_puppet (1.0.4)
313
+ serverspec (2.42.0)
298
314
  multi_json
299
315
  rspec (~> 3.0)
300
316
  rspec-its
@@ -305,32 +321,34 @@ GEM
305
321
  json (>= 1.8, < 3)
306
322
  simplecov-html (~> 0.10.0)
307
323
  simplecov-html (0.10.2)
308
- specinfra (2.82.9)
324
+ specinfra (2.83.2)
309
325
  net-scp
310
326
  net-ssh (>= 2.7)
311
327
  net-telnet (= 0.1.1)
312
328
  sfl
313
329
  sshkey (1.9.0)
330
+ sync (0.5.0)
314
331
  syslog-logger (1.6.8)
315
332
  systemu (2.6.5)
316
- table_print (1.5.6)
333
+ table_print (1.5.7)
317
334
  term-ansicolor (1.7.1)
318
335
  tins (~> 1.0)
319
336
  thor (0.20.3)
320
- tins (1.21.1)
321
- tomlrb (1.2.9)
337
+ tins (1.31.0)
338
+ sync
339
+ tomlrb (2.0.1)
322
340
  unf (0.1.4)
323
341
  unf_ext
324
- unf_ext (0.0.7.6)
342
+ unf_ext (0.0.8.1)
325
343
  uuidtools (2.1.5)
326
- webmock (3.8.2)
327
- addressable (>= 2.3.6)
344
+ webmock (3.14.0)
345
+ addressable (>= 2.8.0)
328
346
  crack (>= 0.3.2)
329
347
  hashdiff (>= 0.4.0, < 2.0.0)
330
- websocket-driver (0.7.1)
348
+ websocket-driver (0.7.5)
331
349
  websocket-extensions (>= 0.1.0)
332
- websocket-extensions (0.1.4)
333
- wmi-lite (1.0.5)
350
+ websocket-extensions (0.1.5)
351
+ wmi-lite (1.0.7)
334
352
  wrapomatic (0.3.0)
335
353
 
336
354
  PLATFORMS
@@ -339,6 +357,7 @@ PLATFORMS
339
357
  DEPENDENCIES
340
358
  aws-sdk-cloudformation (~> 1.0)
341
359
  aws-sdk-codedeploy (~> 1.0)
360
+ aws-sdk-ecr (~> 1.0)
342
361
  aws-sdk-elasticbeanstalk (~> 1.0)
343
362
  aws-sdk-lambda (~> 1.0)
344
363
  aws-sdk-opsworks (~> 1.0)
@@ -351,7 +370,7 @@ DEPENDENCIES
351
370
  fog-core (= 2.1.0)
352
371
  fog-rackspace (~> 0.1.6)
353
372
  gems (~> 1.1.1)
354
- gleis (~> 0.6.0)
373
+ gleis (~> 0.8.0)
355
374
  json
356
375
  mime-types (~> 3.2.2)
357
376
  multipart-post (~> 2.0.0)
@@ -361,8 +380,8 @@ DEPENDENCIES
361
380
  packagecloud-ruby (~> 1.0.8)
362
381
  pathspec (~> 0.2.1)
363
382
  public_suffix (~> 3.0.3)
364
- puppet (~> 5.5.14)
365
- puppet-blacksmith (~> 3.3.1)
383
+ puppet (~> 6.26.0)
384
+ puppet-blacksmith (~> 4.1.2)
366
385
  rack
367
386
  rake (~> 12.3)
368
387
  rendezvous (~> 0.1.3)
@@ -371,7 +390,7 @@ DEPENDENCIES
371
390
  webmock
372
391
 
373
392
  RUBY VERSION
374
- ruby 2.4.1p111
393
+ ruby 2.5.8p224
375
394
 
376
395
  BUNDLED WITH
377
- 2.0.2
396
+ 2.1.4
data/README.md CHANGED
@@ -29,7 +29,7 @@ please do not hesitate to get in touch, and we'll help you [add it](#contributin
29
29
 
30
30
  ## Requirements
31
31
 
32
- Dpl requires Ruby 2.2 or later.
32
+ Dpl requires Ruby 2.3 or later.
33
33
 
34
34
  Depending on the deployment target dpl might require additional runtimes (e.g.
35
35
  Go, Node.js, or Python) to be installed. It also might require sudo access in
@@ -98,6 +98,7 @@ Dpl supports the following providers:
98
98
  * [Anynines](#anynines)
99
99
  * [AWS CloudFormation](#aws-cloudformation)
100
100
  * [AWS Code Deploy](#aws-code-deploy)
101
+ * [AWS ECR](#aws-ecr)
101
102
  * [AWS Elastic Beanstalk](#aws-elastic-beanstalk)
102
103
  * [AWS Lambda](#aws-lambda)
103
104
  * [AWS OpsWorks](#aws-opsworks)
@@ -116,9 +117,9 @@ Dpl supports the following providers:
116
117
  * [Engineyard](#engineyard)
117
118
  * [Firebase](#firebase)
118
119
  * [Flynn](#flynn)
119
- * [Git (push)](#git-push-)
120
+ * [Git (push)](#git-push)
120
121
  * [GitHub Pages](#github-pages)
121
- * [GitHub Pages (API)](#github-pages-api-)
122
+ * [GitHub Pages (API)](#github-pages-api)
122
123
  * [GitHub Releases](#github-releases)
123
124
  * [Gleis](#gleis)
124
125
  * [Google App Engine](#google-app-engine)
@@ -299,6 +300,49 @@ The following variable are availabe for interpolation on `description`:
299
300
  `application`, `bucket`, `bundle_type`, `commit_id`, `deployment_group`, `endpoint`, `file_exists_behavior`, `git_author_email`, `git_author_name`, `git_branch`, `git_commit_author`, `git_commit_msg`, `git_sha`, `git_tag`, `key`, `region`, `repository`, `revision_type`, `build_number`
300
301
 
301
302
 
303
+ ### AWS ECR
304
+
305
+ Support for deployments to AWS ECR is in **alpha**. Please see [Maturity Levels](https://github.com/travis-ci/dpl/#maturity-levels) for details.
306
+
307
+ ```
308
+ Usage: dpl ecr [options]
309
+
310
+ Summary:
311
+
312
+ AWS ECR deployment provider
313
+
314
+ Description:
315
+
316
+ tbd
317
+
318
+ Options:
319
+
320
+ --access_key_id ID AWS access key (type: string, required)
321
+ --secret_access_key KEY AWS secret access key (type: string, required)
322
+ --account_id ID AWS Account ID (type: string, note: Required if the repository is owned by a
323
+ different account than the IAM user)
324
+ --source SOURCE Image to push (type: string, required, note: can be the id or the name and
325
+ optional tag (e.g. mysql:5.6))
326
+ --target TARGET Comma separated list of partial repository names to push to (type: string,
327
+ required)
328
+ --region REGION Comma separated list of regions to push to (type: string, default: us-east-1)
329
+
330
+ Common Options:
331
+
332
+ --cleanup Clean up build artifacts from the Git working directory before the deployment
333
+ --run CMD Commands to execute after the deployment finished successfully (type: array
334
+ (string, can be given multiple times))
335
+ --help Get help on this command
336
+
337
+ Examples:
338
+
339
+ dpl ecr --access_key_id id --secret_access_key key --source source --target target
340
+ dpl ecr --access_key_id id --secret_access_key key --source source --target target --account_id id
341
+ ```
342
+
343
+ Options can be given via env vars if prefixed with `AWS_`. E.g. the option `--access_key_id` can be
344
+ given as `AWS_ACCESS_KEY_ID=<access_key_id>`.
345
+
302
346
  ### AWS Elastic Beanstalk
303
347
 
304
348
 
@@ -396,9 +440,10 @@ Options:
396
440
  --environment VARS List of Environment Variables to add to the function (type: array (string, can
397
441
  be given multiple times), alias: environment_variables, format: /[\w\-]+=.+/,
398
442
  note: Can be encrypted for added security)
399
- --runtime NAME Lambda runtime to use (type: string, default: nodejs8.10, known values: java8,
400
- nodejs8.10, nodejs10.x, python2.7, python3.6, python3.7, dotnetcore2.1, go1.x,
401
- ruby2.5, note: required when creating a new function)
443
+ --runtime NAME Lambda runtime to use (type: string, default: nodejs10.x, known values:
444
+ nodejs12.x, nodejs10.x, python3.8, python3.7, python3.6, python2.7, ruby2.7,
445
+ ruby2.5, java11, java8, go1.x, dotnetcore2.1, note: required when creating a new
446
+ function)
402
447
  --dead_letter_arn ARN ARN to an SNS or SQS resource used for the dead letter queue. (type: string)
403
448
  --kms_key_arn ARN KMS key ARN to use to encrypt environment_variables. (type: string)
404
449
  --tracing_mode MODE Tracing mode (type: string, default: PassThrough, known values: Active,
@@ -847,23 +892,24 @@ Description:
847
892
 
848
893
  Options:
849
894
 
850
- --username USER Cloud Foundry username (type: string, required)
851
- --password PASS Cloud Foundry password (type: string, required)
852
- --organization ORG Cloud Foundry organization (type: string, required)
853
- --space SPACE Cloud Foundry space (type: string, required)
854
- --api URL Cloud Foundry api URL (type: string, default: https://api.run.pivotal.io)
855
- --app_name APP Application name (type: string)
856
- --buildpack PACK Buildpack name or Git URL (type: string)
857
- --manifest FILE Path to the manifest (type: string)
858
- --[no-]skip_ssl_validation Skip SSL validation
859
- --[no-]v3 Use the v3 API version to push the application
895
+ --username USER Cloud Foundry username (type: string, required)
896
+ --password PASS Cloud Foundry password (type: string, required)
897
+ --organization ORG Cloud Foundry organization (type: string, required)
898
+ --space SPACE Cloud Foundry space (type: string, required)
899
+ --api URL Cloud Foundry api URL (type: string, default: https://api.run.pivotal.io)
900
+ --app_name APP Application name (type: string)
901
+ --buildpack PACK Buildpack name or Git URL (type: string)
902
+ --manifest FILE Path to the manifest (type: string)
903
+ --[no-]skip_ssl_validation Skip SSL validation
904
+ --deployment_strategy STRATEGY Deployment strategy, either rolling or null (type: string)
905
+ --[no-]v3 Use the v3 API version to push the application
860
906
 
861
907
  Common Options:
862
908
 
863
- --cleanup Clean up build artifacts from the Git working directory before the deployment
864
- --run CMD Commands to execute after the deployment finished successfully (type: array
865
- (string, can be given multiple times))
866
- --help Get help on this command
909
+ --cleanup Clean up build artifacts from the Git working directory before the deployment
910
+ --run CMD Commands to execute after the deployment finished successfully (type: array
911
+ (string, can be given multiple times))
912
+ --help Get help on this command
867
913
 
868
914
  Examples:
869
915
 
@@ -2695,4 +2741,4 @@ This tool would not exist without your help.
2695
2741
 
2696
2742
  A huge thank you goes out to all of our current and past [contributors](https://github.com/travis-ci/dpl/graphs/contributors):
2697
2743
 
2698
- 5c077yP, A.J. May, A92hm, Aakriti Gupta, Aaron Hill, Aaron1011, Abdón Rodríguez Davila, Adam King, Adam Mcgrath, adinata, Adrian Moreno, Ahmad Nassri, Ahmed Refaey, Ainun Nazieb, Albertin Loic, Alex Jurkiewicz, Alexander Springer, Alexey Kotlyarov, Ali Hajimirza, Amos Wenger, Anders Olsen Sandvik, Andrey Lushchick, Andy Vanbutsele, Angelo Livanos, Anne-Julia Seitz, Antoine Savignac, Anton Babenko, Anton Ilin, Arnold Daniels, Ashen Gunaratne, awesomescot, Axel Fontaine, Baptiste Courtois, Ben Hale, Benjamin Guttmann, Bob, Bob Zoller, Brad Gignac, Brandon Burton, Brandon LeBlanc, Brian Hou, Cameron White, capotej, Carla, carlad, Chad Engler, Chathan Driehuys, Chris Patterson, Christian Elsen, Christian Rackerseder, Clay Reimann, cleem, Cryptophobia, Damien Mathieu, Dan Buch, Dan Powell, Daniel X Moore, David F. Severski, Denis Cornehl, Dennis Koot, dependabot[bot], Devin J. Pohly, Dominic Jodoin, Dwayne Forde, emdantrim, Eric Peterson, Erik Dalén, Esteban Santiesteban, Étienne Michon, eyalbe4, Fabio Napoleoni, Felix Rieseberg, fgogolli, Filip Š, Flamur Gogolli, Gabriel Saldana, George Brighton, Gil, Gil Megidish, Gil Tselenchuk, Hao Luo, Hauke Stange, Henrik Hodne, Hiro Asari, IMANAKA, Kouta, Ivan Evtuhovich, Ivan Kusalic, Ivan Pozdeev, Jacob Burkhart, Jake Hewitt, Jakub Holy, James Adam, James Awesome, James Parker, Janderson, Jannis Leidel, Jeffrey Yasskin, Jeremy Frasier, JMSwag, Joe Damato, Joep van Delft, Johannes Würbach, johanneswuerbach, Johnny Dobbins, Jon Benson, Jon Rowe, Jon-Erik Schneiderhan, Jonatan Männchen, Jonathan Stites, Jonathan Sundqvist, jorgecasar, Josh Kalderimis, joshua-anderson, Jouni Kaplas, Julia S.Simon, Julio Capote, jung_b@localhost, Karim Fateem, Ke Zhu, konrad-c, Konstantin Haase, Kouta Imanaka, Kristofer Svardstal, Kyle Fazzari, Kyle VanderBeek, Loïc Mahieu, Lorenz Leutgeb, Lorne Currie, Louis Lagrange, Louis St-Amour, Luke Yeager, Maciej Skierkowski, Mahdi Nami Damirchi, Marc, María de Antón, mariadeanton, Mariana Lenetis and Zachary Gershman, Marius Gripsgard, Mark Pundsack, marscher, Marwan Rabbâa, Mathias Meyer, Mathias Rangel Wulff, Mathias San Miguel, Matt Hernandez, Matt Knox, Matt Travi, Matthew Knox, Maxime Brugidou, mayeut, Meir Gottlieb, Michael Bleigh, Michael Dunn, Michael Friis, Michel Boudreau, Mike Bryant, Nat Welch, Nicholas Bruning, Nick Mohoric, Nico Lindemann, Nigel Ramsay, Nikhil, Ole Michaelis, Olle Jonsson, Omer Katz, Patrique Legault, Paul Beaudoin, Paul Nikitochkin, Peter, Peter Georgantas, Peter Newman, Philipp Hansch, Piotr Sarnacki, Radek Lisowski, Radosław Lisowski, Rail Aliiev, Randall A. Gordon, Robert, Robert Gogolok, Rokas Brazdžionis, Romuald Bulyshko, root, ryanj, Ryn Daniels, Samir Talwar, Samuel Wright, Sandor Zeestraten, Sascha Zarhuber, SAULEAU Sven, Scot Spinner, Sebastien Estienne, Sergei Chertkov, shunyi, Simon, Solly, Sorin Sbarnea, Soulou, Stefan Kolb, Steffen Kötte, step76, Steven Berlanga, Sven Fuchs, Sviatoslav Sydorenko, testfairy, Tim Ysewyn, Troels Thomsen, Tyler Cross, Uriah Levy, Vincent Jacques, Vojtech Vondra, Vojtěch Vondra, Wael M. Nasreddine, Wen Kokke, Wim Looman, Xavier Krantz, yeonhoyoon, Zane Williamson
2744
+ 5c077yP, A.J. May, A92hm, Aakriti Gupta, Aaron Hill, Aaron1011, Abdón Rodríguez Davila, Adam King, Adam Mcgrath, adinata, Adrian Moreno, Ahmad Nassri, Ahmed Refaey, Ainun Nazieb, Albertin Loic, Alex Jurkiewicz, Alexander Springer, Alexey Kotlyarov, Ali Hajimirza, Amos Wenger, Anders Olsen Sandvik, Andrew Nichols, Andrey Lushchick, Andy Vanbutsele, Angelo Livanos, Anne-Julia Seitz, Antoine Savignac, Anton Babenko, Anton Ilin, Arnold Daniels, Ashen Gunaratne, awesomescot, Axel Fontaine, Baptiste Courtois, Ben Hale, Benjamin Guttmann, Bob, Bob Zoller, Brad Gignac, Brandon Burton, Brandon LeBlanc, Brian Hou, Cameron White, capotej, Carla, carlad, Chad Engler, Chathan Driehuys, Chris Patterson, Christian Elsen, Christian Rackerseder, Clay Reimann, cleem, Cryptophobia, Damien Mathieu, Dan Buch, Dan Powell, Daniel X Moore, David F. Severski, Denis Cornehl, Dennis Koot, dependabot[bot], Devin J. Pohly, Dominic Jodoin, Dwayne Forde, emdantrim, Eric Peterson, Erik Dalén, Esteban Santiesteban, Étienne Michon, Eugene, Eugene Shubin, eyalbe4, Fabio Napoleoni, Felix Rieseberg, fgogolli, Filip Š, Flamur Gogolli, Gabriel Saldana, George Brighton, Gil, Gil Megidish, Gil Tselenchuk, Hao Luo, Hauke Stange, Henrik Hodne, Hiro Asari, IMANAKA, Kouta, Ivan Evtuhovich, Ivan Kusalic, Ivan Pozdeev, Jacob Burkhart, Jake Hewitt, Jakub Holy, James Adam, James Awesome, James Parker, Janderson, Jannis Leidel, Jeffrey Yasskin, Jeremy Frasier, JMSwag, Joe Damato, Joep van Delft, Johannes Würbach, johanneswuerbach, Johnny Dobbins, Jon Benson, Jon Rowe, Jon-Erik Schneiderhan, Jonatan Männchen, Jonathan Stites, Jonathan Sundqvist, jorgecasar, Josh Kalderimis, joshua-anderson, Jouni Kaplas, Julia S.Simon, Julio Capote, jung_b@localhost, Karim Fateem, Ke Zhu, konrad-c, Konstantin Haase, Kouta Imanaka, Kristofer Svardstal, Kyle Fazzari, Kyle VanderBeek, Loïc Mahieu, Lorenz Leutgeb, Lorne Currie, Louis Lagrange, Louis St-Amour, Luke Yeager, Maciej Skierkowski, Mahdi Nami Damirchi, Marc, María de Antón, mariadeanton, Mariana Lenetis and Zachary Gershman, Marius Gripsgard, Mark Pundsack, marscher, Marwan Rabbâa, Mathias Meyer, Mathias Rangel Wulff, Mathias San Miguel, Matt Hernandez, Matt Knox, Matt Travi, Matthew Knox, Maxime Brugidou, mayeut, Meir Gottlieb, Michael Bleigh, Michael Dunn, Michael Friis, Michel Boudreau, Mike Bryant, Nat Welch, Nicholas Bruning, Nick Mohoric, Nico Lindemann, Nigel Ramsay, Nikhil, Ole Michaelis, Olle Jonsson, Omer Katz, Patrique Legault, Paul Beaudoin, Paul Nikitochkin, Peter, Peter Georgantas, Peter Newman, Philipp Hansch, Piotr Sarnacki, Radek Lisowski, Radosław Lisowski, Rail Aliiev, Randall A. Gordon, Robert, Robert Gogolok, Rokas Brazdžionis, Romuald Bulyshko, root, ryanj, Ryn Daniels, Samir Talwar, Samuel Wright, Sandor Zeestraten, Sascha Zarhuber, SAULEAU Sven, Scot Spinner, Sebastien Estienne, Sergei Chertkov, shunyi, Simon, Solly, Sorin Sbarnea, Soulou, Stefan Kolb, Steffen Kötte, step76, Steven Berlanga, Sven Fuchs, Sviatoslav Sydorenko, testfairy, Tim Ysewyn, Troels Thomsen, Tyler Cross, Uriah Levy, Vincent Jacques, Vojtech Vondra, Vojtěch Vondra, Wael M. Nasreddine, Wen Kokke, Wim Looman, Xavier Krantz, yeonhoyoon, Zane Williamson
@@ -29,7 +29,7 @@ please do not hesitate to get in touch, and we'll help you [add it](#contributin
29
29
 
30
30
  ## Requirements
31
31
 
32
- Dpl requires Ruby 2.2 or later.
32
+ Dpl requires Ruby 2.3 or later.
33
33
 
34
34
  Depending on the deployment target dpl might require additional runtimes (e.g.
35
35
  Go, Node.js, or Python) to be installed. It also might require sudo access in
@@ -96,7 +96,7 @@ the following maturity levels, according to the given criteria:
96
96
  Dpl supports the following providers:
97
97
 
98
98
  <% providers.each do |key, name| -%>
99
- * <%= "[#{name}](##{name.gsub(/\W+/, '-').downcase})" %>
99
+ * <%= "[#{name}](##{name.split(/\W+/).compact.join('-').downcase})" %>
100
100
  <% end -%>
101
101
 
102
102
  <% providers.each do |key, name|%>
@@ -1,2 +1,8 @@
1
1
  #!/bin/sh
2
- exec ssh -o StrictHostKeychecking=no -o CheckHostIP=no -o UserKnownHostsFile=/dev/null -i %s $@
2
+ exec ssh \
3
+ -o CheckHostIP=no \
4
+ -o IdentitiesOnly=yes \
5
+ -o StrictHostKeychecking=no \
6
+ -o UserKnownHostsFile=/dev/null \
7
+ -i %s \
8
+ $@
data/lib/dpl/cli.rb CHANGED
@@ -36,7 +36,7 @@ module Dpl
36
36
  # Tainting is being used for automatically obfuscating values for secure
37
37
  # options, so we want to untaint all incoming args here.
38
38
  def untaint(args)
39
- args.map(&:dup).each(&:untaint)
39
+ args.map(&:dup).each(&:whitelist)
40
40
  end
41
41
 
42
42
  def with_cmd_opts(args, cmds)
@@ -66,7 +66,7 @@ module Dpl
66
66
  # the string to a standard length of 20 characters. N depends on the
67
67
  # length of the original string.
68
68
  def obfuscate(str, opts = {})
69
- return str if opts[:secure] || !str.tainted?
69
+ return str if opts[:secure] || !str.blacklisted?
70
70
  keep = (str.length / (4.0 + str.length / 5).round).round
71
71
  keep = 1 if keep == 0
72
72
  str[0, keep] + '*' * (20 - keep)
@@ -90,17 +90,24 @@ module Dpl
90
90
 
91
91
  def interpolate(str)
92
92
  str = str % args if args.is_a?(Array) && args.any?
93
- str.to_s.gsub(PATTERN) { normalize(lookup($1.to_sym)) }
93
+ @blacklist_result = false
94
+ str = str.to_s.gsub(PATTERN) do
95
+ @blacklist_result = true
96
+ normalize(lookup($1.to_sym))
97
+ end
98
+ @blacklist_result || (args.is_a?(Array) && args.any? { |arg| arg.is_a?(String) && arg.blacklisted? }) ? str.blacklist : str
94
99
  end
95
100
 
96
101
  def obfuscate(str)
97
102
  secrets(str).inject(str) do |str, secret|
103
+ secret = secret.dup if secret.frozen?
104
+ secret.blacklist if str.blacklisted?
98
105
  str.gsub(secret, super(secret))
99
106
  end
100
107
  end
101
108
 
102
109
  def secrets(str)
103
- return [] unless str.is_a?(String) && str.tainted?
110
+ return [] unless str.is_a?(String) && str.blacklisted?
104
111
  opts = obj.class.opts.select(&:secret?)
105
112
  secrets = opts.map { |opt| obj.opts[opt.name] }.compact
106
113
  secrets.select { |secret| str.include?(secret) }
@@ -110,7 +117,7 @@ module Dpl
110
117
  obj.is_a?(Array) ? obj.join(' ') : obj.to_s
111
118
  end
112
119
 
113
- def lookup(key)
120
+ def lookup(key)
114
121
  if vars? && !var?(key)
115
122
  UNKNOWN % key
116
123
  elsif mod = modifier(key)