turbot 0.1.36 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +8 -0
  3. data/.rspec +3 -0
  4. data/.travis.yml +15 -0
  5. data/.yardopts +3 -0
  6. data/Gemfile +4 -0
  7. data/LICENSE +22 -0
  8. data/README.md +44 -25
  9. data/Rakefile +16 -0
  10. data/appveyor.yml +35 -0
  11. data/bin/turbot +2 -16
  12. data/data/schema.json +134 -0
  13. data/{templates → data/templates}/LICENSE.txt +0 -0
  14. data/{templates → data/templates}/manifest.json +0 -0
  15. data/{templates → data/templates}/python/scraper.py +0 -0
  16. data/{templates → data/templates}/ruby/scraper.rb +0 -0
  17. data/dist/deb.rake +32 -0
  18. data/dist/gem.rake +16 -0
  19. data/dist/manifest.rake +9 -0
  20. data/dist/pkg.rake +60 -0
  21. data/dist/resources/deb/control +10 -0
  22. data/dist/resources/deb/postinst +45 -0
  23. data/dist/resources/deb/turbot +25 -0
  24. data/dist/resources/deb/turbot-release-key.txt +30 -0
  25. data/dist/resources/pkg/Distribution.erb +15 -0
  26. data/dist/resources/pkg/PackageInfo.erb +6 -0
  27. data/dist/resources/pkg/postinstall +45 -0
  28. data/dist/resources/pkg/turbot +24 -0
  29. data/dist/resources/tgz/turbot +24 -0
  30. data/dist/rpm.rake +35 -0
  31. data/dist/tgz.rake +26 -0
  32. data/dist/zip.rake +40 -0
  33. data/lib/turbot.rb +18 -15
  34. data/lib/turbot/cli.rb +10 -27
  35. data/lib/turbot/command.rb +59 -212
  36. data/lib/turbot/command/auth.rb +72 -34
  37. data/lib/turbot/command/base.rb +22 -61
  38. data/lib/turbot/command/bots.rb +251 -300
  39. data/lib/turbot/command/help.rb +57 -110
  40. data/lib/turbot/command/version.rb +6 -10
  41. data/lib/turbot/handlers/base_handler.rb +21 -0
  42. data/lib/turbot/handlers/dump_handler.rb +10 -0
  43. data/lib/turbot/handlers/preview_handler.rb +30 -0
  44. data/lib/turbot/handlers/validation_handler.rb +17 -0
  45. data/lib/turbot/helpers.rb +14 -482
  46. data/lib/turbot/helpers/api_helper.rb +41 -0
  47. data/lib/turbot/helpers/netrc_helper.rb +66 -0
  48. data/lib/turbot/helpers/shell_helper.rb +36 -0
  49. data/lib/turbot/version.rb +1 -1
  50. data/spec/fixtures/bad_permissions +0 -0
  51. data/spec/fixtures/empty +0 -0
  52. data/spec/fixtures/netrc +6 -0
  53. data/spec/spec_helper.rb +17 -219
  54. data/spec/support/bot_helper.rb +102 -0
  55. data/spec/support/command_helper.rb +20 -0
  56. data/spec/support/custom_matchers.rb +5 -0
  57. data/spec/support/fixture_helper.rb +9 -0
  58. data/spec/support/netrc_helper.rb +21 -0
  59. data/spec/turbot/command/auth_spec.rb +202 -20
  60. data/spec/turbot/command/base_spec.rb +22 -58
  61. data/spec/turbot/command/bots_spec.rb +580 -89
  62. data/spec/turbot/command/help_spec.rb +32 -75
  63. data/spec/turbot/command/version_spec.rb +11 -10
  64. data/spec/turbot/command_spec.rb +55 -87
  65. data/spec/turbot/helpers_spec.rb +28 -44
  66. data/turbot.gemspec +31 -0
  67. metadata +88 -178
  68. data/data/cacert.pem +0 -3988
  69. data/lib/turbot/auth.rb +0 -315
  70. data/lib/turbot/client.rb +0 -757
  71. data/lib/turbot/client/cisaurus.rb +0 -25
  72. data/lib/turbot/client/pgbackups.rb +0 -113
  73. data/lib/turbot/client/rendezvous.rb +0 -111
  74. data/lib/turbot/client/ssl_endpoint.rb +0 -25
  75. data/lib/turbot/client/turbot_postgresql.rb +0 -148
  76. data/lib/turbot/command/ssl.rb +0 -43
  77. data/lib/turbot/deprecated.rb +0 -5
  78. data/lib/turbot/deprecated/help.rb +0 -38
  79. data/lib/turbot/distribution.rb +0 -9
  80. data/lib/turbot/errors.rb +0 -28
  81. data/lib/turbot/excon.rb +0 -11
  82. data/lib/turbot/helpers/log_displayer.rb +0 -70
  83. data/lib/turbot/helpers/pg_dump_restore.rb +0 -115
  84. data/lib/turbot/helpers/turbot_postgresql.rb +0 -213
  85. data/lib/turbot/plugin.rb +0 -165
  86. data/lib/turbot/updater.rb +0 -171
  87. data/lib/vendor/turbot/okjson.rb +0 -598
  88. data/spec/helper/legacy_help.rb +0 -16
  89. data/spec/helper/pg_dump_restore_spec.rb +0 -67
  90. data/spec/spec.opts +0 -1
  91. data/spec/support/display_message_matcher.rb +0 -49
  92. data/spec/support/dummy_api.rb +0 -120
  93. data/spec/support/openssl_mock_helper.rb +0 -8
  94. data/spec/support/organizations_mock_helper.rb +0 -11
  95. data/spec/turbot/auth_spec.rb +0 -214
  96. data/spec/turbot/client/pgbackups_spec.rb +0 -43
  97. data/spec/turbot/client/rendezvous_spec.rb +0 -62
  98. data/spec/turbot/client/ssl_endpoint_spec.rb +0 -48
  99. data/spec/turbot/client/turbot_postgresql_spec.rb +0 -71
  100. data/spec/turbot/client_spec.rb +0 -548
  101. data/spec/turbot/helpers/turbot_postgresql_spec.rb +0 -181
  102. data/spec/turbot/plugin_spec.rb +0 -172
  103. data/spec/turbot/updater_spec.rb +0 -44
@@ -1,90 +1,47 @@
1
- require "spec_helper"
2
- require "turbot/command/bots"
3
- require "turbot/command/help"
1
+ require 'spec_helper'
2
+ require 'turbot/command/help'
4
3
 
5
4
  describe Turbot::Command::Help do
6
-
7
- describe "help" do
8
- it "should show root help with no args" do
9
- stderr, stdout = execute("help")
10
- stderr.should == ""
11
- stdout.should include "Usage: turbot COMMAND [--bot APP] [command-specific-options]"
12
- stdout.should include "bots"
13
- stdout.should include "help"
14
- end
15
-
16
- it "should show command help and namespace help when ambigious" do
17
- stderr, stdout = execute("help bots")
18
- stderr.should == ""
19
- stdout.should include "turbot bots"
20
- stdout.should include "list your bots"
21
- stdout.should include "Additional commands"
22
- stdout.should include "bots:info"
5
+ describe 'help' do
6
+ it 'shows root help' do
7
+ %w(help -h --help).each do |command|
8
+ stderr, stdout = execute(command)
9
+ expect(stderr).to eq('')
10
+ expect(stdout).to include('Usage: turbot COMMAND [--bot APP] [command-specific-options]')
11
+ expect(stdout).to include('auth')
12
+ expect(stdout).to include('help')
13
+ end
23
14
  end
24
15
 
25
- it "should show only command help when not ambiguous" do
26
- stderr, stdout = execute("help bots:info")
27
- stderr.should == ""
28
- stdout.should include "turbot bots:info"
29
- stdout.should_not include "Additional commands"
16
+ it 'shows command help and namespace help' do
17
+ stderr, stdout = execute('help bots')
18
+ expect(stderr).to eq('')
19
+ expect(stdout).to include('turbot bots')
20
+ expect(stdout).to include('Additional commands')
21
+ expect(stdout).to include('bots:info')
30
22
  end
31
23
 
32
- it "should show command help with --help" do
33
- stderr, stdout = execute("bots:info --help")
34
- stderr.should == ""
35
- stdout.should include "Usage: turbot bots:info"
36
- stdout.should_not include "Additional commands"
24
+ it 'shows command help' do
25
+ stderr, stdout = execute('help bots:info')
26
+ expect(stderr).to eq('')
27
+ expect(stdout).to include('turbot bots:info')
28
+ expect(stdout).not_to include('Additional commands')
37
29
  end
38
30
 
39
- it "should redirect if the command is an alias" do
40
- stderr, stdout = execute("help list")
41
- stderr.should == ""
42
- stdout.should include "Alias: list redirects to bots"
43
- stdout.should include "Usage: turbot bots"
44
- stdout.should include "list your bots"
31
+ it 'shows aliased command help' do
32
+ stderr, stdout = execute('help info')
33
+ expect(stderr).to eq('')
34
+ expect(stdout).to include('Alias: info redirects to bots:info')
35
+ expect(stdout).to include('turbot bots:info')
36
+ expect(stdout).not_to include('Additional commands')
45
37
  end
46
38
 
47
- it "should show if the command does not exist" do
48
- stderr, stdout = execute("help sudo:sandwich")
49
- stderr.should == <<-STDERR
39
+ it 'displays an error message if the command does not exist' do
40
+ stderr, stdout = execute('help sudo:sandwich')
41
+ expect(stdout).to eq('')
42
+ expect(stderr).to eq <<-STDERR
50
43
  ! sudo:sandwich is not a turbot command. See `turbot help`.
51
44
  STDERR
52
- stdout.should == ""
53
- end
54
-
55
- it "should show help with naked -h" do
56
- stderr, stdout = execute("-h")
57
- stderr.should == ""
58
- stdout.should include "Usage: turbot COMMAND"
59
- end
60
-
61
- it "should show help with naked --help" do
62
- stderr, stdout = execute("--help")
63
- stderr.should == ""
64
- stdout.should include "Usage: turbot COMMAND"
65
- end
66
-
67
- describe "with legacy help" do
68
- require "helper/legacy_help"
69
-
70
- it "displays the legacy group in the namespace list" do
71
- stderr, stdout = execute("help")
72
- stderr.should == ""
73
- stdout.should include "Foo Group"
74
- end
75
-
76
- it "displays group help" do
77
- stderr, stdout = execute("help foo")
78
- stderr.should == ""
79
- stdout.should include "do a bar to foo"
80
- stdout.should include "do a baz to foo"
81
- end
82
-
83
- it "displays legacy command-specific help" do
84
- stderr, stdout = execute("help foo:bar")
85
- stderr.should == ""
86
- stdout.should include "do a bar to foo"
87
- end
88
45
  end
89
46
  end
90
47
  end
@@ -1,16 +1,17 @@
1
- require "spec_helper"
2
- require "turbot/command/version"
1
+ require 'spec_helper'
2
+ require 'turbot/command/version'
3
3
 
4
- module Turbot::Command
5
- describe Version do
4
+ describe Turbot::Command::Version do
5
+ describe 'version' do
6
+ it 'shows the version' do
7
+ %w(version --version).each do |command|
8
+ stderr, stdout = execute(command)
6
9
 
7
- it "shows version info" do
8
- stderr, stdout = execute("version")
9
- stderr.should == ""
10
- stdout.should == <<-STDOUT
11
- #{Turbot.user_agent}
10
+ expect(stderr).to eq('')
11
+ expect(stdout).to eq <<-STDOUT
12
+ #{Turbot::DEBUG_VERSION}
12
13
  STDOUT
14
+ end
13
15
  end
14
-
15
16
  end
16
17
  end
@@ -1,9 +1,6 @@
1
- require "spec_helper"
2
- require "turbot/command"
3
- require 'json' #FOR WEBMOCK
1
+ require 'spec_helper'
4
2
 
5
3
  class FakeResponse
6
-
7
4
  attr_accessor :body, :headers
8
5
 
9
6
  def initialize(attributes)
@@ -13,118 +10,89 @@ class FakeResponse
13
10
  def to_s
14
11
  body
15
12
  end
16
-
17
13
  end
18
14
 
19
15
  describe Turbot::Command do
20
- before {
16
+ before do
21
17
  Turbot::Command.load
22
- stub_core # setup fake auth
23
- }
18
+ end
24
19
 
25
- describe "parsing errors" do
26
- it "extracts error messages from response when available in XML" do
27
- Turbot::Command.extract_error('<errors><error>Invalid bot name</error></errors>').should == 'Invalid bot name'
28
- end
20
+ it 'shows command help if parse error on command option' do
21
+ stderr, stdout = execute('bots:generate -l')
22
+ expect(stderr).to eq('')
23
+ expect(stdout).to include('turbot bots:generate')
24
+ expect(stdout).not_to include('Additional commands')
25
+ end
29
26
 
30
- it "extracts error messages from response when available in JSON" do
31
- Turbot::Command.extract_error("{\"error\":\"Invalid bot name\"}").should == 'Invalid bot name'
32
- end
27
+ it 'shows command help if one invalid argument' do
28
+ stderr, stdout = execute('version foo')
29
+ expect(stdout).to include('turbot version')
30
+ expect(stdout).not_to include('Additional commands')
31
+ expect(stderr).to eq <<-STDERR
32
+ ! Invalid argument: "foo"
33
+ STDERR
34
+ end
33
35
 
34
- it "extracts error messages from response when available in plain text" do
35
- response = FakeResponse.new(:body => "Invalid bot name", :headers => { :content_type => "text/plain; charset=UTF8" })
36
- Turbot::Command.extract_error(response).should == 'Invalid bot name'
36
+ it 'shows command help if many invalid arguments' do
37
+ stderr, stdout = execute('version foo bar baz')
38
+ expect(stdout).to include('turbot version')
39
+ expect(stdout).not_to include('Additional commands')
40
+ expect(stderr).to eq <<-STDERR
41
+ ! Invalid arguments: "foo", "bar" and "baz"
42
+ STDERR
43
+ end
44
+
45
+ describe 'parsing errors' do
46
+ it 'extracts error messages from response when available in JSON' do
47
+ expect(Turbot::Command.extract_error('{"message":"Invalid bot name"}')).to eq('Invalid bot name')
37
48
  end
38
49
 
39
50
  it "shows Internal Server Error when the response doesn't contain a XML or JSON" do
40
- Turbot::Command.extract_error('<h1>HTTP 500</h1>').should == "Internal server error.\nRun `turbot status` to check for known platform issues."
51
+ expect(Turbot::Command.extract_error('<h1>HTTP 500</h1>')).to eq('Internal server error')
41
52
  end
42
53
 
43
- it "shows Internal Server Error when the response is not plain text" do
44
- response = FakeResponse.new(:body => "Foobar", :headers => { :content_type => "application/xml" })
45
- Turbot::Command.extract_error(response).should == "Internal server error.\nRun `turbot status` to check for known platform issues."
54
+ it 'shows Internal Server Error when the response is not plain text' do
55
+ response = FakeResponse.new(:body => 'Foobar', :headers => { :content_type => 'application/xml' })
56
+ expect(Turbot::Command.extract_error(response)).to eq('Internal server error')
46
57
  end
47
58
 
48
- it "allows a block to redefine the default error" do
49
- Turbot::Command.extract_error("Foobar") { "Ok!" }.should == 'Ok!'
59
+ it 'allows a block to redefine the default error' do
60
+ expect(Turbot::Command.extract_error('Foobar') { 'Ok!' }).to eq('Ok!')
50
61
  end
51
62
 
52
63
  it "doesn't format the response if set to raw" do
53
- Turbot::Command.extract_error("Foobar", :raw => true) { "Ok!" }.should == 'Ok!'
54
- end
55
-
56
- it "handles a nil body in parse_error_xml" do
57
- lambda { Turbot::Command.parse_error_xml(nil) }.should_not raise_error
58
- end
59
-
60
- it "handles a nil body in parse_error_json" do
61
- lambda { Turbot::Command.parse_error_json(nil) }.should_not raise_error
64
+ expect(Turbot::Command.extract_error('Foobar', :raw => true) { 'Ok!' }).to eq('Ok!')
62
65
  end
63
66
  end
64
67
 
65
- it "correctly resolves commands" do
66
- class Turbot::Command::Test; end
67
- class Turbot::Command::Test::Multiple; end
68
-
69
- require "turbot/command/help"
70
- require "turbot/command/bots"
71
-
72
- Turbot::Command.parse("unknown").should be_nil
73
- Turbot::Command.parse("list").should include(:klass => Turbot::Command::Bots, :method => :index)
74
- Turbot::Command.parse("bots").should include(:klass => Turbot::Command::Bots, :method => :index)
75
- Turbot::Command.parse("bots:info").should include(:klass => Turbot::Command::Bots, :method => :info)
76
- end
77
-
78
- context "help" do
79
- it "works as a prefix" do
80
- turbot("help bots:info").should =~ /show detailed bot information/
81
- end
82
-
83
- it "works as an option" do
84
- turbot("bots:info -h").should =~ /show detailed bot information/
85
- turbot("bots:info --help").should =~ /show detailed bot information/
86
- end
87
- end
88
-
89
- context "when no commands match" do
90
-
91
- it "displays the version if --version is used" do
92
- turbot("--version").should == <<-STDOUT
93
- #{Turbot.user_agent}
94
- STDOUT
95
- end
96
-
97
- it "suggests similar commands if there are any" do
98
- original_stderr, original_stdout = $stderr, $stdout
99
- $stderr = captured_stderr = StringIO.new
100
- $stdout = captured_stdout = StringIO.new
101
- begin
102
- execute("bot")
103
- rescue SystemExit
104
- end
105
- captured_stderr.string.should == <<-STDERR
68
+ context 'when no commands match' do
69
+ it 'suggests one command' do
70
+ stderr, stdout = execute('bot')
71
+ expect(stderr).to eq <<-STDERR
106
72
  ! `bot` is not a turbot command.
107
73
  ! Perhaps you meant `bots`.
108
74
  ! See `turbot help` for a list of available commands.
109
75
  STDERR
110
- captured_stdout.string.should == ""
111
- $stderr, $stdout = original_stderr, original_stdout
76
+ expect(stdout).to eq('')
77
+ end
78
+
79
+ it 'suggests many commands' do
80
+ stderr, stdout = execute('hefo')
81
+ expect(stderr).to eq <<-STDERR
82
+ ! `hefo` is not a turbot command.
83
+ ! Perhaps you meant `help` or `info`.
84
+ ! See `turbot help` for a list of available commands.
85
+ STDERR
86
+ expect(stdout).to eq('')
112
87
  end
113
88
 
114
- it "does not suggest similar commands if there are none" do
115
- original_stderr, original_stdout = $stderr, $stdout
116
- $stderr = captured_stderr = StringIO.new
117
- $stdout = captured_stdout = StringIO.new
118
- begin
119
- execute("sandwich")
120
- rescue SystemExit
121
- end
122
- captured_stderr.string.should == <<-STDERR
89
+ it 'does not suggest similar commands if there are none' do
90
+ stderr, stdout = execute('sandwich')
91
+ expect(stderr).to eq <<-STDERR
123
92
  ! `sandwich` is not a turbot command.
124
93
  ! See `turbot help` for a list of available commands.
125
94
  STDERR
126
- captured_stdout.string.should == ""
127
- $stderr, $stdout = original_stderr, original_stdout
95
+ expect(stdout).to eq('')
128
96
  end
129
97
 
130
98
  end
@@ -1,48 +1,32 @@
1
- require "spec_helper"
2
- require "turbot/helpers"
3
-
4
- module Turbot
5
- describe Helpers do
6
- include Turbot::Helpers
7
-
8
- context "display_object" do
9
-
10
- it "should display Array correctly" do
11
- capture_stdout do
12
- display_object([1,2,3])
13
- end.should == <<-OUT
14
- 1
15
- 2
16
- 3
17
- OUT
1
+ require 'spec_helper'
2
+
3
+ describe Turbot::Helpers do
4
+ describe '#styled_error' do
5
+ it 'should display an error' do
6
+ begin
7
+ raise 'My message'
8
+ rescue => e
9
+ original_stderr, original_stdout = $stderr, $stdout
10
+
11
+ $stderr = captured_stderr = StringIO.new
12
+ $stdout = captured_stdout = StringIO.new
13
+
14
+ Turbot::Helpers.styled_error(e)
15
+
16
+ $stderr, $stdout = original_stderr, original_stdout
17
+
18
+ [
19
+ ' ! Turbot client internal error.',
20
+ ' ! Report a bug at: https://github.com/openc/turbot-client/issues/new',
21
+ ' Error: My message (RuntimeError)',
22
+ ' Backtrace: ',
23
+ ' Command: ',
24
+ ' Version: ',
25
+ ].each do |string|
26
+ expect(captured_stderr.string).to include(string)
27
+ end
28
+ expect(captured_stdout.string).to eq('')
18
29
  end
19
-
20
- it "should display { :header => [] } list correctly" do
21
- capture_stdout do
22
- display_object({:first_header => [1,2,3], :last_header => [7,8,9]})
23
- end.should == <<-OUT
24
- === first_header
25
- 1
26
- 2
27
- 3
28
-
29
- === last_header
30
- 7
31
- 8
32
- 9
33
-
34
- OUT
35
- end
36
-
37
- it "should display String properly" do
38
- capture_stdout do
39
- display_object('string')
40
- end.should == <<-OUT
41
- string
42
- OUT
43
- end
44
-
45
30
  end
46
-
47
31
  end
48
32
  end
data/turbot.gemspec ADDED
@@ -0,0 +1,31 @@
1
+ require File.expand_path('../lib/turbot/version', __FILE__)
2
+
3
+ Gem::Specification.new do |gem|
4
+ gem.name = "turbot"
5
+ gem.version = Turbot::VERSION
6
+
7
+ gem.author = "OpenCorporates"
8
+ gem.email = "bots@opencorporates.com"
9
+ gem.homepage = "https://github.com/openc/turbot-client"
10
+ gem.summary = "Client library and CLI to deploy and manage bots on Turbot"
11
+ gem.license = "MIT"
12
+
13
+ gem.files = `git ls-files`.split("\n")
14
+ gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
15
+ gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
16
+ gem.require_paths = ["lib"]
17
+
18
+ gem.required_ruby_version = '>=1.9.2'
19
+
20
+ gem.add_runtime_dependency("netrc", "~> 0.11")
21
+ gem.add_runtime_dependency("json-schema", "~> 2.6.0")
22
+ gem.add_runtime_dependency("rubyzip", ">= 1.0.0")
23
+ gem.add_runtime_dependency("text", "~> 1.3.1")
24
+ gem.add_runtime_dependency("turbot-api", "~> 0.0.17")
25
+ gem.add_runtime_dependency("turbot-runner", "~> 0.2.7")
26
+
27
+ gem.add_development_dependency("coveralls")
28
+ gem.add_development_dependency("rake")
29
+ gem.add_development_dependency("rspec", "~> 3.4")
30
+ gem.add_development_dependency("webmock")
31
+ end
metadata CHANGED
@@ -1,71 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: turbot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.36
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
- - Turbot
7
+ - OpenCorporates
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-15 00:00:00.000000000 Z
11
+ date: 2021-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: turbotlib
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: 0.0.9
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: 0.0.9
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: netrc
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
17
  - - "~>"
32
18
  - !ruby/object:Gem::Version
33
- version: 0.7.7
19
+ version: '0.11'
34
20
  type: :runtime
35
21
  prerelease: false
36
22
  version_requirements: !ruby/object:Gem::Requirement
37
23
  requirements:
38
24
  - - "~>"
39
25
  - !ruby/object:Gem::Version
40
- version: 0.7.7
26
+ version: '0.11'
41
27
  - !ruby/object:Gem::Dependency
42
- name: rest-client
28
+ name: json-schema
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - "~>"
46
32
  - !ruby/object:Gem::Version
47
- version: 1.6.1
33
+ version: 2.6.0
48
34
  type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
38
  - - "~>"
53
39
  - !ruby/object:Gem::Version
54
- version: 1.6.1
55
- - !ruby/object:Gem::Dependency
56
- name: launchy
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: 0.3.2
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: 0.3.2
40
+ version: 2.6.0
69
41
  - !ruby/object:Gem::Dependency
70
42
  name: rubyzip
71
43
  requirement: !ruby/object:Gem::Requirement
@@ -81,33 +53,33 @@ dependencies:
81
53
  - !ruby/object:Gem::Version
82
54
  version: 1.0.0
83
55
  - !ruby/object:Gem::Dependency
84
- name: activesupport
56
+ name: text
85
57
  requirement: !ruby/object:Gem::Requirement
86
58
  requirements:
87
- - - '='
59
+ - - "~>"
88
60
  - !ruby/object:Gem::Version
89
- version: 4.1.4
61
+ version: 1.3.1
90
62
  type: :runtime
91
63
  prerelease: false
92
64
  version_requirements: !ruby/object:Gem::Requirement
93
65
  requirements:
94
- - - '='
66
+ - - "~>"
95
67
  - !ruby/object:Gem::Version
96
- version: 4.1.4
68
+ version: 1.3.1
97
69
  - !ruby/object:Gem::Dependency
98
70
  name: turbot-api
99
71
  requirement: !ruby/object:Gem::Requirement
100
72
  requirements:
101
- - - '='
73
+ - - "~>"
102
74
  - !ruby/object:Gem::Version
103
- version: 0.0.14
75
+ version: 0.0.17
104
76
  type: :runtime
105
77
  prerelease: false
106
78
  version_requirements: !ruby/object:Gem::Requirement
107
79
  requirements:
108
- - - '='
80
+ - - "~>"
109
81
  - !ruby/object:Gem::Version
110
- version: 0.0.14
82
+ version: 0.0.17
111
83
  - !ruby/object:Gem::Dependency
112
84
  name: turbot-runner
113
85
  requirement: !ruby/object:Gem::Requirement
@@ -122,20 +94,6 @@ dependencies:
122
94
  - - "~>"
123
95
  - !ruby/object:Gem::Version
124
96
  version: 0.2.7
125
- - !ruby/object:Gem::Dependency
126
- name: excon
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :runtime
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: '0'
139
97
  - !ruby/object:Gem::Dependency
140
98
  name: coveralls
141
99
  requirement: !ruby/object:Gem::Requirement
@@ -150,78 +108,8 @@ dependencies:
150
108
  - - ">="
151
109
  - !ruby/object:Gem::Version
152
110
  version: '0'
153
- - !ruby/object:Gem::Dependency
154
- name: fakefs
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: '0'
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - ">="
165
- - !ruby/object:Gem::Version
166
- version: '0'
167
- - !ruby/object:Gem::Dependency
168
- name: json
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - ">="
172
- - !ruby/object:Gem::Version
173
- version: '0'
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - ">="
179
- - !ruby/object:Gem::Version
180
- version: '0'
181
111
  - !ruby/object:Gem::Dependency
182
112
  name: rake
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: 0.8.7
188
- type: :development
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - ">="
193
- - !ruby/object:Gem::Version
194
- version: 0.8.7
195
- - !ruby/object:Gem::Dependency
196
- name: rr
197
- requirement: !ruby/object:Gem::Requirement
198
- requirements:
199
- - - "~>"
200
- - !ruby/object:Gem::Version
201
- version: 1.0.2
202
- type: :development
203
- prerelease: false
204
- version_requirements: !ruby/object:Gem::Requirement
205
- requirements:
206
- - - "~>"
207
- - !ruby/object:Gem::Version
208
- version: 1.0.2
209
- - !ruby/object:Gem::Dependency
210
- name: rspec
211
- requirement: !ruby/object:Gem::Requirement
212
- requirements:
213
- - - '='
214
- - !ruby/object:Gem::Version
215
- version: 2.13.0
216
- type: :development
217
- prerelease: false
218
- version_requirements: !ruby/object:Gem::Requirement
219
- requirements:
220
- - - '='
221
- - !ruby/object:Gem::Version
222
- version: 2.13.0
223
- - !ruby/object:Gem::Dependency
224
- name: sqlite3
225
113
  requirement: !ruby/object:Gem::Requirement
226
114
  requirements:
227
115
  - - ">="
@@ -235,19 +123,19 @@ dependencies:
235
123
  - !ruby/object:Gem::Version
236
124
  version: '0'
237
125
  - !ruby/object:Gem::Dependency
238
- name: tins
126
+ name: rspec
239
127
  requirement: !ruby/object:Gem::Requirement
240
128
  requirements:
241
129
  - - "~>"
242
130
  - !ruby/object:Gem::Version
243
- version: 1.6.0
131
+ version: '3.4'
244
132
  type: :development
245
133
  prerelease: false
246
134
  version_requirements: !ruby/object:Gem::Requirement
247
135
  requirements:
248
136
  - - "~>"
249
137
  - !ruby/object:Gem::Version
250
- version: 1.6.0
138
+ version: '3.4'
251
139
  - !ruby/object:Gem::Dependency
252
140
  name: webmock
253
141
  requirement: !ruby/object:Gem::Requirement
@@ -262,75 +150,80 @@ dependencies:
262
150
  - - ">="
263
151
  - !ruby/object:Gem::Version
264
152
  version: '0'
265
- description: Client library and command-line tool to deploy and manage apps on Turbot.
266
- email: support@turbot.opencorporates.com
153
+ description:
154
+ email: bots@opencorporates.com
267
155
  executables:
268
156
  - turbot
269
157
  extensions: []
270
158
  extra_rdoc_files: []
271
159
  files:
160
+ - ".gitignore"
161
+ - ".rspec"
162
+ - ".travis.yml"
163
+ - ".yardopts"
164
+ - Gemfile
165
+ - LICENSE
272
166
  - README.md
167
+ - Rakefile
168
+ - appveyor.yml
273
169
  - bin/turbot
274
- - data/cacert.pem
170
+ - data/schema.json
171
+ - data/templates/LICENSE.txt
172
+ - data/templates/manifest.json
173
+ - data/templates/python/scraper.py
174
+ - data/templates/ruby/scraper.rb
175
+ - dist/deb.rake
176
+ - dist/gem.rake
177
+ - dist/manifest.rake
178
+ - dist/pkg.rake
179
+ - dist/resources/deb/control
180
+ - dist/resources/deb/postinst
181
+ - dist/resources/deb/turbot
182
+ - dist/resources/deb/turbot-release-key.txt
183
+ - dist/resources/pkg/Distribution.erb
184
+ - dist/resources/pkg/PackageInfo.erb
185
+ - dist/resources/pkg/postinstall
186
+ - dist/resources/pkg/turbot
187
+ - dist/resources/tgz/turbot
188
+ - dist/rpm.rake
189
+ - dist/tgz.rake
190
+ - dist/zip.rake
275
191
  - lib/turbot.rb
276
- - lib/turbot/auth.rb
277
192
  - lib/turbot/cli.rb
278
- - lib/turbot/client.rb
279
- - lib/turbot/client/cisaurus.rb
280
- - lib/turbot/client/pgbackups.rb
281
- - lib/turbot/client/rendezvous.rb
282
- - lib/turbot/client/ssl_endpoint.rb
283
- - lib/turbot/client/turbot_postgresql.rb
284
193
  - lib/turbot/command.rb
285
194
  - lib/turbot/command/auth.rb
286
195
  - lib/turbot/command/base.rb
287
196
  - lib/turbot/command/bots.rb
288
197
  - lib/turbot/command/help.rb
289
- - lib/turbot/command/ssl.rb
290
198
  - lib/turbot/command/version.rb
291
- - lib/turbot/deprecated.rb
292
- - lib/turbot/deprecated/help.rb
293
- - lib/turbot/distribution.rb
294
- - lib/turbot/errors.rb
295
- - lib/turbot/excon.rb
199
+ - lib/turbot/handlers/base_handler.rb
200
+ - lib/turbot/handlers/dump_handler.rb
201
+ - lib/turbot/handlers/preview_handler.rb
202
+ - lib/turbot/handlers/validation_handler.rb
296
203
  - lib/turbot/helpers.rb
297
- - lib/turbot/helpers/log_displayer.rb
298
- - lib/turbot/helpers/pg_dump_restore.rb
299
- - lib/turbot/helpers/turbot_postgresql.rb
300
- - lib/turbot/plugin.rb
301
- - lib/turbot/updater.rb
204
+ - lib/turbot/helpers/api_helper.rb
205
+ - lib/turbot/helpers/netrc_helper.rb
206
+ - lib/turbot/helpers/shell_helper.rb
302
207
  - lib/turbot/version.rb
303
- - lib/vendor/turbot/okjson.rb
304
- - spec/helper/legacy_help.rb
305
- - spec/helper/pg_dump_restore_spec.rb
208
+ - spec/fixtures/bad_permissions
209
+ - spec/fixtures/empty
210
+ - spec/fixtures/netrc
306
211
  - spec/schemas/dummy-schema.json
307
- - spec/spec.opts
308
212
  - spec/spec_helper.rb
309
- - spec/support/display_message_matcher.rb
310
- - spec/support/dummy_api.rb
311
- - spec/support/openssl_mock_helper.rb
312
- - spec/support/organizations_mock_helper.rb
313
- - spec/turbot/auth_spec.rb
314
- - spec/turbot/client/pgbackups_spec.rb
315
- - spec/turbot/client/rendezvous_spec.rb
316
- - spec/turbot/client/ssl_endpoint_spec.rb
317
- - spec/turbot/client/turbot_postgresql_spec.rb
318
- - spec/turbot/client_spec.rb
213
+ - spec/support/bot_helper.rb
214
+ - spec/support/command_helper.rb
215
+ - spec/support/custom_matchers.rb
216
+ - spec/support/fixture_helper.rb
217
+ - spec/support/netrc_helper.rb
319
218
  - spec/turbot/command/auth_spec.rb
320
219
  - spec/turbot/command/base_spec.rb
321
220
  - spec/turbot/command/bots_spec.rb
322
221
  - spec/turbot/command/help_spec.rb
323
222
  - spec/turbot/command/version_spec.rb
324
223
  - spec/turbot/command_spec.rb
325
- - spec/turbot/helpers/turbot_postgresql_spec.rb
326
224
  - spec/turbot/helpers_spec.rb
327
- - spec/turbot/plugin_spec.rb
328
- - spec/turbot/updater_spec.rb
329
- - templates/LICENSE.txt
330
- - templates/manifest.json
331
- - templates/python/scraper.py
332
- - templates/ruby/scraper.rb
333
- homepage: https://turbot.opencorporates.com/
225
+ - turbot.gemspec
226
+ homepage: https://github.com/openc/turbot-client
334
227
  licenses:
335
228
  - MIT
336
229
  metadata: {}
@@ -350,8 +243,25 @@ required_rubygems_version: !ruby/object:Gem::Requirement
350
243
  version: '0'
351
244
  requirements: []
352
245
  rubyforge_project:
353
- rubygems_version: 2.4.5
246
+ rubygems_version: 2.5.2.3
354
247
  signing_key:
355
248
  specification_version: 4
356
- summary: Client library and CLI to deploy apps on Turbot.
357
- test_files: []
249
+ summary: Client library and CLI to deploy and manage bots on Turbot
250
+ test_files:
251
+ - spec/fixtures/bad_permissions
252
+ - spec/fixtures/empty
253
+ - spec/fixtures/netrc
254
+ - spec/schemas/dummy-schema.json
255
+ - spec/spec_helper.rb
256
+ - spec/support/bot_helper.rb
257
+ - spec/support/command_helper.rb
258
+ - spec/support/custom_matchers.rb
259
+ - spec/support/fixture_helper.rb
260
+ - spec/support/netrc_helper.rb
261
+ - spec/turbot/command/auth_spec.rb
262
+ - spec/turbot/command/base_spec.rb
263
+ - spec/turbot/command/bots_spec.rb
264
+ - spec/turbot/command/help_spec.rb
265
+ - spec/turbot/command/version_spec.rb
266
+ - spec/turbot/command_spec.rb
267
+ - spec/turbot/helpers_spec.rb