brightbox-cli 2.10.0 → 3.0.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 91e149ba9690fe26c97b144bb44335ad61bb1d4b618dc40cf25d67db0ce2125f
4
- data.tar.gz: 671a10236bb00873715e7efbb833517bdada9fa473b53ae59ada833c5f213e0c
3
+ metadata.gz: 0c5b05513e19a2b2086a60adcdcc9db34da763ea57057fe3cd4565f13d996325
4
+ data.tar.gz: 2330375316fccfb4681d2eafd793070821ac58e8af68d73c9b8370301a4ecd43
5
5
  SHA512:
6
- metadata.gz: 32983783ff888dbd51d1b3e2354e39d2958e9c88e44058e1a9e0f6e3eb660379fcb1b40d7b1a6b98a0911fbb95005fdd06d846b253efde60cf2da94abe42989e
7
- data.tar.gz: 9f8b40a4566056cb001c6370e6f0b9b801e1955124610f0a993d6d3b6725c86643ee7452765c532e297b6be3886b081c22165ba7b2bca90a1ea664c1f636e4c9
6
+ metadata.gz: a2b9f70e55d3ac5273a6179ff17bd10f5c99d75c628d67dfd671413d657717d34f00a8ecbbb1397b952b56ed34b55249e836c09417c32b69eebcb677877b941e
7
+ data.tar.gz: de89095e13e79781b3c04828a4e20e1150056a4e3f838fa19923f949741c332cbeb4bb4b46b38566f2a7dc2b6e76b893cd658963b5194b33f7a79674cf650314
@@ -1,10 +1,10 @@
1
1
  language: ruby
2
2
  sudo: false
3
+
3
4
  rvm:
4
- - 1.9
5
5
  - 2.0
6
6
  - 2.1
7
7
  - 2.2
8
8
  - 2.3
9
9
  - 2.4
10
- - 2.5
10
+ - 2.6
@@ -1,3 +1,55 @@
1
+ ### v3.0.0 / 2020-07-01
2
+
3
+ [Full Changelog](https://github.com/brightbox/brightbox-cli/compare/v2.12.0...v3.0.0)
4
+
5
+ Backwards incompatible changes:
6
+
7
+ * Dropped support for Ruby 1.9
8
+
9
+ Changes:
10
+
11
+ * Update `fog-brightbox` to v1.1.0
12
+ * Update `rake` to v12.3.3 to resolve CVE-2020-8130
13
+ * Update `rspec` to v3.9 to avoid issue when updating `rake`
14
+
15
+ Bug fixes:
16
+
17
+ * Creating an SQL instance from an existing snapshot has been fixed following
18
+ the update for `fog-brightbox v1.1.0`
19
+
20
+ ### v2.12.0 / 2020-01-28
21
+
22
+ [Full Changelog](https://github.com/brightbox/brightbox-cli/compare/v2.11.2...v2.12.0)
23
+
24
+ Enhancements:
25
+
26
+ * Adds `token create` to always attempt to reauthenticate and display a token.
27
+
28
+ ### v2.11.2 / 2020-01-07
29
+
30
+ [Full Changelog](https://github.com/brightbox/brightbox-cli/compare/v2.11.1...v2.11.2)
31
+
32
+ Bug fixes:
33
+
34
+ * Update `excon` to v0.71.0 to fix security issue.
35
+
36
+ ### v2.11.1 / 2019-10-29
37
+
38
+ [Full Changelog](https://github.com/brightbox/brightbox-cli/compare/v2.11.0...v2.11.1)
39
+
40
+ Bug fixes:
41
+
42
+ * Constrain version of `dry-inflector` to ensure gem can work with older
43
+ versions of Ruby.
44
+
45
+ ### v2.11.0 / 2019-06-06
46
+
47
+ [Full Changelog](https://github.com/brightbox/brightbox-cli/compare/v2.10.0...v2.11.0)
48
+
49
+ Enhancements:
50
+
51
+ * Prompts for 2FA token if set up on a user account being used to authenticate.
52
+
1
53
  ### v2.10.0 / 2019-03-20
2
54
 
3
55
  [Full Changelog](https://github.com/brightbox/brightbox-cli/compare/v2.9.3...v2.10.0)
@@ -1,8 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- brightbox-cli (2.10.0)
5
- fog-brightbox (>= 0.16.0, < 1.0)
4
+ brightbox-cli (3.0.0)
5
+ dry-inflector (< 0.2)
6
+ fog-brightbox (>= 1.1.0)
6
7
  fog-core (< 2.0)
7
8
  gli (~> 2.12.0)
8
9
  highline (~> 1.6.0)
@@ -15,18 +16,17 @@ GEM
15
16
  remote: https://rubygems.org/
16
17
  specs:
17
18
  addressable (2.3.8)
18
- builder (3.2.3)
19
+ builder (3.2.4)
19
20
  coderay (1.0.9)
20
21
  crack (0.4.2)
21
22
  safe_yaml (~> 1.0.0)
22
- diff-lcs (1.2.5)
23
+ diff-lcs (1.4.3)
23
24
  dry-inflector (0.1.2)
24
- excon (0.62.0)
25
- fog-brightbox (0.16.1)
25
+ excon (0.75.0)
26
+ fog-brightbox (1.1.0)
26
27
  dry-inflector
27
- fog-core
28
+ fog-core (>= 1.45, < 3.0)
28
29
  fog-json
29
- mime-types
30
30
  fog-core (1.45.0)
31
31
  builder
32
32
  excon (~> 0.58)
@@ -52,15 +52,20 @@ GEM
52
52
  pry-remote (0.1.8)
53
53
  pry (~> 0.9)
54
54
  slop (~> 3.0)
55
- rake (10.1.0)
56
- rspec (2.99.0)
57
- rspec-core (~> 2.99.0)
58
- rspec-expectations (~> 2.99.0)
59
- rspec-mocks (~> 2.99.0)
60
- rspec-core (2.99.1)
61
- rspec-expectations (2.99.1)
62
- diff-lcs (>= 1.1.3, < 2.0)
63
- rspec-mocks (2.99.1)
55
+ rake (12.3.3)
56
+ rspec (3.9.0)
57
+ rspec-core (~> 3.9.0)
58
+ rspec-expectations (~> 3.9.0)
59
+ rspec-mocks (~> 3.9.0)
60
+ rspec-core (3.9.2)
61
+ rspec-support (~> 3.9.3)
62
+ rspec-expectations (3.9.2)
63
+ diff-lcs (>= 1.2.0, < 2.0)
64
+ rspec-support (~> 3.9.0)
65
+ rspec-mocks (3.9.1)
66
+ diff-lcs (>= 1.2.0, < 2.0)
67
+ rspec-support (~> 3.9.0)
68
+ rspec-support (3.9.3)
64
69
  safe_yaml (1.0.4)
65
70
  slop (3.4.5)
66
71
  vcr (2.5.0)
@@ -76,9 +81,9 @@ DEPENDENCIES
76
81
  mocha
77
82
  pry-remote
78
83
  rake
79
- rspec (~> 2.99)
84
+ rspec
80
85
  vcr (~> 2.5)
81
86
  webmock
82
87
 
83
88
  BUNDLED WITH
84
- 1.16.2
89
+ 1.17.3
@@ -9,17 +9,6 @@ pipeline {
9
9
  stages {
10
10
  stage("Run tests") {
11
11
  parallel {
12
- stage("Ruby 1.9.3") {
13
- agent {
14
- docker {
15
- image 'ruby:1.9.3'
16
- }
17
- }
18
- steps {
19
- sh 'BUNDLE_APP_CONFIG=/tmp/bundle.config BUNDLE_DISABLE_SHARED_GEMS=true bundle install --deployment'
20
- sh 'BUNDLE_APP_CONFIG=/tmp/bundle.config bundle exec rake test'
21
- }
22
- }
23
12
  stage("Ruby 2.0") {
24
13
  agent {
25
14
  docker {
@@ -86,7 +75,17 @@ pipeline {
86
75
  sh 'bundle exec rake test'
87
76
  }
88
77
  }
89
-
78
+ stage("Ruby 2.6") {
79
+ agent {
80
+ docker {
81
+ image 'ruby:2.6'
82
+ }
83
+ }
84
+ steps {
85
+ sh 'bundle install --deployment'
86
+ sh 'bundle exec rake test'
87
+ }
88
+ }
90
89
  }
91
90
  }
92
91
  }
data/Rakefile CHANGED
@@ -1,16 +1,6 @@
1
- require "bundler"
2
1
  require "rspec/core/rake_task"
3
2
 
4
- bbcloud_path = File.expand_path("./lib", File.dirname(__FILE__))
5
- $LOAD_PATH.unshift(bbcloud_path)
6
-
7
- task :default => [:test]
8
-
9
3
  Bundler::GemHelper.install_tasks
4
+ RSpec::Core::RakeTask.new(:spec)
10
5
 
11
- RSpec::Core::RakeTask.new
12
-
13
- desc "Runs all tests (rspec and cucumber)"
14
- task :test do
15
- Rake::Task["spec"].invoke
16
- end
6
+ task :default => :spec
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
12
12
  s.description = %q(Scripts to interact with the Brightbox cloud API)
13
13
  s.license = "MIT"
14
14
 
15
- s.required_ruby_version = ">= 1.9.3"
15
+ s.required_ruby_version = ">= 2.0"
16
16
 
17
17
  s.rubyforge_project = "brightbox-cli"
18
18
 
@@ -21,7 +21,7 @@ Gem::Specification.new do |s|
21
21
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
22
22
  s.require_paths = ["lib"]
23
23
 
24
- s.add_dependency "fog-brightbox", ">= 0.16.0", "< 1.0"
24
+ s.add_dependency "fog-brightbox", ">= 1.1.0"
25
25
  s.add_dependency "fog-core", "< 2.0"
26
26
  s.add_dependency "gli", "~> 2.12.0"
27
27
  s.add_dependency "i18n", "~> 0.6.0"
@@ -30,10 +30,13 @@ Gem::Specification.new do |s|
30
30
  s.add_dependency "highline", "~> 1.6.0"
31
31
  s.add_dependency "hirb", "~> 0.6"
32
32
 
33
+ # dry-inflector >= 0.2 drops supports for Ruby < 2.4
34
+ s.add_dependency "dry-inflector", "< 0.2"
35
+
33
36
  s.add_development_dependency "mocha"
34
37
  s.add_development_dependency "pry-remote"
35
38
  s.add_development_dependency "rake"
36
- s.add_development_dependency "rspec", "~> 2.99"
39
+ s.add_development_dependency "rspec"
37
40
  s.add_development_dependency "vcr", "~> 2.5"
38
41
  s.add_development_dependency "webmock"
39
42
 
@@ -16,7 +16,7 @@ module Brightbox
16
16
  # Returns the current connection to the Brightbox API, creating a new
17
17
  # {ConnectionManager} and connection if necessary.
18
18
  #
19
- # @return [Fog::Compute::Brightbox::Real]
19
+ # @return [Fog::Brightbox::Compute::Real]
20
20
  #
21
21
  def self.conn
22
22
  if @@connection_manager
@@ -9,7 +9,7 @@ module Brightbox
9
9
  def self.invite(email, role)
10
10
  options = { :email => email, :role => role }
11
11
  data = conn.create_collaboration(options)
12
- model = Fog::Compute::Brightbox::Collaboration.new(data)
12
+ model = Fog::Brightbox::Compute::Collaboration.new(data)
13
13
  new(model)
14
14
  end
15
15
 
@@ -36,7 +36,7 @@ module Brightbox
36
36
  # with a request, before updating the model
37
37
  data = FirewallPolicy.conn.update_firewall_policy(policy_id, params)
38
38
 
39
- model = Fog::Compute::Brightbox::FirewallPolicy.new(data)
39
+ model = Fog::Brightbox::Compute::FirewallPolicy.new(data)
40
40
  policy = FirewallPolicy.new(model)
41
41
 
42
42
  render_table([policy], global_options)
@@ -32,6 +32,8 @@ module Brightbox
32
32
  end
33
33
  raise "You must specify your Brightbox password." if password.empty?
34
34
 
35
+ password = Brightbox.config.extend_with_two_factor_pin(password)
36
+
35
37
  section_options = {
36
38
  :client_name => config_name,
37
39
  :alias => config_name,
@@ -10,10 +10,25 @@ module Brightbox
10
10
  c.default_value "text"
11
11
  c.flag [:format]
12
12
 
13
- c.action do |global_options, options, args|
13
+ c.action do |_, options, _|
14
+ token = Token.show(Brightbox.config, options)
15
+ $stdout.puts token.format(options[:format] || "text")
16
+ end
17
+ end
18
+
19
+ cmd.desc "Create new OAuth2 Bearer token"
20
+ cmd.command [:create] do |c|
21
+ c.desc "Either 'text', 'token', 'json' or 'curl'"
22
+ c.arg_name "format"
23
+ c.default_value "text"
24
+ c.flag [:format]
25
+
26
+ c.action do |_, options, _|
27
+ config.reauthenticate
14
28
  token = Token.show(Brightbox.config, options)
15
29
  $stdout.puts token.format(options[:format])
16
30
  end
17
31
  end
32
+
18
33
  end
19
34
  end
@@ -14,6 +14,7 @@ module Brightbox
14
14
  include Brightbox::Config::Cache
15
15
  include Brightbox::Config::GpgEncryptedPasswords
16
16
  include Brightbox::Config::PasswordHelper
17
+ include Brightbox::Config::TwoFactorAuth
17
18
  include Brightbox::Config::AuthenticationTokens
18
19
  include Brightbox::Config::Accounts
19
20
  include Brightbox::Config::Clients
@@ -193,6 +193,8 @@ module Brightbox
193
193
  password ||= password_helper_password
194
194
  password ||= prompt_for_password
195
195
 
196
+ password = extend_with_two_factor_pin(password)
197
+
196
198
  # FIXME: options are required to work
197
199
  options = {
198
200
  :client_id => client_name,
@@ -0,0 +1,31 @@
1
+ module Brightbox
2
+ module Config
3
+ module TwoFactorAuth
4
+
5
+ def extend_with_two_factor_pin(password)
6
+ if two_factor_enabled
7
+ suffix = "+" + two_factor_pin
8
+ password += suffix unless password.end_with?(suffix)
9
+ end
10
+ password
11
+ end
12
+
13
+ private
14
+
15
+ def two_factor_enabled
16
+ return config[client_name]["two_factor"] == "true" unless client_name.nil?
17
+ end
18
+
19
+ def two_factor_pin
20
+ @two_factor_pin ||= prompt_for_two_factor_pin if two_factor_enabled
21
+ end
22
+
23
+ def prompt_for_two_factor_pin
24
+ require "highline"
25
+ highline = HighLine.new
26
+ # FIXME: Capture interupts if user aborts
27
+ highline.ask("Enter your two factor pin : ")
28
+ end
29
+ end
30
+ end
31
+ end
@@ -1,3 +1,3 @@
1
1
  module Brightbox
2
- VERSION = "2.10.0" unless defined?(Brightbox::VERSION)
2
+ VERSION = "3.0.0" unless defined?(Brightbox::VERSION)
3
3
  end
@@ -72,6 +72,7 @@ require_relative "brightbox-cli/api"
72
72
  require_relative "brightbox-cli/config/cache"
73
73
  require_relative "brightbox-cli/config/gpg_encrypted_passwords"
74
74
  require_relative "brightbox-cli/config/password_helper"
75
+ require_relative "brightbox-cli/config/two_factor_auth"
75
76
  require_relative "brightbox-cli/config/authentication_tokens"
76
77
  require_relative "brightbox-cli/config/accounts"
77
78
  require_relative "brightbox-cli/config/clients"
@@ -19,7 +19,7 @@ shared_context "collaborating accounts" do
19
19
  "load_balancers_limit" => 5,
20
20
  "load_balancers_used" => 0
21
21
  }
22
- Fog::Compute::Brightbox::Account.new(data)
22
+ Fog::Brightbox::Compute::Account.new(data)
23
23
  end
24
24
 
25
25
  # As returned from conn.user_collaborations.all
@@ -35,7 +35,7 @@ shared_context "collaborating accounts" do
35
35
  "status" => "active"
36
36
  }
37
37
  }
38
- Fog::Compute::Brightbox::UserCollaboration.new(data)
38
+ Fog::Brightbox::Compute::UserCollaboration.new(data)
39
39
  end
40
40
 
41
41
  # As returned from conn.user_collaborations.all
@@ -51,6 +51,6 @@ shared_context "collaborating accounts" do
51
51
  "status" => "active"
52
52
  }
53
53
  }
54
- Fog::Compute::Brightbox::UserCollaboration.new(data)
54
+ Fog::Brightbox::Compute::UserCollaboration.new(data)
55
55
  end
56
56
  end
@@ -13,7 +13,7 @@ describe Brightbox::Account do
13
13
  expect(Brightbox::Account.all).to be_kind_of(Array)
14
14
 
15
15
  Brightbox::Account.all.each do |account|
16
- expect(account).to be_kind_of(Fog::Compute::Brightbox::Account)
16
+ expect(account).to be_kind_of(Fog::Brightbox::Compute::Account)
17
17
  end
18
18
  end
19
19
 
@@ -31,7 +31,7 @@ describe Brightbox::Account do
31
31
  expect(Brightbox::Account.all).to be_kind_of(Array)
32
32
 
33
33
  Brightbox::Account.all.each do |account|
34
- expect(account).to be_kind_of(Fog::Compute::Brightbox::Account)
34
+ expect(account).to be_kind_of(Fog::Brightbox::Compute::Account)
35
35
  end
36
36
  end
37
37
 
@@ -18,7 +18,7 @@ describe Brightbox::Account do
18
18
  end
19
19
 
20
20
  it "returns requested account" do
21
- expect(@account).to be_kind_of(Fog::Compute::Brightbox::Account)
21
+ expect(@account).to be_kind_of(Fog::Brightbox::Compute::Account)
22
22
  expect(@account.id).to eql(@account_id)
23
23
  end
24
24
 
@@ -46,7 +46,7 @@ describe Brightbox::Account do
46
46
  end
47
47
 
48
48
  it "returns the client's owning account" do
49
- expect(@account).to be_kind_of(Fog::Compute::Brightbox::Account)
49
+ expect(@account).to be_kind_of(Fog::Brightbox::Compute::Account)
50
50
  expect(@account.id).to eql(@account_id)
51
51
  end
52
52
 
@@ -7,7 +7,7 @@ describe Brightbox::Api, ".conn" do
7
7
 
8
8
  context "when account is not required", vcr: true do
9
9
  it "returns a 'real' fog compute instance" do
10
- expect(Brightbox::Api.conn).to be_instance_of(Fog::Compute::Brightbox::Real)
10
+ expect(Brightbox::Api.conn).to be_instance_of(Fog::Brightbox::Compute::Real)
11
11
  end
12
12
  end
13
13
  end
@@ -5,7 +5,7 @@ describe Brightbox::CollaboratingAccount do
5
5
  data = {
6
6
  "id" => "acc-12345"
7
7
  }
8
- account_model = Fog::Compute::Brightbox::Account.new(data)
8
+ account_model = Fog::Brightbox::Compute::Account.new(data)
9
9
  Brightbox::CollaboratingAccount.new(account_model)
10
10
  end
11
11
 
@@ -19,7 +19,7 @@ describe Brightbox::ConnectionManager, "#fetch_connection" do
19
19
 
20
20
  context "when not requesting a scoped connection" do
21
21
  it "returns a fog compute instance" do
22
- expect(connection_manager.fetch_connection(false)).to be_kind_of(Fog::Compute::Brightbox::Real)
22
+ expect(connection_manager.fetch_connection(false)).to be_kind_of(Fog::Brightbox::Compute::Real)
23
23
  end
24
24
 
25
25
  it "returns a connection without account scope" do
@@ -2,7 +2,7 @@ require "spec_helper"
2
2
  require "fog/brightbox/models/compute/database_server"
3
3
 
4
4
  describe Brightbox::DatabaseServer, "#cloud_ips" do
5
- let(:fog_model) { Fog::Compute::Brightbox::DatabaseServer.new(fog_settings) }
5
+ let(:fog_model) { Fog::Brightbox::Compute::DatabaseServer.new(fog_settings) }
6
6
  let(:dbs) { described_class.new(fog_model) }
7
7
 
8
8
  context "when attribute is missing" do
@@ -4,7 +4,7 @@ require "fog/brightbox/models/compute/database_server"
4
4
  describe Brightbox::DatabaseServer do
5
5
 
6
6
  describe "#maintenance_window" do
7
- let(:fog_model) { Fog::Compute::Brightbox::DatabaseServer.new(fog_settings) }
7
+ let(:fog_model) { Fog::Brightbox::Compute::DatabaseServer.new(fog_settings) }
8
8
  let(:dbs) { Brightbox::DatabaseServer.new(fog_model) }
9
9
 
10
10
  context "when default values" do
@@ -141,7 +141,7 @@ describe Brightbox::UserCollaboration do
141
141
  # Collection#load is private in fog so we can't just pass our collection
142
142
  # into get the correct object initialised.
143
143
  api_response_data.map do |datum|
144
- Fog::Compute::Brightbox::UserCollaboration.new(datum)
144
+ Fog::Brightbox::Compute::UserCollaboration.new(datum)
145
145
  end
146
146
  end
147
147
  end
@@ -52,6 +52,6 @@ describe Brightbox::UserCollaboration do
52
52
  "email_address" => "marie@example.com"
53
53
  }
54
54
  }
55
- Fog::Compute::Brightbox::UserCollaboration.new(api_response_data)
55
+ Fog::Brightbox::Compute::UserCollaboration.new(api_response_data)
56
56
  end
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: brightbox-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.10.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Leach
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-20 00:00:00.000000000 Z
11
+ date: 1970-01-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fog-brightbox
@@ -16,20 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.16.0
20
- - - "<"
21
- - !ruby/object:Gem::Version
22
- version: '1.0'
19
+ version: 1.1.0
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - ">="
28
25
  - !ruby/object:Gem::Version
29
- version: 0.16.0
30
- - - "<"
31
- - !ruby/object:Gem::Version
32
- version: '1.0'
26
+ version: 1.1.0
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: fog-core
35
29
  requirement: !ruby/object:Gem::Requirement
@@ -128,6 +122,20 @@ dependencies:
128
122
  - - "~>"
129
123
  - !ruby/object:Gem::Version
130
124
  version: '0.6'
125
+ - !ruby/object:Gem::Dependency
126
+ name: dry-inflector
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "<"
130
+ - !ruby/object:Gem::Version
131
+ version: '0.2'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "<"
137
+ - !ruby/object:Gem::Version
138
+ version: '0.2'
131
139
  - !ruby/object:Gem::Dependency
132
140
  name: mocha
133
141
  requirement: !ruby/object:Gem::Requirement
@@ -174,16 +182,16 @@ dependencies:
174
182
  name: rspec
175
183
  requirement: !ruby/object:Gem::Requirement
176
184
  requirements:
177
- - - "~>"
185
+ - - ">="
178
186
  - !ruby/object:Gem::Version
179
- version: '2.99'
187
+ version: '0'
180
188
  type: :development
181
189
  prerelease: false
182
190
  version_requirements: !ruby/object:Gem::Requirement
183
191
  requirements:
184
- - - "~>"
192
+ - - ">="
185
193
  - !ruby/object:Gem::Version
186
- version: '2.99'
194
+ version: '0'
187
195
  - !ruby/object:Gem::Dependency
188
196
  name: vcr
189
197
  requirement: !ruby/object:Gem::Requirement
@@ -363,6 +371,7 @@ files:
363
371
  - lib/brightbox-cli/config/section_name_deduplicator.rb
364
372
  - lib/brightbox-cli/config/sections.rb
365
373
  - lib/brightbox-cli/config/to_fog.rb
374
+ - lib/brightbox-cli/config/two_factor_auth.rb
366
375
  - lib/brightbox-cli/config/user_application.rb
367
376
  - lib/brightbox-cli/connection_manager.rb
368
377
  - lib/brightbox-cli/database_server.rb
@@ -748,15 +757,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
748
757
  requirements:
749
758
  - - ">="
750
759
  - !ruby/object:Gem::Version
751
- version: 1.9.3
760
+ version: '2.0'
752
761
  required_rubygems_version: !ruby/object:Gem::Requirement
753
762
  requirements:
754
763
  - - ">="
755
764
  - !ruby/object:Gem::Version
756
765
  version: '0'
757
766
  requirements: []
758
- rubyforge_project: brightbox-cli
759
- rubygems_version: 2.7.7
767
+ rubygems_version: 3.0.6
760
768
  signing_key:
761
769
  specification_version: 4
762
770
  summary: The Brightbox cloud management system