dpl 2.0.0.alpha.11 → 2.0.0.alpha.12
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +10 -1
- data/CONTRIBUTING.md +1 -1
- data/README.md +44 -42
- data/Rakefile +1 -1
- data/config/transliterate.yml +733 -0
- data/lib/dpl/cli.rb +5 -0
- data/lib/dpl/helper/github.rb +20 -0
- data/lib/dpl/helper/transliterate.rb +11 -0
- data/lib/dpl/providers/bintray.rb +1 -1
- data/lib/dpl/providers/cloudformation.rb +4 -6
- data/lib/dpl/providers/cloudfoundry.rb +1 -1
- data/lib/dpl/providers/convox.rb +17 -17
- data/lib/dpl/providers/elasticbeanstalk.rb +4 -3
- data/lib/dpl/providers/firebase.rb +1 -1
- data/lib/dpl/providers/gae.rb +1 -1
- data/lib/dpl/providers/gcs.rb +1 -1
- data/lib/dpl/providers/heroku/api.rb +1 -1
- data/lib/dpl/providers/lambda.rb +1 -1
- data/lib/dpl/providers/netlify.rb +1 -1
- data/lib/dpl/providers/npm.rb +17 -4
- data/lib/dpl/providers/openshift.rb +1 -1
- data/lib/dpl/providers/opsworks.rb +1 -1
- data/lib/dpl/providers/pages/api.rb +1 -1
- data/lib/dpl/providers/pages/git.rb +8 -7
- data/lib/dpl/providers/pypi.rb +1 -1
- data/lib/dpl/providers/releases.rb +13 -6
- data/lib/dpl/providers/rubygems.rb +1 -1
- data/lib/dpl/providers/s3.rb +1 -1
- data/lib/dpl/providers/script.rb +1 -1
- data/lib/dpl/providers/snap.rb +1 -1
- data/lib/dpl/providers/surge.rb +1 -1
- data/lib/dpl/version.rb +1 -1
- metadata +6 -6
- data/Gemfile.lock +0 -378
- data/NOTES.md +0 -193
data/NOTES.md
DELETED
@@ -1,193 +0,0 @@
|
|
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
|
-
x PR sf-datapipeline
|
70
|
-
x add a DSL for moving files out of the way, and moving them back later, e.g. gcs /etc/boto.cfg
|
71
|
-
x start a CHANGELOG.md?
|
72
|
-
|
73
|
-
- EY docs do not explain where to obtain the api key
|
74
|
-
|
75
|
-
Future improvements
|
76
|
-
|
77
|
-
- https://www.freecodecamp.org/news/how-to-deploy-your-cloud-foundry-app-with-almost-zero-fear-using-travis-ci-926697fff8f6/
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
Dependencies:
|
82
|
-
|
83
|
-
```
|
84
|
-
chef_supermarket
|
85
|
-
# the cli cli is a gem, too. would be easier to test though, and maybe more robust?
|
86
|
-
# https://docs.chef.io/ctl_chef.html
|
87
|
-
chef
|
88
|
-
|
89
|
-
cloud_files
|
90
|
-
# rackspace's cli is written in go
|
91
|
-
# https://developer.rackspace.com/docs/rack-cli/configuration/#installation-and-configuration
|
92
|
-
fog-rackspace
|
93
|
-
|
94
|
-
code_deploy
|
95
|
-
aws-sdk
|
96
|
-
|
97
|
-
elastic_beanstalk
|
98
|
-
aws-sdk
|
99
|
-
zip
|
100
|
-
|
101
|
-
engine_yard
|
102
|
-
# the engineyard cli is a gem, too. would be easier to test though, and maybe more robust?
|
103
|
-
# https://support.cloud.engineyard.com/hc/en-us/articles/205406968-Deploy-from-the-CLI-Engine-Yard-CLI-User-Guide-
|
104
|
-
engineyard-cloud-client
|
105
|
-
|
106
|
-
gcs
|
107
|
-
# https://cloud.google.com/storage/docs/gsutil
|
108
|
-
# the GCS cli is a python thing which can be installed via curl/bash:
|
109
|
-
# curl https://sdk.cloud.google.com | bash
|
110
|
-
gstore
|
111
|
-
mime-types
|
112
|
-
|
113
|
-
heroku
|
114
|
-
faraday
|
115
|
-
|
116
|
-
open_shift
|
117
|
-
# red hat seems to have a cli, but the instructions are quite opaque, and want
|
118
|
-
# to log in to their portal
|
119
|
-
# https://docs.openshift.com/container-platform/3.9/cli_reference/get_started_cli.html#installing-the-cli
|
120
|
-
rhc
|
121
|
-
|
122
|
-
packagecloud
|
123
|
-
# has a cli that is a rubygem (with a different name though, has an underscore)
|
124
|
-
# https://packagecloud.io/l/cli
|
125
|
-
packagecloud
|
126
|
-
|
127
|
-
pages
|
128
|
-
octokit
|
129
|
-
|
130
|
-
puppet_forge
|
131
|
-
# not sure if there's actually no cli?
|
132
|
-
puppet
|
133
|
-
puppet_blacksmith
|
134
|
-
|
135
|
-
rubygems
|
136
|
-
gems
|
137
|
-
|
138
|
-
s3
|
139
|
-
aws-sdk
|
140
|
-
mime-types
|
141
|
-
|
142
|
-
testfairy
|
143
|
-
# they have a minimal cli in bash, not sure that's worth it though, also
|
144
|
-
# not sure about the quality of this thing
|
145
|
-
# https://github.com/testfairy/command-line-uploader
|
146
|
-
multipart-post
|
147
|
-
```
|
148
|
-
|
149
|
-
```
|
150
|
-
| provider | tooling | auth | ssh-keygen | git-ssh |
|
151
|
-
| ----------------- | -------------------------------------------------- | -------------- | ---------- | ------- |
|
152
|
-
| Anynines | cf cli (manual download) | user/pass | no | no |
|
153
|
-
| Atlas | atlas-upload cli (go get install) | token (env) | no | no |
|
154
|
-
| Azure Web Apps | Git only | user/pass | no | no |
|
155
|
-
| Bitballoon | bitballoon cli (installed how??) | token | no | no |
|
156
|
-
| Bluemix CF | cf cli (manual download) | user/pass | no | no |
|
157
|
-
| Boxfuse | boxfuse cli (manual download) | user/pass | no? | no? |
|
158
|
-
| Cargo | cargo cli (preinstalled?) | token | no | no |
|
159
|
-
| Catalyze | Git only | ? | no | no |
|
160
|
-
| Chef Supermarket | gem chef | api key | no | no |
|
161
|
-
| Cloud66 | Net::HTTP | ? | no | no |
|
162
|
-
| Cloud Files | gem fog (rackspace) | user/key | no | no |
|
163
|
-
| Cloud Foundry | cf cli (manual download) | user/pass | no | no |
|
164
|
-
| Code Deploy | gem aws-sdk (v2) | key/secret | no | no |
|
165
|
-
| Deis | deis cli (manual download) | user/pass | yes | yes? |
|
166
|
-
| Elastic Beanstalk | gem aws-sdk (v2) | key/secret | no | no |
|
167
|
-
| EngineYard | gem engineyard-cloud-client | api key | no | no |
|
168
|
-
| Firebase | NPM firebase-tools | token | no | no |
|
169
|
-
| GAE | google-cloud-sdk (manual download) | keyfile | no | no |
|
170
|
-
| GCS | gem gstore (archived) | key/secret | no | no |
|
171
|
-
| Hackage | cabal (apt-get install) | user/pass | no | no |
|
172
|
-
| Hephy | `deis` cli (manual download) | user/pass | yes | yes? |
|
173
|
-
| Heroku API | gem faraday | api key | no | no |
|
174
|
-
| Heroku Git | gem faraday and Git | both?? | no | no |
|
175
|
-
| Lambda | gem aws-sdk (v2) | key/secret | no | no |
|
176
|
-
| Launchpad | Net:HTTP | token/secret | no | no |
|
177
|
-
| NPM | npm (preinstall) | api key | no | no |
|
178
|
-
| Open Shift | gem rhc (archived) and Git | user/pass | yes | yes? |
|
179
|
-
| Ops Works | gem aws-sdk (v2) | key/secret | no | no |
|
180
|
-
| Packagecloud | gem packagecloud | user/token | no | no |
|
181
|
-
| Pages | gem octokit | token | no | no |
|
182
|
-
| Puppet Forge | gems puppet, puppet_blacksmith | user/pass | no | no |
|
183
|
-
| PyPI | pip/twine (manual download) | user/pass | no | no |
|
184
|
-
| Releases | gem octokit | token | no | no |
|
185
|
-
| Rubygems | gem gems | api key | no | no |
|
186
|
-
| S3 | gem aws-sdk (v2) | key/secret | no | no |
|
187
|
-
| Scalingo | scalingo (manual download) | u/p or api key | yes | no? |
|
188
|
-
| Script | - | - | no | no |
|
189
|
-
| Snap | snap (apt-get) | token | no | no |
|
190
|
-
| Surge | surge (npm install) | login/token | no | no |
|
191
|
-
| Testfairy | gem multipart-post | api key | no | no |
|
192
|
-
| Transifex | tx (pip install) | user/pass | no | no |
|
193
|
-
```
|