turbot 0.1.36 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +8 -0
- data/.rspec +3 -0
- data/.travis.yml +15 -0
- data/Gemfile +4 -0
- data/LICENSE +22 -0
- data/README.md +44 -25
- data/Rakefile +16 -0
- data/appveyor.yml +35 -0
- data/bin/turbot +2 -16
- data/data/schema.json +134 -0
- data/{templates → data/templates}/LICENSE.txt +0 -0
- data/{templates → data/templates}/manifest.json +0 -0
- data/{templates → data/templates}/python/scraper.py +0 -0
- data/{templates → data/templates}/ruby/scraper.rb +0 -0
- data/dist/deb.rake +32 -0
- data/dist/gem.rake +16 -0
- data/dist/manifest.rake +9 -0
- data/dist/pkg.rake +60 -0
- data/dist/resources/deb/control +10 -0
- data/dist/resources/deb/postinst +45 -0
- data/dist/resources/deb/turbot +25 -0
- data/dist/resources/deb/turbot-release-key.txt +30 -0
- data/dist/resources/pkg/Distribution.erb +15 -0
- data/dist/resources/pkg/PackageInfo.erb +6 -0
- data/dist/resources/pkg/postinstall +45 -0
- data/dist/resources/pkg/turbot +24 -0
- data/dist/resources/tgz/turbot +24 -0
- data/dist/rpm.rake +35 -0
- data/dist/tgz.rake +26 -0
- data/dist/zip.rake +40 -0
- data/lib/turbot/cli.rb +10 -27
- data/lib/turbot/command/auth.rb +72 -34
- data/lib/turbot/command/base.rb +21 -60
- data/lib/turbot/command/bots.rb +245 -300
- data/lib/turbot/command/help.rb +57 -110
- data/lib/turbot/command/version.rb +6 -10
- data/lib/turbot/command.rb +53 -196
- data/lib/turbot/handlers/base_handler.rb +21 -0
- data/lib/turbot/handlers/dump_handler.rb +10 -0
- data/lib/turbot/handlers/preview_handler.rb +30 -0
- data/lib/turbot/handlers/validation_handler.rb +17 -0
- data/lib/turbot/helpers/api_helper.rb +41 -0
- data/lib/turbot/helpers/netrc_helper.rb +66 -0
- data/lib/turbot/helpers/shell_helper.rb +36 -0
- data/lib/turbot/helpers.rb +14 -482
- data/lib/turbot/version.rb +1 -1
- data/lib/turbot.rb +17 -15
- data/spec/fixtures/bad_permissions +0 -0
- data/spec/fixtures/empty +0 -0
- data/spec/fixtures/netrc +6 -0
- data/spec/spec_helper.rb +17 -219
- data/spec/support/bot_helper.rb +100 -0
- data/spec/support/command_helper.rb +20 -0
- data/spec/support/custom_matchers.rb +5 -0
- data/spec/support/fixture_helper.rb +9 -0
- data/spec/support/netrc_helper.rb +21 -0
- data/spec/turbot/command/auth_spec.rb +202 -20
- data/spec/turbot/command/base_spec.rb +22 -58
- data/spec/turbot/command/bots_spec.rb +558 -89
- data/spec/turbot/command/help_spec.rb +32 -75
- data/spec/turbot/command/version_spec.rb +11 -10
- data/spec/turbot/command_spec.rb +60 -85
- data/turbot.gemspec +31 -0
- metadata +86 -178
- data/data/cacert.pem +0 -3988
- data/lib/turbot/auth.rb +0 -315
- data/lib/turbot/client/cisaurus.rb +0 -25
- data/lib/turbot/client/pgbackups.rb +0 -113
- data/lib/turbot/client/rendezvous.rb +0 -111
- data/lib/turbot/client/ssl_endpoint.rb +0 -25
- data/lib/turbot/client/turbot_postgresql.rb +0 -148
- data/lib/turbot/client.rb +0 -757
- data/lib/turbot/command/ssl.rb +0 -43
- data/lib/turbot/deprecated/help.rb +0 -38
- data/lib/turbot/deprecated.rb +0 -5
- data/lib/turbot/distribution.rb +0 -9
- data/lib/turbot/errors.rb +0 -28
- data/lib/turbot/excon.rb +0 -11
- data/lib/turbot/helpers/log_displayer.rb +0 -70
- data/lib/turbot/helpers/pg_dump_restore.rb +0 -115
- data/lib/turbot/helpers/turbot_postgresql.rb +0 -213
- data/lib/turbot/plugin.rb +0 -165
- data/lib/turbot/updater.rb +0 -171
- data/lib/vendor/turbot/okjson.rb +0 -598
- data/spec/helper/legacy_help.rb +0 -16
- data/spec/helper/pg_dump_restore_spec.rb +0 -67
- data/spec/spec.opts +0 -1
- data/spec/support/display_message_matcher.rb +0 -49
- data/spec/support/dummy_api.rb +0 -120
- data/spec/support/openssl_mock_helper.rb +0 -8
- data/spec/support/organizations_mock_helper.rb +0 -11
- data/spec/turbot/auth_spec.rb +0 -214
- data/spec/turbot/client/pgbackups_spec.rb +0 -43
- data/spec/turbot/client/rendezvous_spec.rb +0 -62
- data/spec/turbot/client/ssl_endpoint_spec.rb +0 -48
- data/spec/turbot/client/turbot_postgresql_spec.rb +0 -71
- data/spec/turbot/client_spec.rb +0 -548
- data/spec/turbot/helpers/turbot_postgresql_spec.rb +0 -181
- data/spec/turbot/helpers_spec.rb +0 -48
- data/spec/turbot/plugin_spec.rb +0 -172
- data/spec/turbot/updater_spec.rb +0 -44
@@ -1,148 +0,0 @@
|
|
1
|
-
require "turbot/client"
|
2
|
-
|
3
|
-
class Turbot::Client::TurbotPostgresql
|
4
|
-
Version = 11
|
5
|
-
|
6
|
-
include Turbot::Helpers
|
7
|
-
|
8
|
-
@headers = { :x_turbot_gem_version => Turbot::Client.version }
|
9
|
-
|
10
|
-
def self.add_headers(headers)
|
11
|
-
@headers.merge! headers
|
12
|
-
end
|
13
|
-
|
14
|
-
def self.headers
|
15
|
-
@headers
|
16
|
-
end
|
17
|
-
|
18
|
-
attr_reader :attachment
|
19
|
-
def initialize(attachment)
|
20
|
-
@attachment = attachment
|
21
|
-
require 'rest_client'
|
22
|
-
end
|
23
|
-
|
24
|
-
def turbot_postgresql_host
|
25
|
-
if attachment.starter_plan?
|
26
|
-
determine_host(ENV["TURBOT_POSTGRESQL_HOST"], "postgres-starter-api.turbot.com")
|
27
|
-
else
|
28
|
-
if ENV['SHOGUN']
|
29
|
-
"shogun-#{ENV['SHOGUN']}.turbotapp.com"
|
30
|
-
else
|
31
|
-
determine_host(ENV["TURBOT_POSTGRESQL_HOST"], "postgres-api.turbot.com")
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
def resource_name
|
37
|
-
attachment.resource_name
|
38
|
-
end
|
39
|
-
|
40
|
-
def turbot_postgresql_resource
|
41
|
-
RestClient::Resource.new(
|
42
|
-
"https://#{turbot_postgresql_host}/client/v11/databases",
|
43
|
-
:user => Turbot::Auth.user,
|
44
|
-
:password => Turbot::Auth.password,
|
45
|
-
:headers => self.class.headers
|
46
|
-
)
|
47
|
-
end
|
48
|
-
|
49
|
-
def ingress
|
50
|
-
http_put "#{resource_name}/ingress"
|
51
|
-
end
|
52
|
-
|
53
|
-
def reset
|
54
|
-
http_put "#{resource_name}/reset"
|
55
|
-
end
|
56
|
-
|
57
|
-
def rotate_credentials
|
58
|
-
http_post "#{resource_name}/credentials_rotation"
|
59
|
-
end
|
60
|
-
|
61
|
-
def get_database(extended=false)
|
62
|
-
query = extended ? '?extended=true' : ''
|
63
|
-
http_get resource_name + query
|
64
|
-
end
|
65
|
-
|
66
|
-
def get_wait_status
|
67
|
-
http_get "#{resource_name}/wait_status"
|
68
|
-
end
|
69
|
-
|
70
|
-
def unfollow
|
71
|
-
http_put "#{resource_name}/unfollow"
|
72
|
-
end
|
73
|
-
|
74
|
-
protected
|
75
|
-
|
76
|
-
def sym_keys(c)
|
77
|
-
if c.is_a?(Array)
|
78
|
-
c.map { |e| sym_keys(e) }
|
79
|
-
else
|
80
|
-
c.inject({}) do |h, (k, v)|
|
81
|
-
h[k.to_sym] = v; h
|
82
|
-
end
|
83
|
-
end
|
84
|
-
end
|
85
|
-
|
86
|
-
def checking_client_version
|
87
|
-
begin
|
88
|
-
yield
|
89
|
-
rescue RestClient::BadRequest => e
|
90
|
-
if message = json_decode(e.response.to_s)["upgrade_message"]
|
91
|
-
abort(message)
|
92
|
-
else
|
93
|
-
raise e
|
94
|
-
end
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
def display_turbot_warning(response)
|
99
|
-
warning = response.headers[:x_turbot_warning]
|
100
|
-
display warning if warning
|
101
|
-
response
|
102
|
-
end
|
103
|
-
|
104
|
-
def http_get(path)
|
105
|
-
checking_client_version do
|
106
|
-
retry_on_exception(RestClient::Exception) do
|
107
|
-
response = turbot_postgresql_resource[path].get
|
108
|
-
display_turbot_warning response
|
109
|
-
sym_keys(json_decode(response.to_s))
|
110
|
-
end
|
111
|
-
end
|
112
|
-
end
|
113
|
-
|
114
|
-
def http_post(path, payload = {})
|
115
|
-
checking_client_version do
|
116
|
-
response = turbot_postgresql_resource[path].post(json_encode(payload))
|
117
|
-
display_turbot_warning response
|
118
|
-
sym_keys(json_decode(response.to_s))
|
119
|
-
end
|
120
|
-
end
|
121
|
-
|
122
|
-
def http_put(path, payload = {})
|
123
|
-
checking_client_version do
|
124
|
-
response = turbot_postgresql_resource[path].put(json_encode(payload))
|
125
|
-
display_turbot_warning response
|
126
|
-
sym_keys(json_decode(response.to_s))
|
127
|
-
end
|
128
|
-
end
|
129
|
-
|
130
|
-
private
|
131
|
-
|
132
|
-
def determine_host(value, default)
|
133
|
-
if value.nil?
|
134
|
-
default
|
135
|
-
else
|
136
|
-
"#{value}.turbotapp.com"
|
137
|
-
end
|
138
|
-
end
|
139
|
-
end
|
140
|
-
|
141
|
-
module TurbotPostgresql
|
142
|
-
class Client < Turbot::Client::TurbotPostgresql
|
143
|
-
def initialize(*args)
|
144
|
-
Turbot::Helpers.deprecate "TurbotPostgresql::Client has been deprecated. Please use Turbot::Client::TurbotPostgresql instead."
|
145
|
-
super
|
146
|
-
end
|
147
|
-
end
|
148
|
-
end
|