tugboat 2.2.1 → 2.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +17 -206
- data/features/cassettes/config/Single_SSH_key_as_number_in_config.yml +68 -0
- data/features/tugboat/config_number_key.feature +28 -0
- data/lib/tugboat/middleware/ask_for_credentials.rb +1 -1
- data/lib/tugboat/middleware/check_droplet_active.rb +5 -3
- data/lib/tugboat/middleware/create_droplet.rb +1 -1
- data/lib/tugboat/version.rb +1 -1
- data/spec/cli/authorize_cli_spec.rb +2 -2
- data/spec/cli/ssh_cli_spec.rb +31 -1
- metadata +6 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6428d7db68bbe83c97c4ea846c48542fd3f24e55
|
|
4
|
+
data.tar.gz: 8d4f05eb934fbd78f4c1ed9fa855199997da618b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d4b7cca6b0f09a5bdb596a575637dc608cf900d68316dd99fc090f4eafc6f0d7f978858d6e4ba516b8dc5df09de7669f30ddf0cdeb9d407213a2470563d646bc
|
|
7
|
+
data.tar.gz: a62193e3c38db585fca1f09756df0ddcbb90e070c78f40d85fff9311c91393f92fbfd84604c41956ab1f0f1f3b83e2de32c236d1c2bc60adc3e03cfeb5a95c78
|
data/CHANGELOG.md
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
-
## [v2.2.
|
|
3
|
+
## [v2.2.1](https://github.com/pearkes/tugboat/tree/v2.2.1) (2016-02-16)
|
|
4
|
+
[Full Changelog](https://github.com/pearkes/tugboat/compare/v2.2.0...v2.2.1)
|
|
5
|
+
|
|
6
|
+
**Merged pull requests:**
|
|
7
|
+
|
|
8
|
+
- Update reading config from current directory steps [\#238](https://github.com/pearkes/tugboat/pull/238) ([petems](https://github.com/petems))
|
|
9
|
+
- Adds setup for Aruba tests to use VCR [\#237](https://github.com/pearkes/tugboat/pull/237) ([petems](https://github.com/petems))
|
|
10
|
+
- Add example .tugboat file [\#236](https://github.com/pearkes/tugboat/pull/236) ([petems](https://github.com/petems))
|
|
11
|
+
- Fix to allow setting an array of keys in config [\#235](https://github.com/pearkes/tugboat/pull/235) ([petems](https://github.com/petems))
|
|
4
12
|
|
|
13
|
+
## [v2.2.0](https://github.com/pearkes/tugboat/tree/v2.2.0) (2016-01-30)
|
|
5
14
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v2.1.0...v2.2.0)
|
|
6
15
|
|
|
7
16
|
**Merged pull requests:**
|
|
8
17
|
|
|
9
18
|
- Configuration support for IPv6 [\#233](https://github.com/pearkes/tugboat/pull/233) ([petems](https://github.com/petems))
|
|
10
|
-
|
|
11
19
|
- Add Regions to info\_image [\#232](https://github.com/pearkes/tugboat/pull/232) ([bmamlin](https://github.com/bmamlin))
|
|
12
|
-
|
|
13
20
|
- Install dependencies locally when developing [\#231](https://github.com/pearkes/tugboat/pull/231) ([else](https://github.com/else))
|
|
14
|
-
|
|
15
21
|
- Adds simplecov-console for terminal coverage info [\#229](https://github.com/pearkes/tugboat/pull/229) ([petems](https://github.com/petems))
|
|
16
|
-
|
|
17
22
|
- Updated simplecov's Multiple Formatters definition [\#228](https://github.com/pearkes/tugboat/pull/228) ([jasnow](https://github.com/jasnow))
|
|
18
|
-
|
|
19
23
|
- Add Bundler.require\(:development\) for default rake tasks [\#227](https://github.com/pearkes/tugboat/pull/227) ([andrehjr](https://github.com/andrehjr))
|
|
20
|
-
|
|
21
24
|
- Add debug logging [\#226](https://github.com/pearkes/tugboat/pull/226) ([petems](https://github.com/petems))
|
|
22
|
-
|
|
23
25
|
- Refactor the response.success? into helper [\#225](https://github.com/pearkes/tugboat/pull/225) ([petems](https://github.com/petems))
|
|
24
|
-
|
|
25
26
|
- Improves wait spec to actually perform wait [\#224](https://github.com/pearkes/tugboat/pull/224) ([petems](https://github.com/petems))
|
|
26
27
|
|
|
27
28
|
## [v2.1.0](https://github.com/pearkes/tugboat/tree/v2.1.0) (2015-12-01)
|
|
28
|
-
|
|
29
29
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v2.0.1...v2.1.0)
|
|
30
30
|
|
|
31
31
|
**Implemented enhancements:**
|
|
@@ -35,13 +35,9 @@
|
|
|
35
35
|
**Fixed bugs:**
|
|
36
36
|
|
|
37
37
|
- Show private ip alongside public ip in droplets list [\#220](https://github.com/pearkes/tugboat/issues/220)
|
|
38
|
-
|
|
39
38
|
- bug in connect [\#211](https://github.com/pearkes/tugboat/issues/211)
|
|
40
|
-
|
|
41
39
|
- Wrong color for successful snapshot creation? [\#209](https://github.com/pearkes/tugboat/issues/209)
|
|
42
|
-
|
|
43
40
|
- Seems to be a limit to the number of retrieved droplets [\#205](https://github.com/pearkes/tugboat/issues/205)
|
|
44
|
-
|
|
45
41
|
- tugboat ssh not using ssh-agent? [\#160](https://github.com/pearkes/tugboat/issues/160)
|
|
46
42
|
|
|
47
43
|
**Closed issues:**
|
|
@@ -51,123 +47,79 @@
|
|
|
51
47
|
**Merged pull requests:**
|
|
52
48
|
|
|
53
49
|
- Add specs to private ip in droplet list fix from \#222 [\#223](https://github.com/pearkes/tugboat/pull/223) ([petems](https://github.com/petems))
|
|
54
|
-
|
|
55
50
|
- Lock simplecov version [\#222](https://github.com/pearkes/tugboat/pull/222) ([petems](https://github.com/petems))
|
|
56
|
-
|
|
57
51
|
- Fix showing of private ips when running 'tugboat droplets' [\#221](https://github.com/pearkes/tugboat/pull/221) ([mtbottle](https://github.com/mtbottle))
|
|
58
|
-
|
|
59
52
|
- Check credentials for all find droplets [\#219](https://github.com/pearkes/tugboat/pull/219) ([petems](https://github.com/petems))
|
|
60
|
-
|
|
61
53
|
- Fix v2 API changes [\#218](https://github.com/pearkes/tugboat/pull/218) ([pchaussalet](https://github.com/pchaussalet))
|
|
62
|
-
|
|
63
54
|
- Fixing error checking with new API 2.0 [\#217](https://github.com/pearkes/tugboat/pull/217) ([petems](https://github.com/petems))
|
|
64
|
-
|
|
65
55
|
- Changes logic when no ssh\_key\_path has been set [\#216](https://github.com/pearkes/tugboat/pull/216) ([petems](https://github.com/petems))
|
|
66
|
-
|
|
67
56
|
- Rename features folder [\#215](https://github.com/pearkes/tugboat/pull/215) ([petems](https://github.com/petems))
|
|
68
|
-
|
|
69
57
|
- Add SSH -w command [\#214](https://github.com/pearkes/tugboat/pull/214) ([petems](https://github.com/petems))
|
|
70
|
-
|
|
71
58
|
- Changes colour of successful snapshot to green [\#213](https://github.com/pearkes/tugboat/pull/213) ([petems](https://github.com/petems))
|
|
72
|
-
|
|
73
59
|
- Pagination regression fix for API 2.0 [\#212](https://github.com/pearkes/tugboat/pull/212) ([petems](https://github.com/petems))
|
|
74
|
-
|
|
75
60
|
- Fixes tests for each help text [\#208](https://github.com/pearkes/tugboat/pull/208) ([petems](https://github.com/petems))
|
|
76
61
|
|
|
77
|
-
- Enable pagination for Droplets list [\#210](https://github.com/pearkes/tugboat/pull/210) ([lachesis](https://github.com/lachesis))
|
|
78
|
-
|
|
79
62
|
## [v2.0.1](https://github.com/pearkes/tugboat/tree/v2.0.1) (2015-11-10)
|
|
80
|
-
|
|
81
63
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v2.0.0...v2.0.1)
|
|
82
64
|
|
|
83
65
|
**Implemented enhancements:**
|
|
84
66
|
|
|
85
67
|
- Setting client\_id and api\_key as environment variables in shell [\#176](https://github.com/pearkes/tugboat/issues/176)
|
|
86
|
-
|
|
87
68
|
- API v2.0 Support [\#122](https://github.com/pearkes/tugboat/issues/122)
|
|
88
69
|
|
|
89
70
|
**Fixed bugs:**
|
|
90
71
|
|
|
91
72
|
- Slugs don't work [\#204](https://github.com/pearkes/tugboat/issues/204)
|
|
92
|
-
|
|
93
73
|
- New Droplets dont have IP address immediatly, so the info command fails [\#198](https://github.com/pearkes/tugboat/issues/198)
|
|
94
74
|
|
|
95
75
|
**Closed issues:**
|
|
96
76
|
|
|
97
77
|
- API 2.0 Release Candidate Guinea Pigs and Feedback [\#182](https://github.com/pearkes/tugboat/issues/182)
|
|
98
|
-
|
|
99
78
|
- API 2.0 Switchover [\#161](https://github.com/pearkes/tugboat/issues/161)
|
|
100
|
-
|
|
101
79
|
- API v2 Support [\#102](https://github.com/pearkes/tugboat/issues/102)
|
|
102
80
|
|
|
103
81
|
**Merged pull requests:**
|
|
104
82
|
|
|
105
83
|
- Fixes format for creating droplets [\#207](https://github.com/pearkes/tugboat/pull/207) ([petems](https://github.com/petems))
|
|
106
|
-
|
|
107
84
|
- Fixes issue with new machines having no network [\#203](https://github.com/pearkes/tugboat/pull/203) ([petems](https://github.com/petems))
|
|
108
85
|
|
|
109
86
|
## [v2.0.0](https://github.com/pearkes/tugboat/tree/v2.0.0) (2015-11-03)
|
|
110
|
-
|
|
111
87
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v2.0.0.RC1...v2.0.0)
|
|
112
88
|
|
|
113
89
|
**Implemented enhancements:**
|
|
114
90
|
|
|
115
91
|
- If a command that requires arguments is entered without arguments, print the help for that. [\#191](https://github.com/pearkes/tugboat/issues/191)
|
|
116
|
-
|
|
117
92
|
- Support traditional `-y` for automatically confirming a destructive action. [\#190](https://github.com/pearkes/tugboat/issues/190)
|
|
118
|
-
|
|
119
93
|
- Allow specification of user data in create command [\#162](https://github.com/pearkes/tugboat/issues/162)
|
|
120
|
-
|
|
121
94
|
- Multiple default SSH keys \(for new droplets\)? [\#142](https://github.com/pearkes/tugboat/issues/142)
|
|
122
|
-
|
|
123
95
|
- tugboat info should show IPv6 address [\#119](https://github.com/pearkes/tugboat/issues/119)
|
|
124
|
-
|
|
125
96
|
- Allow configuring IPv6 in create command [\#118](https://github.com/pearkes/tugboat/issues/118)
|
|
126
|
-
|
|
127
97
|
- Allow resize -s to take a string size rather than ID [\#101](https://github.com/pearkes/tugboat/issues/101)
|
|
128
|
-
|
|
129
98
|
- Machine Readable Flag [\#6](https://github.com/pearkes/tugboat/issues/6)
|
|
99
|
+
- Gives more specific output for ssh [\#199](https://github.com/pearkes/tugboat/pull/199) ([petems](https://github.com/petems))
|
|
100
|
+
- Better help message [\#195](https://github.com/pearkes/tugboat/pull/195) ([petems](https://github.com/petems))
|
|
101
|
+
- Add -y flag to skip confirmation [\#194](https://github.com/pearkes/tugboat/pull/194) ([petems](https://github.com/petems))
|
|
102
|
+
- Add Min Disk Size to info\_image [\#193](https://github.com/pearkes/tugboat/pull/193) ([bmamlin](https://github.com/bmamlin))
|
|
103
|
+
- Add "include\_urls" option to "droplets" command [\#185](https://github.com/pearkes/tugboat/pull/185) ([FreedomBen](https://github.com/FreedomBen))
|
|
104
|
+
- Adds ability to use environment variable for key [\#184](https://github.com/pearkes/tugboat/pull/184) ([petems](https://github.com/petems))
|
|
130
105
|
|
|
131
106
|
**Fixed bugs:**
|
|
132
107
|
|
|
133
108
|
- Ipv6 changes broke ssh [\#192](https://github.com/pearkes/tugboat/issues/192)
|
|
134
|
-
|
|
135
109
|
- tugboat doesn't work with team accounts, because they use api v2 [\#168](https://github.com/pearkes/tugboat/issues/168)
|
|
110
|
+
- Hacky way to get the ips for find droplet [\#196](https://github.com/pearkes/tugboat/pull/196) ([petems](https://github.com/petems))
|
|
136
111
|
|
|
137
112
|
**Merged pull requests:**
|
|
138
113
|
|
|
139
114
|
- Fixes multiple keys for droplet creation [\#201](https://github.com/pearkes/tugboat/pull/201) ([petems](https://github.com/petems))
|
|
140
|
-
|
|
141
|
-
- Gives more specific output for ssh [\#199](https://github.com/pearkes/tugboat/pull/199) ([petems](https://github.com/petems))
|
|
142
|
-
|
|
143
115
|
- Allow setting user data for droplet creation [\#197](https://github.com/pearkes/tugboat/pull/197) ([petems](https://github.com/petems))
|
|
144
|
-
|
|
145
|
-
- Hacky way to get the ips for find droplet [\#196](https://github.com/pearkes/tugboat/pull/196) ([petems](https://github.com/petems))
|
|
146
|
-
|
|
147
|
-
- Better help message [\#195](https://github.com/pearkes/tugboat/pull/195) ([petems](https://github.com/petems))
|
|
148
|
-
|
|
149
|
-
- Add -y flag to skip confirmation [\#194](https://github.com/pearkes/tugboat/pull/194) ([petems](https://github.com/petems))
|
|
150
|
-
|
|
151
|
-
- Add Min Disk Size to info\_image [\#193](https://github.com/pearkes/tugboat/pull/193) ([bmamlin](https://github.com/bmamlin))
|
|
152
|
-
|
|
153
116
|
- Adds ability to enable IP6 on new droplets [\#189](https://github.com/pearkes/tugboat/pull/189) ([petems](https://github.com/petems))
|
|
154
|
-
|
|
155
117
|
- Readme fixes API2 [\#188](https://github.com/pearkes/tugboat/pull/188) ([petems](https://github.com/petems))
|
|
156
|
-
|
|
157
118
|
- Info droplet API2 changes [\#187](https://github.com/pearkes/tugboat/pull/187) ([petems](https://github.com/petems))
|
|
158
|
-
|
|
159
119
|
- Fix references to id to slugs [\#186](https://github.com/pearkes/tugboat/pull/186) ([petems](https://github.com/petems))
|
|
160
|
-
|
|
161
|
-
- Add "include\_urls" option to "droplets" command [\#185](https://github.com/pearkes/tugboat/pull/185) ([FreedomBen](https://github.com/FreedomBen))
|
|
162
|
-
|
|
163
|
-
- Adds ability to use environment variable for key [\#184](https://github.com/pearkes/tugboat/pull/184) ([petems](https://github.com/petems))
|
|
164
|
-
|
|
165
120
|
- Proper 2.0.0 release [\#183](https://github.com/pearkes/tugboat/pull/183) ([petems](https://github.com/petems))
|
|
166
121
|
|
|
167
|
-
- Add UI System [\#200](https://github.com/pearkes/tugboat/pull/200) ([petems](https://github.com/petems))
|
|
168
|
-
|
|
169
122
|
## [v2.0.0.RC1](https://github.com/pearkes/tugboat/tree/v2.0.0.RC1) (2015-10-20)
|
|
170
|
-
|
|
171
123
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v1.3.1...v2.0.0.RC1)
|
|
172
124
|
|
|
173
125
|
**Closed issues:**
|
|
@@ -177,15 +129,11 @@
|
|
|
177
129
|
**Merged pull requests:**
|
|
178
130
|
|
|
179
131
|
- Update gemspec [\#181](https://github.com/pearkes/tugboat/pull/181) ([petems](https://github.com/petems))
|
|
180
|
-
|
|
181
132
|
- API 2.0 Release Candidate PR [\#180](https://github.com/pearkes/tugboat/pull/180) ([petems](https://github.com/petems))
|
|
182
|
-
|
|
183
133
|
- Add CLI config spec and slight formatting changes [\#179](https://github.com/pearkes/tugboat/pull/179) ([petems](https://github.com/petems))
|
|
184
|
-
|
|
185
134
|
- Fix interactive prompt during authorize [\#175](https://github.com/pearkes/tugboat/pull/175) ([conorsch](https://github.com/conorsch))
|
|
186
135
|
|
|
187
136
|
## [v1.3.1](https://github.com/pearkes/tugboat/tree/v1.3.1) (2015-08-02)
|
|
188
|
-
|
|
189
137
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v1.3.0...v1.3.1)
|
|
190
138
|
|
|
191
139
|
**Closed issues:**
|
|
@@ -197,7 +145,6 @@
|
|
|
197
145
|
- Removes wrong help messages for `images`. [\#173](https://github.com/pearkes/tugboat/pull/173) ([haihappen](https://github.com/haihappen))
|
|
198
146
|
|
|
199
147
|
## [v1.3.0](https://github.com/pearkes/tugboat/tree/v1.3.0) (2015-07-19)
|
|
200
|
-
|
|
201
148
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v1.2.0...v1.3.0)
|
|
202
149
|
|
|
203
150
|
**Merged pull requests:**
|
|
@@ -205,7 +152,6 @@
|
|
|
205
152
|
- Implement single attribute fetcher and porcelain mode for droplet info command [\#170](https://github.com/pearkes/tugboat/pull/170) ([ethanal](https://github.com/ethanal))
|
|
206
153
|
|
|
207
154
|
## [v1.2.0](https://github.com/pearkes/tugboat/tree/v1.2.0) (2015-07-18)
|
|
208
|
-
|
|
209
155
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v1.1.0...v1.2.0)
|
|
210
156
|
|
|
211
157
|
**Fixed bugs:**
|
|
@@ -221,13 +167,11 @@
|
|
|
221
167
|
- Adds flavour text for listing global images [\#167](https://github.com/pearkes/tugboat/pull/167) ([petems](https://github.com/petems))
|
|
222
168
|
|
|
223
169
|
## [v1.1.0](https://github.com/pearkes/tugboat/tree/v1.1.0) (2015-07-18)
|
|
224
|
-
|
|
225
170
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v1.0.0...v1.1.0)
|
|
226
171
|
|
|
227
172
|
**Closed issues:**
|
|
228
173
|
|
|
229
174
|
- Unable to bundle to run tugboat from git repo version for testing [\#171](https://github.com/pearkes/tugboat/issues/171)
|
|
230
|
-
|
|
231
175
|
- 1.0.0 Release [\#125](https://github.com/pearkes/tugboat/issues/125)
|
|
232
176
|
|
|
233
177
|
**Merged pull requests:**
|
|
@@ -235,169 +179,96 @@
|
|
|
235
179
|
- Update ssh to private ip [\#172](https://github.com/pearkes/tugboat/pull/172) ([petems](https://github.com/petems))
|
|
236
180
|
|
|
237
181
|
## [v1.0.0](https://github.com/pearkes/tugboat/tree/v1.0.0) (2015-05-26)
|
|
238
|
-
|
|
239
182
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.2.0...v1.0.0)
|
|
240
183
|
|
|
241
184
|
**Implemented enhancements:**
|
|
242
185
|
|
|
243
186
|
- regions sorting [\#164](https://github.com/pearkes/tugboat/issues/164)
|
|
244
|
-
|
|
245
187
|
- Add support to Destroy Image [\#72](https://github.com/pearkes/tugboat/issues/72)
|
|
246
188
|
|
|
247
189
|
**Closed issues:**
|
|
248
190
|
|
|
249
191
|
- Add Documentation for \#106 [\#153](https://github.com/pearkes/tugboat/issues/153)
|
|
250
|
-
|
|
251
192
|
- Not creating droplet with default ssh key [\#149](https://github.com/pearkes/tugboat/issues/149)
|
|
252
|
-
|
|
253
193
|
- Default image change \(and region load\) [\#148](https://github.com/pearkes/tugboat/issues/148)
|
|
254
|
-
|
|
255
194
|
- Error handling for API error. [\#138](https://github.com/pearkes/tugboat/issues/138)
|
|
256
|
-
|
|
257
195
|
- clarification about add-key [\#136](https://github.com/pearkes/tugboat/issues/136)
|
|
258
|
-
|
|
259
196
|
- --default option for add-key [\#135](https://github.com/pearkes/tugboat/issues/135)
|
|
260
|
-
|
|
261
197
|
- add-key ignores default set in ~/.tugboat [\#134](https://github.com/pearkes/tugboat/issues/134)
|
|
262
|
-
|
|
263
198
|
- root would be a better default username [\#131](https://github.com/pearkes/tugboat/issues/131)
|
|
264
|
-
|
|
265
199
|
- ~ and $HOME fail for key path [\#130](https://github.com/pearkes/tugboat/issues/130)
|
|
266
|
-
|
|
267
200
|
- tugboat images \[OPTIONS\] [\#127](https://github.com/pearkes/tugboat/issues/127)
|
|
268
|
-
|
|
269
201
|
- tugboat create --help actually creates "--help" droplet [\#126](https://github.com/pearkes/tugboat/issues/126)
|
|
270
|
-
|
|
271
202
|
- Action to list all images [\#117](https://github.com/pearkes/tugboat/issues/117)
|
|
272
|
-
|
|
273
203
|
- New API endpoint tests failing on Travis, work fine locally [\#109](https://github.com/pearkes/tugboat/issues/109)
|
|
274
|
-
|
|
275
204
|
- Multiple DO accounts [\#106](https://github.com/pearkes/tugboat/issues/106)
|
|
276
|
-
|
|
277
205
|
- Tilde is not interpreted as the home directory [\#105](https://github.com/pearkes/tugboat/issues/105)
|
|
278
|
-
|
|
279
206
|
- Tugboat Info Should Show Private IP If Exists [\#104](https://github.com/pearkes/tugboat/issues/104)
|
|
280
|
-
|
|
281
207
|
- Default image Id no longer exists [\#98](https://github.com/pearkes/tugboat/issues/98)
|
|
282
|
-
|
|
283
208
|
- list available images [\#97](https://github.com/pearkes/tugboat/issues/97)
|
|
284
|
-
|
|
285
209
|
- waiting for a state is inefficient [\#96](https://github.com/pearkes/tugboat/issues/96)
|
|
286
|
-
|
|
287
210
|
- Unable to run tugboat after installing [\#92](https://github.com/pearkes/tugboat/issues/92)
|
|
288
|
-
|
|
289
211
|
- Rebuild a droplet with a new image [\#66](https://github.com/pearkes/tugboat/issues/66)
|
|
290
212
|
|
|
291
213
|
**Merged pull requests:**
|
|
292
214
|
|
|
293
215
|
- PR \#165 with tests [\#166](https://github.com/pearkes/tugboat/pull/166) ([petems](https://github.com/petems))
|
|
294
|
-
|
|
295
216
|
- Add docs for \#153 [\#159](https://github.com/pearkes/tugboat/pull/159) ([petems](https://github.com/petems))
|
|
296
|
-
|
|
297
217
|
- Update prompt text [\#158](https://github.com/pearkes/tugboat/pull/158) ([petems](https://github.com/petems))
|
|
298
|
-
|
|
299
218
|
- Update docs to clarify add-key command [\#157](https://github.com/pearkes/tugboat/pull/157) ([petems](https://github.com/petems))
|
|
300
|
-
|
|
301
219
|
- Run cucumber as part of the rake default task [\#156](https://github.com/pearkes/tugboat/pull/156) ([petems](https://github.com/petems))
|
|
302
|
-
|
|
303
220
|
- Change to expand path from ssh\_key\_path [\#155](https://github.com/pearkes/tugboat/pull/155) ([petems](https://github.com/petems))
|
|
304
|
-
|
|
305
221
|
- Change default user to 'root' [\#154](https://github.com/pearkes/tugboat/pull/154) ([petems](https://github.com/petems))
|
|
306
|
-
|
|
307
222
|
- Fixes incorrect link [\#152](https://github.com/pearkes/tugboat/pull/152) ([petems](https://github.com/petems))
|
|
308
|
-
|
|
309
223
|
- Add config cli method [\#151](https://github.com/pearkes/tugboat/pull/151) ([petems](https://github.com/petems))
|
|
310
|
-
|
|
311
224
|
- Change to Docker Travis [\#150](https://github.com/pearkes/tugboat/pull/150) ([petems](https://github.com/petems))
|
|
312
|
-
|
|
313
225
|
- Change the default image and region [\#147](https://github.com/pearkes/tugboat/pull/147) ([JamshedVesuna](https://github.com/JamshedVesuna))
|
|
314
|
-
|
|
315
226
|
- Resolve the SSH key path later. [\#146](https://github.com/pearkes/tugboat/pull/146) ([Ferada](https://github.com/Ferada))
|
|
316
|
-
|
|
317
227
|
- Add configuration option for using the public IP. [\#145](https://github.com/pearkes/tugboat/pull/145) ([Ferada](https://github.com/Ferada))
|
|
318
|
-
|
|
319
228
|
- Create help [\#143](https://github.com/pearkes/tugboat/pull/143) ([wadtech](https://github.com/wadtech))
|
|
320
|
-
|
|
321
229
|
- Fix typo [\#141](https://github.com/pearkes/tugboat/pull/141) ([seanhussey](https://github.com/seanhussey))
|
|
322
|
-
|
|
323
230
|
- Fix API key redacting for DEBUG=2 [\#140](https://github.com/pearkes/tugboat/pull/140) ([petems](https://github.com/petems))
|
|
324
|
-
|
|
325
231
|
- Handle HTML Error responses [\#139](https://github.com/pearkes/tugboat/pull/139) ([petems](https://github.com/petems))
|
|
326
|
-
|
|
327
232
|
- Changes to URL [\#137](https://github.com/pearkes/tugboat/pull/137) ([petems](https://github.com/petems))
|
|
328
|
-
|
|
329
233
|
- fix API URL in cli.rb [\#129](https://github.com/pearkes/tugboat/pull/129) ([brandondrew](https://github.com/brandondrew))
|
|
330
|
-
|
|
331
234
|
- Adds slugs to regions list. [\#121](https://github.com/pearkes/tugboat/pull/121) ([blakelapierre](https://github.com/blakelapierre))
|
|
332
|
-
|
|
333
235
|
- Add spec around confirming action with user [\#116](https://github.com/pearkes/tugboat/pull/116) ([petems](https://github.com/petems))
|
|
334
|
-
|
|
335
236
|
- Transpec fixes [\#114](https://github.com/pearkes/tugboat/pull/114) ([petems](https://github.com/petems))
|
|
336
|
-
|
|
337
237
|
- Trying to get that Coveralls % higher... [\#113](https://github.com/pearkes/tugboat/pull/113) ([petems](https://github.com/petems))
|
|
338
|
-
|
|
339
238
|
- Specs for fuzzy matching of images [\#112](https://github.com/pearkes/tugboat/pull/112) ([petems](https://github.com/petems))
|
|
340
|
-
|
|
341
239
|
- Fix error in 'authorize\_cli\_spec' [\#111](https://github.com/pearkes/tugboat/pull/111) ([petems](https://github.com/petems))
|
|
342
|
-
|
|
343
240
|
- Enable simplecov HTML formatter and Coveralls [\#110](https://github.com/pearkes/tugboat/pull/110) ([petems](https://github.com/petems))
|
|
344
|
-
|
|
345
241
|
- Change link for api [\#108](https://github.com/pearkes/tugboat/pull/108) ([petems](https://github.com/petems))
|
|
346
|
-
|
|
347
242
|
- Display + SSH to private IP [\#107](https://github.com/pearkes/tugboat/pull/107) ([WietseWind](https://github.com/WietseWind))
|
|
348
|
-
|
|
349
243
|
- Update the link to get v1 API keys in the README. [\#103](https://github.com/pearkes/tugboat/pull/103) ([wearhere](https://github.com/wearhere))
|
|
350
|
-
|
|
351
244
|
- Change the default image [\#100](https://github.com/pearkes/tugboat/pull/100) ([blom](https://github.com/blom))
|
|
352
|
-
|
|
353
245
|
- Add `\[OPTIONS\]` to images description [\#99](https://github.com/pearkes/tugboat/pull/99) ([blom](https://github.com/blom))
|
|
354
|
-
|
|
355
246
|
- Add MRI 1.9.2 and 2.1.0 to .travis.yml [\#94](https://github.com/pearkes/tugboat/pull/94) ([blom](https://github.com/blom))
|
|
356
|
-
|
|
357
247
|
- No more 1.8.7 [\#93](https://github.com/pearkes/tugboat/pull/93) ([blom](https://github.com/blom))
|
|
358
248
|
|
|
359
|
-
- added sort\_by when listing regions [\#165](https://github.com/pearkes/tugboat/pull/165) ([elliotthilaire](https://github.com/elliotthilaire))
|
|
360
|
-
|
|
361
|
-
- region one unavailable on some clients, use NYC 2 [\#144](https://github.com/pearkes/tugboat/pull/144) ([Thetoxicarcade](https://github.com/Thetoxicarcade))
|
|
362
|
-
|
|
363
|
-
- Load config file from current directory, if not exit load from defaults [\#123](https://github.com/pearkes/tugboat/pull/123) ([tggo](https://github.com/tggo))
|
|
364
|
-
|
|
365
|
-
- improves droplets list/info prints [\#115](https://github.com/pearkes/tugboat/pull/115) ([petems](https://github.com/petems))
|
|
366
|
-
|
|
367
|
-
- Improves droplets list/info prints [\#77](https://github.com/pearkes/tugboat/pull/77) ([nofxx](https://github.com/nofxx))
|
|
368
|
-
|
|
369
249
|
## [v0.2.0](https://github.com/pearkes/tugboat/tree/v0.2.0) (2014-02-15)
|
|
370
|
-
|
|
371
250
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.0.9...v0.2.0)
|
|
372
251
|
|
|
373
252
|
**Implemented enhancements:**
|
|
374
253
|
|
|
375
254
|
- Add a --quiet option [\#86](https://github.com/pearkes/tugboat/issues/86)
|
|
376
|
-
|
|
377
255
|
- Add to homebrew? [\#83](https://github.com/pearkes/tugboat/issues/83)
|
|
378
256
|
|
|
379
257
|
**Closed issues:**
|
|
380
258
|
|
|
381
259
|
- Droplet create with backups enabled. [\#89](https://github.com/pearkes/tugboat/issues/89)
|
|
382
|
-
|
|
383
260
|
- certificate verify failed [\#84](https://github.com/pearkes/tugboat/issues/84)
|
|
384
|
-
|
|
385
261
|
- Destroy data by default... [\#81](https://github.com/pearkes/tugboat/issues/81)
|
|
386
262
|
|
|
387
263
|
**Merged pull requests:**
|
|
388
264
|
|
|
389
265
|
- destroy and info command [\#91](https://github.com/pearkes/tugboat/pull/91) ([PierreFrisch](https://github.com/PierreFrisch))
|
|
390
|
-
|
|
391
266
|
- Add rebuild command [\#90](https://github.com/pearkes/tugboat/pull/90) ([PierreFrisch](https://github.com/PierreFrisch))
|
|
392
|
-
|
|
393
267
|
- Fuzzy name searching is now case insensitive [\#88](https://github.com/pearkes/tugboat/pull/88) ([Vel0x](https://github.com/Vel0x))
|
|
394
|
-
|
|
395
268
|
- global: add a -q/--quiet flag [\#87](https://github.com/pearkes/tugboat/pull/87) ([pearkes](https://github.com/pearkes))
|
|
396
|
-
|
|
397
269
|
- Add backups\_enabled option on droplet creation \(-b true\) [\#82](https://github.com/pearkes/tugboat/pull/82) ([4n3w](https://github.com/4n3w))
|
|
398
270
|
|
|
399
271
|
## [v0.0.9](https://github.com/pearkes/tugboat/tree/v0.0.9) (2013-12-24)
|
|
400
|
-
|
|
401
272
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.0.8...v0.0.9)
|
|
402
273
|
|
|
403
274
|
**Fixed bugs:**
|
|
@@ -407,43 +278,28 @@
|
|
|
407
278
|
**Closed issues:**
|
|
408
279
|
|
|
409
280
|
- Unable to authorize tugboat [\#79](https://github.com/pearkes/tugboat/issues/79)
|
|
410
|
-
|
|
411
281
|
- Problem with SSL certificate [\#70](https://github.com/pearkes/tugboat/issues/70)
|
|
412
|
-
|
|
413
282
|
- Option to manage SSH keys [\#69](https://github.com/pearkes/tugboat/issues/69)
|
|
414
|
-
|
|
415
283
|
- Enable Private Networking [\#68](https://github.com/pearkes/tugboat/issues/68)
|
|
416
|
-
|
|
417
284
|
- Release 0.0.8 [\#65](https://github.com/pearkes/tugboat/issues/65)
|
|
418
|
-
|
|
419
285
|
- Add SSH key to account [\#60](https://github.com/pearkes/tugboat/issues/60)
|
|
420
286
|
|
|
421
287
|
**Merged pull requests:**
|
|
422
288
|
|
|
423
289
|
- require json at the top to avoid 2.0.0 issues [\#80](https://github.com/pearkes/tugboat/pull/80) ([pearkes](https://github.com/pearkes))
|
|
424
|
-
|
|
425
290
|
- updated default image from 12.04 x64 to 13.04 x64 [\#76](https://github.com/pearkes/tugboat/pull/76) ([obradovic](https://github.com/obradovic))
|
|
426
|
-
|
|
427
291
|
- Add private networking boolean option \(Ex. tugboat create -p true mydrop... [\#75](https://github.com/pearkes/tugboat/pull/75) ([4n3w](https://github.com/4n3w))
|
|
428
|
-
|
|
429
292
|
- Added ssh option for executing commands [\#73](https://github.com/pearkes/tugboat/pull/73) ([calebreach](https://github.com/calebreach))
|
|
430
|
-
|
|
431
293
|
- Upload SSH Key [\#64](https://github.com/pearkes/tugboat/pull/64) ([petems](https://github.com/petems))
|
|
432
294
|
|
|
433
|
-
- added optional private networking to create [\#74](https://github.com/pearkes/tugboat/pull/74) ([obradovic](https://github.com/obradovic))
|
|
434
|
-
|
|
435
295
|
## [v0.0.8](https://github.com/pearkes/tugboat/tree/v0.0.8) (2013-09-07)
|
|
436
|
-
|
|
437
296
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.0.7...v0.0.8)
|
|
438
297
|
|
|
439
298
|
**Implemented enhancements:**
|
|
440
299
|
|
|
441
300
|
- Add ability to set default region [\#56](https://github.com/pearkes/tugboat/issues/56)
|
|
442
|
-
|
|
443
301
|
- Release 0.0.7 [\#54](https://github.com/pearkes/tugboat/issues/54)
|
|
444
|
-
|
|
445
302
|
- Handle 401s more gracefully... [\#53](https://github.com/pearkes/tugboat/issues/53)
|
|
446
|
-
|
|
447
303
|
- Scrub API Keys from Logs [\#42](https://github.com/pearkes/tugboat/issues/42)
|
|
448
304
|
|
|
449
305
|
**Fixed bugs:**
|
|
@@ -457,33 +313,25 @@
|
|
|
457
313
|
**Merged pull requests:**
|
|
458
314
|
|
|
459
315
|
- Faraday: Improve Error Messages [\#62](https://github.com/pearkes/tugboat/pull/62) ([pearkes](https://github.com/pearkes))
|
|
460
|
-
|
|
461
316
|
- Default droplet options [\#61](https://github.com/pearkes/tugboat/pull/61) ([petems](https://github.com/petems))
|
|
462
|
-
|
|
463
317
|
- Custom logging to filter logs [\#58](https://github.com/pearkes/tugboat/pull/58) ([petems](https://github.com/petems))
|
|
464
|
-
|
|
465
318
|
- Reset colors [\#57](https://github.com/pearkes/tugboat/pull/57) ([blom](https://github.com/blom))
|
|
466
|
-
|
|
467
319
|
- Custom faraday and verify method [\#55](https://github.com/pearkes/tugboat/pull/55) ([petems](https://github.com/petems))
|
|
468
320
|
|
|
469
321
|
## [v0.0.7](https://github.com/pearkes/tugboat/tree/v0.0.7) (2013-07-10)
|
|
470
|
-
|
|
471
322
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.0.6...v0.0.7)
|
|
472
323
|
|
|
473
324
|
**Closed issues:**
|
|
474
325
|
|
|
475
326
|
- New release? [\#47](https://github.com/pearkes/tugboat/issues/47)
|
|
476
|
-
|
|
477
327
|
- tugboat authorize says I must run... authorize [\#41](https://github.com/pearkes/tugboat/issues/41)
|
|
478
328
|
|
|
479
329
|
**Merged pull requests:**
|
|
480
330
|
|
|
481
331
|
- Add response for no images found \(my-images filter\) [\#49](https://github.com/pearkes/tugboat/pull/49) ([petems](https://github.com/petems))
|
|
482
|
-
|
|
483
332
|
- Add response for no droplets found [\#48](https://github.com/pearkes/tugboat/pull/48) ([petems](https://github.com/petems))
|
|
484
333
|
|
|
485
334
|
## [v0.0.6](https://github.com/pearkes/tugboat/tree/v0.0.6) (2013-06-25)
|
|
486
|
-
|
|
487
335
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.0.5...v0.0.6)
|
|
488
336
|
|
|
489
337
|
**Implemented enhancements:**
|
|
@@ -493,39 +341,25 @@
|
|
|
493
341
|
**Closed issues:**
|
|
494
342
|
|
|
495
343
|
- Error: Faraday::Error::ParsingError n-1.6.7/lib/json/common.rb:149:in `parse': 757 [\#37](https://github.com/pearkes/tugboat/issues/37)
|
|
496
|
-
|
|
497
344
|
- Release 0.0.5 [\#29](https://github.com/pearkes/tugboat/issues/29)
|
|
498
345
|
|
|
499
346
|
**Merged pull requests:**
|
|
500
347
|
|
|
501
348
|
- Wait [\#46](https://github.com/pearkes/tugboat/pull/46) ([pearkes](https://github.com/pearkes))
|
|
502
|
-
|
|
503
349
|
- Add a password reset command [\#45](https://github.com/pearkes/tugboat/pull/45) ([blom](https://github.com/blom))
|
|
504
|
-
|
|
505
350
|
- README: bring command documentation up to date [\#43](https://github.com/pearkes/tugboat/pull/43) ([pearkes](https://github.com/pearkes))
|
|
506
|
-
|
|
507
351
|
- Add a resize command [\#40](https://github.com/pearkes/tugboat/pull/40) ([blom](https://github.com/blom))
|
|
508
|
-
|
|
509
352
|
- Update the defaults for droplet creation [\#39](https://github.com/pearkes/tugboat/pull/39) ([pearkes](https://github.com/pearkes))
|
|
510
|
-
|
|
511
353
|
- Add a --ssh-opts option to the ssh command [\#38](https://github.com/pearkes/tugboat/pull/38) ([blom](https://github.com/blom))
|
|
512
|
-
|
|
513
354
|
- Add some tests for the help command [\#36](https://github.com/pearkes/tugboat/pull/36) ([blom](https://github.com/blom))
|
|
514
|
-
|
|
515
355
|
- Dry up the specs a bit [\#35](https://github.com/pearkes/tugboat/pull/35) ([blom](https://github.com/blom))
|
|
516
|
-
|
|
517
356
|
- Adjust the Coveralls configuration [\#34](https://github.com/pearkes/tugboat/pull/34) ([blom](https://github.com/blom))
|
|
518
|
-
|
|
519
357
|
- Run specs in a random order [\#33](https://github.com/pearkes/tugboat/pull/33) ([blom](https://github.com/blom))
|
|
520
|
-
|
|
521
358
|
- Add coveralls.io support [\#32](https://github.com/pearkes/tugboat/pull/32) ([pearkes](https://github.com/pearkes))
|
|
522
|
-
|
|
523
359
|
- Droplet State Checks [\#31](https://github.com/pearkes/tugboat/pull/31) ([pearkes](https://github.com/pearkes))
|
|
524
|
-
|
|
525
360
|
- Add a start command [\#30](https://github.com/pearkes/tugboat/pull/30) ([blom](https://github.com/blom))
|
|
526
361
|
|
|
527
362
|
## [v0.0.5](https://github.com/pearkes/tugboat/tree/v0.0.5) (2013-05-04)
|
|
528
|
-
|
|
529
363
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.0.4...v0.0.5)
|
|
530
364
|
|
|
531
365
|
**Fixed bugs:**
|
|
@@ -535,65 +369,43 @@
|
|
|
535
369
|
**Closed issues:**
|
|
536
370
|
|
|
537
371
|
- pass through ssh commands [\#26](https://github.com/pearkes/tugboat/issues/26)
|
|
538
|
-
|
|
539
372
|
- Supporting MRI 1.8.7 [\#20](https://github.com/pearkes/tugboat/issues/20)
|
|
540
|
-
|
|
541
373
|
- Add a command to list regions [\#17](https://github.com/pearkes/tugboat/issues/17)
|
|
542
374
|
|
|
543
375
|
**Merged pull requests:**
|
|
544
376
|
|
|
545
377
|
- Stub out Kernel.exec for testing the options sent to SSH. [\#28](https://github.com/pearkes/tugboat/pull/28) ([pearkes](https://github.com/pearkes))
|
|
546
|
-
|
|
547
378
|
- Add a power option to halt and restart [\#27](https://github.com/pearkes/tugboat/pull/27) ([blom](https://github.com/blom))
|
|
548
|
-
|
|
549
379
|
- Add an initial spec for the ssh command [\#24](https://github.com/pearkes/tugboat/pull/24) ([blom](https://github.com/blom))
|
|
550
|
-
|
|
551
380
|
- Add an ssh\_user option to the ssh command [\#23](https://github.com/pearkes/tugboat/pull/23) ([blom](https://github.com/blom))
|
|
552
|
-
|
|
553
381
|
- Support MRI 1.8.7 [\#22](https://github.com/pearkes/tugboat/pull/22) ([blom](https://github.com/blom))
|
|
554
|
-
|
|
555
382
|
- Status Codes [\#21](https://github.com/pearkes/tugboat/pull/21) ([pearkes](https://github.com/pearkes))
|
|
556
|
-
|
|
557
383
|
- Add a sizes command [\#19](https://github.com/pearkes/tugboat/pull/19) ([blom](https://github.com/blom))
|
|
558
|
-
|
|
559
384
|
- Add a regions command [\#18](https://github.com/pearkes/tugboat/pull/18) ([blom](https://github.com/blom))
|
|
560
|
-
|
|
561
385
|
- Add .travis.yml [\#16](https://github.com/pearkes/tugboat/pull/16) ([blom](https://github.com/blom))
|
|
562
386
|
|
|
563
|
-
- Add a power cycle command [\#25](https://github.com/pearkes/tugboat/pull/25) ([blom](https://github.com/blom))
|
|
564
|
-
|
|
565
387
|
## [v0.0.4](https://github.com/pearkes/tugboat/tree/v0.0.4) (2013-04-23)
|
|
566
|
-
|
|
567
388
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.0.3...v0.0.4)
|
|
568
389
|
|
|
569
390
|
**Implemented enhancements:**
|
|
570
391
|
|
|
571
392
|
- Disable Confirmations Flag [\#7](https://github.com/pearkes/tugboat/issues/7)
|
|
572
|
-
|
|
573
393
|
- Add command to check for version [\#2](https://github.com/pearkes/tugboat/issues/2)
|
|
574
394
|
|
|
575
395
|
**Closed issues:**
|
|
576
396
|
|
|
577
397
|
- Allow configurable SSH port [\#12](https://github.com/pearkes/tugboat/issues/12)
|
|
578
|
-
|
|
579
398
|
- cli.rb:175: syntax error, unexpected '\)', expecting '=' \(SyntaxError\) [\#10](https://github.com/pearkes/tugboat/issues/10)
|
|
580
|
-
|
|
581
399
|
- Destroy droplet without confirmation [\#9](https://github.com/pearkes/tugboat/issues/9)
|
|
582
|
-
|
|
583
400
|
- Unable to authorise [\#8](https://github.com/pearkes/tugboat/issues/8)
|
|
584
401
|
|
|
585
402
|
**Merged pull requests:**
|
|
586
403
|
|
|
587
404
|
- All of the specs [\#15](https://github.com/pearkes/tugboat/pull/15) ([pearkes](https://github.com/pearkes))
|
|
588
|
-
|
|
589
405
|
- Add a version command [\#14](https://github.com/pearkes/tugboat/pull/14) ([blom](https://github.com/blom))
|
|
590
|
-
|
|
591
406
|
- Allow options for custom ssh port [\#13](https://github.com/pearkes/tugboat/pull/13) ([PhilETaylor](https://github.com/PhilETaylor))
|
|
592
407
|
|
|
593
|
-
- fix for SyntaxError [\#11](https://github.com/pearkes/tugboat/pull/11) ([PhilETaylor](https://github.com/PhilETaylor))
|
|
594
|
-
|
|
595
408
|
## [v0.0.3](https://github.com/pearkes/tugboat/tree/v0.0.3) (2013-04-15)
|
|
596
|
-
|
|
597
409
|
[Full Changelog](https://github.com/pearkes/tugboat/compare/v0.0.2...v0.0.3)
|
|
598
410
|
|
|
599
411
|
**Fixed bugs:**
|
|
@@ -603,5 +415,4 @@
|
|
|
603
415
|
## [v0.0.2](https://github.com/pearkes/tugboat/tree/v0.0.2) (2013-04-14)
|
|
604
416
|
|
|
605
417
|
|
|
606
|
-
|
|
607
418
|
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
http_interactions:
|
|
3
|
+
- request:
|
|
4
|
+
method: post
|
|
5
|
+
uri: https://api.digitalocean.com/v2/droplets
|
|
6
|
+
body:
|
|
7
|
+
encoding: UTF-8
|
|
8
|
+
string: '{"name":"droplet-with-array-of-keys","size":"512mb","image":"ubuntu-14-04-x64","region":"nyc2","ssh_keys":["1234","5678"],"private_networking":"false","backups_enabled":"false","ipv6":"false","user_data":null}'
|
|
9
|
+
headers:
|
|
10
|
+
Authorization:
|
|
11
|
+
- Bearer faketokenazukxeh729ggxh9gjavvzw5cabdpq95txpzhz6ep6jvtquxztfkf2chyejcsg5
|
|
12
|
+
Content-Type:
|
|
13
|
+
- application/json
|
|
14
|
+
User-Agent:
|
|
15
|
+
- Faraday v0.9.2
|
|
16
|
+
Accept-Encoding:
|
|
17
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
|
18
|
+
Accept:
|
|
19
|
+
- "*/*"
|
|
20
|
+
response:
|
|
21
|
+
status:
|
|
22
|
+
code: 202
|
|
23
|
+
message: Accepted
|
|
24
|
+
headers:
|
|
25
|
+
Server:
|
|
26
|
+
- cloudflare-nginx
|
|
27
|
+
Date:
|
|
28
|
+
- Tue, 16 Feb 2016 10:10:51 GMT
|
|
29
|
+
Content-Type:
|
|
30
|
+
- application/json; charset=utf-8
|
|
31
|
+
Transfer-Encoding:
|
|
32
|
+
- chunked
|
|
33
|
+
Connection:
|
|
34
|
+
- keep-alive
|
|
35
|
+
Set-Cookie:
|
|
36
|
+
- __cfduid=ajsdfjk2hbnfjb3jbj; expires=Wed, 15-Feb-17
|
|
37
|
+
10:10:50 GMT; path=/; domain=.digitalocean.com; HttpOnly
|
|
38
|
+
Status:
|
|
39
|
+
- 202 Accepted
|
|
40
|
+
X-Frame-Options:
|
|
41
|
+
- SAMEORIGIN
|
|
42
|
+
X-Xss-Protection:
|
|
43
|
+
- 1; mode=block
|
|
44
|
+
X-Content-Type-Options:
|
|
45
|
+
- nosniff
|
|
46
|
+
Ratelimit-Limit:
|
|
47
|
+
- '5000'
|
|
48
|
+
Ratelimit-Remaining:
|
|
49
|
+
- '4994'
|
|
50
|
+
Ratelimit-Reset:
|
|
51
|
+
- '1455617507'
|
|
52
|
+
Cache-Control:
|
|
53
|
+
- no-cache
|
|
54
|
+
X-Request-Id:
|
|
55
|
+
- 8d869cf8-bbeb-48fa-ae84-32f1b01ebab6
|
|
56
|
+
X-Runtime:
|
|
57
|
+
- '0.246402'
|
|
58
|
+
Cf-Ray:
|
|
59
|
+
- 27587709cabc1377-LHR
|
|
60
|
+
body:
|
|
61
|
+
encoding: UTF-8
|
|
62
|
+
string: '{"droplet":{"id":276961,"name":"droplet-with-array-of-keys","memory":512,"vcpus":1,"disk":20,"locked":true,"status":"new","kernel":{"id":6297,"name":"Ubuntu
|
|
63
|
+
14.04 x64 vmlinuz-3.13.0-71-generic","version":"3.13.0-71-generic"},"created_at":"2016-02-16T10:10:50Z","features":["virtio"],"backup_ids":[],"next_backup_window":null,"snapshot_ids":[],"image":{"id":14782728,"name":"14.04.3
|
|
64
|
+
x64","distribution":"Ubuntu","slug":"ubuntu-14-04-x64","public":true,"regions":["nyc1","sfo1","nyc2","ams2","sgp1","lon1","nyc3","ams3","fra1","tor1"],"created_at":"2015-12-10T16:42:21Z","min_disk_size":20,"type":"snapshot"},"size":{"slug":"512mb","memory":512,"vcpus":1,"disk":20,"transfer":1.0,"price_monthly":5.0,"price_hourly":0.00744,"regions":["ams1","ams2","ams3","fra1","lon1","nyc1","nyc2","nyc3","sfo1","sgp1","tor1"],"available":true},"size_slug":"512mb","networks":{"v4":[],"v6":[]},"region":{"name":"New
|
|
65
|
+
York 2","slug":"nyc2","sizes":["1gb","2gb","4gb","8gb","32gb","64gb","512mb","48gb","16gb"],"features":["private_networking","backups","ipv6","metadata"],"available":true},"tags":[]},"links":{"actions":[{"id":84162954,"rel":"create","href":"https://api.digitalocean.com/v2/actions/27624451"}]}}'
|
|
66
|
+
http_version:
|
|
67
|
+
recorded_at: Tue, 16 Feb 2016 10:10:51 GMT
|
|
68
|
+
recorded_with: VCR 2.9.3
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
Feature: config
|
|
2
|
+
In order to easily load DigitalOcean config
|
|
3
|
+
As a user
|
|
4
|
+
I should be able to supply an ssh key as a number
|
|
5
|
+
|
|
6
|
+
@vcr
|
|
7
|
+
Scenario: Single SSH key as number in config
|
|
8
|
+
Given a '.tugboat' config with data:
|
|
9
|
+
"""
|
|
10
|
+
---
|
|
11
|
+
authentication:
|
|
12
|
+
access_token: faketokenazukxeh729ggxh9gjavvzw5cabdpq95txpzhz6ep6jvtquxztfkf2chyejcsg5
|
|
13
|
+
ssh:
|
|
14
|
+
ssh_user: root
|
|
15
|
+
ssh_key_path: "~/.ssh/id_rsa"
|
|
16
|
+
ssh_port: '22'
|
|
17
|
+
defaults:
|
|
18
|
+
region: nyc2
|
|
19
|
+
image: ubuntu-14-04-x64
|
|
20
|
+
size: 512mb
|
|
21
|
+
ssh_key: 27100
|
|
22
|
+
private_networking: 'false'
|
|
23
|
+
backups_enabled: 'false'
|
|
24
|
+
ip6: 'false'
|
|
25
|
+
"""
|
|
26
|
+
When I run `tugboat create number-based-key`
|
|
27
|
+
Then the exit status should not be 1
|
|
28
|
+
And the output should contain "Queueing creation of droplet 'number-based-key'...Droplet created!"
|
|
@@ -17,7 +17,7 @@ module Tugboat
|
|
|
17
17
|
region = ask "Enter your default region (optional, defaults to nyc1):"
|
|
18
18
|
image = ask "Enter your default image ID or image slug (optional, defaults to ubuntu-14-04-x64):"
|
|
19
19
|
size = ask "Enter your default size (optional, defaults to 512mb)):"
|
|
20
|
-
ssh_key = ask "Enter your default ssh key IDs (optional, defaults to none,
|
|
20
|
+
ssh_key = ask "Enter your default ssh key IDs (optional, defaults to none, array of IDs of ssh keys eg. ['1234']):"
|
|
21
21
|
private_networking = ask "Enter your default for private networking (optional, defaults to false):"
|
|
22
22
|
backups_enabled = ask "Enter your default for enabling backups (optional, defaults to false):"
|
|
23
23
|
ip6 = ask "Enter your default for IPv6 (optional, defaults to false):"
|
|
@@ -4,9 +4,11 @@ module Tugboat
|
|
|
4
4
|
class CheckDropletActive < Base
|
|
5
5
|
def call(env)
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
unless env['user_droplet_ssh_wait']
|
|
8
|
+
if env["droplet_status"] != "active"
|
|
9
|
+
say "Droplet must be on for this operation to be successful.", :red
|
|
10
|
+
exit 1
|
|
11
|
+
end
|
|
10
12
|
end
|
|
11
13
|
|
|
12
14
|
@app.call(env)
|
data/lib/tugboat/version.rb
CHANGED
|
@@ -30,7 +30,7 @@ describe Tugboat::CLI do
|
|
|
30
30
|
expect($stdin).to receive(:gets).and_return(image)
|
|
31
31
|
expect($stdout).to receive(:print).with("Enter your default size (optional, defaults to 512mb)): ")
|
|
32
32
|
expect($stdin).to receive(:gets).and_return(size)
|
|
33
|
-
expect($stdout).to receive(:print).with("Enter your default ssh key IDs (optional, defaults to none,
|
|
33
|
+
expect($stdout).to receive(:print).with("Enter your default ssh key IDs (optional, defaults to none, array of IDs of ssh keys eg. ['1234']): ")
|
|
34
34
|
expect($stdin).to receive(:gets).and_return(ssh_key_id)
|
|
35
35
|
expect($stdout).to receive(:print).with("Enter your default for private networking (optional, defaults to false): ")
|
|
36
36
|
expect($stdin).to receive(:gets).and_return(private_networking)
|
|
@@ -79,7 +79,7 @@ describe Tugboat::CLI do
|
|
|
79
79
|
expect($stdin).to receive(:gets).and_return('')
|
|
80
80
|
expect($stdout).to receive(:print).with("Enter your default size (optional, defaults to 512mb)): ")
|
|
81
81
|
expect($stdin).to receive(:gets).and_return('')
|
|
82
|
-
expect($stdout).to receive(:print).with("Enter your default ssh key IDs (optional, defaults to none,
|
|
82
|
+
expect($stdout).to receive(:print).with("Enter your default ssh key IDs (optional, defaults to none, array of IDs of ssh keys eg. ['1234']): ")
|
|
83
83
|
expect($stdin).to receive(:gets).and_return('')
|
|
84
84
|
expect($stdout).to receive(:print).with("Enter your default for private networking (optional, defaults to false): ")
|
|
85
85
|
expect($stdin).to receive(:gets).and_return('')
|
data/spec/cli/ssh_cli_spec.rb
CHANGED
|
@@ -16,7 +16,7 @@ describe Tugboat::CLI do
|
|
|
16
16
|
@cli.ssh("example.com")
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
-
it "wait's until droplet active if -w command is given" do
|
|
19
|
+
it "wait's until droplet active if -w command is given and droplet already active" do
|
|
20
20
|
stub_request(:get, "https://api.digitalocean.com/v2/droplets?page=1&per_page=1").
|
|
21
21
|
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Authorization'=>'Bearer foo', 'Content-Type'=>'application/json', 'User-Agent'=>'Faraday v0.9.2'}).
|
|
22
22
|
to_return(:status => 200, :body => "", :headers => {})
|
|
@@ -43,6 +43,36 @@ SShing with options: -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownH
|
|
|
43
43
|
eos
|
|
44
44
|
end
|
|
45
45
|
|
|
46
|
+
it "wait's until droplet active if -w command is given and droplet eventually active" do
|
|
47
|
+
stub_request(:get, "https://api.digitalocean.com/v2/droplets?page=1&per_page=1").
|
|
48
|
+
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Authorization'=>'Bearer foo', 'Content-Type'=>'application/json', 'User-Agent'=>'Faraday v0.9.2'}).
|
|
49
|
+
to_return(:status => 200, :body => "", :headers => {})
|
|
50
|
+
|
|
51
|
+
stub_request(:get, "https://api.digitalocean.com/v2/droplets/6918990?per_page=200").
|
|
52
|
+
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Authorization'=>'Bearer foo', 'Content-Type'=>'application/json', 'User-Agent'=>'Faraday v0.9.2'}).
|
|
53
|
+
to_return(
|
|
54
|
+
{:status => 200, :body => fixture('show_droplet_inactive'), :headers => {}},
|
|
55
|
+
{:status => 200, :body => fixture('show_droplet'), :headers => {}}
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
stub_request(:get, "https://api.digitalocean.com/v2/droplets?page=1&per_page=200").
|
|
59
|
+
to_return(:headers => {'Content-Type' => 'application/json'}, :status => 200, :body => fixture("show_droplets"))
|
|
60
|
+
allow(Kernel).to receive(:exec).with('ssh', anything(), anything(),anything(), anything(),anything(), anything(),anything(), anything(),anything(), anything(),anything(), anything(),anything())
|
|
61
|
+
|
|
62
|
+
@cli.options = @cli.options.merge(:wait => true)
|
|
63
|
+
|
|
64
|
+
@cli.ssh("example.com")
|
|
65
|
+
|
|
66
|
+
expect($stdout.string).to eq <<-eos
|
|
67
|
+
Droplet fuzzy name provided. Finding droplet ID...done\e[0m, 6918990 (example.com)
|
|
68
|
+
Executing SSH on Droplet (example.com)...
|
|
69
|
+
Wait flag given, waiting for droplet to become active
|
|
70
|
+
..done\e[0m (2s)
|
|
71
|
+
Attempting SSH: baz@104.236.32.182
|
|
72
|
+
SShing with options: -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -i #{Dir.home}/.ssh/id_rsa2 -p 33 baz@104.236.32.182
|
|
73
|
+
eos
|
|
74
|
+
end
|
|
75
|
+
|
|
46
76
|
it "does not allow ssh into a droplet that is inactive" do
|
|
47
77
|
stub_request(:get, "https://api.digitalocean.com/v2/droplets?page=1&per_page=1").
|
|
48
78
|
with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Authorization'=>'Bearer foo', 'Content-Type'=>'application/json', 'User-Agent'=>'Faraday v0.9.2'}).
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: tugboat
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.2.
|
|
4
|
+
version: 2.2.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jack Pearkes
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date: 2016-02-
|
|
13
|
+
date: 2016-02-18 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: thor
|
|
@@ -227,10 +227,12 @@ files:
|
|
|
227
227
|
- Rakefile
|
|
228
228
|
- bin/tugboat
|
|
229
229
|
- features/cassettes/config/Array_of_SSH_Keys_in_Config.yml
|
|
230
|
+
- features/cassettes/config/Single_SSH_key_as_number_in_config.yml
|
|
230
231
|
- features/step_definitions/steps.rb
|
|
231
232
|
- features/support/env.rb
|
|
232
233
|
- features/tugboat/config_array_of_ssh_keys.feature
|
|
233
234
|
- features/tugboat/config_current_directory.feature
|
|
235
|
+
- features/tugboat/config_number_key.feature
|
|
234
236
|
- lib/tugboat.rb
|
|
235
237
|
- lib/tugboat/cli.rb
|
|
236
238
|
- lib/tugboat/config.rb
|
|
@@ -369,10 +371,12 @@ specification_version: 4
|
|
|
369
371
|
summary: A command line tool for interacting with your DigitalOcean droplets.
|
|
370
372
|
test_files:
|
|
371
373
|
- features/cassettes/config/Array_of_SSH_Keys_in_Config.yml
|
|
374
|
+
- features/cassettes/config/Single_SSH_key_as_number_in_config.yml
|
|
372
375
|
- features/step_definitions/steps.rb
|
|
373
376
|
- features/support/env.rb
|
|
374
377
|
- features/tugboat/config_array_of_ssh_keys.feature
|
|
375
378
|
- features/tugboat/config_current_directory.feature
|
|
379
|
+
- features/tugboat/config_number_key.feature
|
|
376
380
|
- spec/cli/add_key_spec.rb
|
|
377
381
|
- spec/cli/authorize_cli_spec.rb
|
|
378
382
|
- spec/cli/config_cli_spec.rb
|