knife-openstack 2.1.7 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a2a2d48a5b5ac264c9693312144b757c2503b2a1b3b5c753e95ac26bac56dacd
4
- data.tar.gz: ef663091c0af5196958e52476a08cc2fb90a795f6f78d4ab188a257139c0c22a
3
+ metadata.gz: 8a0a494c472a119c0db28580e1ad74a9d0c960c3807b9f540a3f45f1a0b6232c
4
+ data.tar.gz: 8f34cfec9f7c1dfc7a3e37ee73d54b2b9b722ed34ce580dffce643de0601deb2
5
5
  SHA512:
6
- metadata.gz: 38175ab08d67e201464005acf13f2bbaecf89596b9b153075d489798a1bb7d1d50e5d78bef3430a7ff9a81707e377e47807de236c8e0c6c2b15ac6c154b97513
7
- data.tar.gz: 6ac31de76145bfcd50d0ad0d3d5372d702fdc64872b50734196d3fb5757875d0421e8c8b56ced7f2a2a83af3fd1fee6597e97ba1b10a3fcdf275c67abf2de91e
6
+ metadata.gz: db644b4289393460a84eee7f529f0b019eb38c832157e18fff91bc767605b3f8e8f245061d5417f2f7e02d4464f000fbcc4e04dd3eaa9ec1a8ddf7abc54c815b
7
+ data.tar.gz: 7c63fc2bf298afccbc34d867b35518aec9e831858a9217cdd51d4b0f4c61b065e352ab86fb489ea27ba04274e14d220d387825d02f864488cff4692ec88cc568
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright:: Copyright 2018 Chef Software, Inc.
2
+ # Copyright:: Copyright (c) Chef Software Inc.
3
3
  # License:: Apache License, Version 2.0
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -45,8 +45,7 @@ class Chef
45
45
 
46
46
  option :openstack_scheduler_hints,
47
47
  long: "--scheduler-hints HINTS",
48
- description: "A scheduler group hint to OpenStack",
49
- proc: proc { |i| Chef::Config[:knife][:openstack_scheduler_hints] = i }
48
+ description: "A scheduler group hint to OpenStack"
50
49
 
51
50
  option :openstack_security_groups,
52
51
  short: "-G X,Y,Z",
@@ -58,8 +57,7 @@ class Chef
58
57
  option :openstack_ssh_key_id,
59
58
  short: "-S KEY",
60
59
  long: "--openstack-ssh-key-id KEY",
61
- description: "The OpenStack SSH keypair id",
62
- proc: proc { |key| Chef::Config[:knife][:openstack_ssh_key_id] = key }
60
+ description: "The OpenStack SSH keypair id"
63
61
 
64
62
  option :user_data,
65
63
  long: "--user-data USER_DATA",
@@ -85,24 +83,24 @@ class Chef
85
83
  option :availability_zone,
86
84
  short: "-Z ZONE_NAME",
87
85
  long: "--availability-zone ZONE_NAME",
88
- description: "The availability zone for this server",
89
- proc: proc { |z| Chef::Config[:knife][:availability_zone] = z }
86
+ description: "The availability zone for this server"
90
87
 
91
88
  option :metadata,
92
89
  short: "-M X=1",
93
90
  long: "--metadata X=1",
94
91
  description: "Metadata information for this server (may pass multiple times)",
95
- proc: proc { |data| Chef::Config[:knife][:metadata] ||= {}; Chef::Config[:knife][:metadata].merge!(data.split("=")[0] => data.split("=")[1]) }
92
+ proc: proc { |data, accumulator|
93
+ accumulator ||= {}
94
+ accumulator.merge!(data.split("=")[0] => data.split("=")[1])
95
+ }
96
96
 
97
97
  option :secret_file,
98
98
  long: "--secret-file SECRET_FILE",
99
- description: "A file containing the secret key to use to encrypt data bag item values",
100
- proc: proc { |sf| Chef::Config[:knife][:secret_file] = sf }
99
+ description: "A file containing the secret key to use to encrypt data bag item values"
101
100
 
102
101
  option :secret,
103
102
  long: "--secret ",
104
- description: "The secret key to use to encrypt data bag item values",
105
- proc: proc { |s| Chef::Config[:knife][:secret] = s }
103
+ description: "The secret key to use to encrypt data bag item values"
106
104
  end
107
105
  end
108
106
  end
@@ -1,7 +1,8 @@
1
1
  #
2
2
  # Author:: Siddheshwar More (<siddheshwar.more@clogeny.com>)
3
3
  # Author:: Kaustubh Deorukhkar (<kaustubh@clogeny.com>)
4
- # Copyright:: Copyright 2013-2018 Chef Software, Inc.
4
+ # Author:: Lance Albertson(<lance@osuosl.org>)
5
+ # Copyright:: Copyright (c) Chef Software Inc.
5
6
  # License:: Apache License, Version 2.0
6
7
  #
7
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,25 +19,28 @@
18
19
  #
19
20
 
20
21
  require "chef/knife/cloud/fog/service"
22
+ require "fog/openstack"
21
23
 
22
24
  class Chef
23
25
  class Knife
24
26
  class Cloud
25
27
  class OpenstackService < FogService
26
- def initialize(options = {})
27
- Chef::Log.debug("openstack_username #{Chef::Config[:knife][:openstack_username]}")
28
- Chef::Log.debug("openstack_auth_url #{Chef::Config[:knife][:openstack_auth_url]}")
29
- Chef::Log.debug("openstack_tenant #{Chef::Config[:knife][:openstack_tenant]}")
30
- Chef::Log.debug("openstack_endpoint_type #{Chef::Config[:knife][:openstack_endpoint_type] || "publicURL"}")
31
- Chef::Log.debug("openstack_insecure #{Chef::Config[:knife][:openstack_insecure]}")
32
- Chef::Log.debug("openstack_region #{Chef::Config[:knife][:openstack_region]}")
28
+ def initialize(config:, **kwargs)
29
+ super(config: config, **kwargs)
33
30
 
34
- super(options.merge(auth_params: get_auth_params))
31
+ Chef::Log.debug("openstack_username #{config[:openstack_username]}")
32
+ Chef::Log.debug("openstack_auth_url #{config[:openstack_auth_url]}")
33
+ Chef::Log.debug("openstack_tenant #{config[:openstack_tenant]}")
34
+ Chef::Log.debug("openstack_endpoint_type #{config[:openstack_endpoint_type] || "publicURL"}")
35
+ Chef::Log.debug("openstack_insecure #{config[:openstack_insecure]}")
36
+ Chef::Log.debug("openstack_region #{config[:openstack_region]}")
37
+
38
+ @auth_params = get_auth_params
35
39
  end
36
40
 
37
41
  # add alternate user defined api_endpoint value.
38
42
  def add_api_endpoint
39
- @auth_params.merge!(openstack_auth_url: Chef::Config[:knife][:api_endpoint]) unless Chef::Config[:knife][:api_endpoint].nil?
43
+ @auth_params.merge!(openstack_auth_url: config[:api_endpoint]) unless config[:api_endpoint].nil?
40
44
  end
41
45
 
42
46
  def get_server(search_term)
@@ -58,24 +62,23 @@ class Chef
58
62
  end
59
63
 
60
64
  def get_auth_params
61
- load_fog_gem
62
65
  params = {
63
66
  provider: "OpenStack",
64
67
  connection_options: {
65
- ssl_verify_peer: !Chef::Config[:knife][:openstack_insecure],
68
+ ssl_verify_peer: !config[:openstack_insecure],
66
69
  },
67
70
  }
68
71
 
69
72
  (
70
- Fog::Compute::OpenStack.requirements +
71
- Fog::Compute::OpenStack.recognized -
73
+ Fog::OpenStack::Compute.requirements +
74
+ Fog::OpenStack::Compute.recognized -
72
75
  [:openstack_api_key]
73
76
  ).each do |k|
74
77
  next unless k.to_s.start_with?("openstack")
75
78
 
76
- params[k] = Chef::Config[:knife][k]
79
+ params[k] = config[k]
77
80
  end
78
- params[:openstack_api_key] = Chef::Config[:knife][:openstack_password] || Chef::Config[:knife][:openstack_api_key]
81
+ params[:openstack_api_key] = config[:openstack_password] || config[:openstack_api_key]
79
82
 
80
83
  params
81
84
  end
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright:: Copyright 2018 Chef Software, Inc.
2
+ # Copyright:: Copyright (c) Chef Software Inc.
3
3
  # License:: Apache License, Version 2.0
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -27,37 +27,31 @@ class Chef
27
27
  option :openstack_username,
28
28
  short: "-A USERNAME",
29
29
  long: "--openstack-username KEY",
30
- description: "Your OpenStack Username",
31
- proc: proc { |key| Chef::Config[:knife][:openstack_username] = key }
30
+ description: "Your OpenStack Username"
32
31
 
33
32
  option :openstack_password,
34
33
  short: "-K SECRET",
35
34
  long: "--openstack-password SECRET",
36
- description: "Your OpenStack Password",
37
- proc: proc { |key| Chef::Config[:knife][:openstack_password] = key }
35
+ description: "Your OpenStack Password"
38
36
 
39
37
  option :openstack_tenant,
40
38
  short: "-T NAME",
41
39
  long: "--openstack-tenant NAME",
42
- description: "Your OpenStack Tenant NAME",
43
- proc: proc { |key| Chef::Config[:knife][:openstack_tenant] = key }
40
+ description: "Your OpenStack Tenant NAME"
44
41
 
45
42
  option :openstack_auth_url,
46
43
  long: "--openstack-api-endpoint ENDPOINT",
47
- description: "Your OpenStack API endpoint",
48
- proc: proc { |endpoint| Chef::Config[:knife][:openstack_auth_url] = endpoint }
44
+ description: "Your OpenStack API endpoint"
49
45
 
50
46
  option :openstack_endpoint_type,
51
47
  long: "--openstack-endpoint-type ENDPOINT_TYPE",
52
- description: "OpenStack endpoint type to use (publicURL, internalURL, adminURL)",
53
- proc: proc { |type| Chef::Config[:knife][:openstack_endpoint_type] = type }
48
+ description: "OpenStack endpoint type to use (publicURL, internalURL, adminURL)"
54
49
 
55
50
  option :openstack_insecure,
56
51
  long: "--insecure",
57
52
  description: "Ignore SSL certificate on the Auth URL",
58
53
  boolean: true,
59
- default: false,
60
- proc: proc { |key| Chef::Config[:knife][:openstack_insecure] = key }
54
+ default: false
61
55
  end
62
56
  end
63
57
  end
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Prabhu Das (<prabhu.das@clogeny.com>)
3
- # Copyright:: Copyright 2014-2018 Chef Software, Inc.
3
+ # Copyright:: Copyright 2014-2020 Chef Software, Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Vasundhara Jagdale (<vasundhara.jagdale@clogeny.com>)
3
- # Copyright:: Copyright 2015-2018 Chef Software, Inc.
3
+ # Copyright:: Copyright (c) Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -32,11 +32,10 @@ class Chef
32
32
  option :pool,
33
33
  short: "-p POOL",
34
34
  long: "--pool POOL",
35
- description: "Floating IP pool to allocate from.",
36
- proc: proc { |key| Chef::Config[:knife][:pool] = key }
35
+ description: "Floating IP pool to allocate from."
37
36
 
38
37
  def execute_command
39
- @resource = @service.allocate_address(locate_config_value(:pool))
38
+ @resource = @service.allocate_address(config[:pool])
40
39
  end
41
40
 
42
41
  def after_exec_command
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Vasundhara Jagdale (<vasundhara.jagdale@clogeny.com>)
3
- # Copyright:: Copyright 2015-2018 Chef Software, Inc.
3
+ # Copyright:: Copyright (c) Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -33,7 +33,6 @@ class Chef
33
33
  option :instance_id,
34
34
  long: "--instance-id ID",
35
35
  description: "Instance id to associate it with.",
36
- proc: proc { |key| Chef::Config[:knife][:instance_id] = key },
37
36
  required: true
38
37
 
39
38
  def execute_command
@@ -44,9 +43,9 @@ class Chef
44
43
  exit 1
45
44
  end
46
45
 
47
- response = @service.associate_address(locate_config_value(:instance_id), floating_ip)
46
+ response = @service.associate_address(config[:instance_id], floating_ip)
48
47
  if response && response.status == 202
49
- ui.info "Floating IP #{floating_ip} associated with Instance #{locate_config_value(:instance_id)}"
48
+ ui.info "Floating IP #{floating_ip} associated with Instance #{config[:instance_id]}"
50
49
  end
51
50
  end
52
51
  end
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Vasundhara Jagdale (<vasundhara.jagdale@clogeny.com>)
3
- # Copyright:: Copyright 2015-2018 Chef Software, Inc.
3
+ # Copyright:: Copyright (c) Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -33,7 +33,6 @@ class Chef
33
33
  option :instance_id,
34
34
  long: "--instance-id ID",
35
35
  description: "Instance id to disassociate with.",
36
- proc: proc { |key| Chef::Config[:knife][:instance_id] = key },
37
36
  required: true
38
37
 
39
38
  def execute_command
@@ -44,9 +43,9 @@ class Chef
44
43
  exit 1
45
44
  end
46
45
 
47
- response = @service.disassociate_address(locate_config_value(:instance_id), floating_ip)
46
+ response = @service.disassociate_address(config[:instance_id], floating_ip)
48
47
  if response && response.status == 202
49
- ui.info "Floating IP #{floating_ip} disassociated with Instance #{locate_config_value(:instance_id)}"
48
+ ui.info "Floating IP #{floating_ip} disassociated with Instance #{config[:instance_id]}"
50
49
  end
51
50
  end
52
51
  end
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Vasundhara Jagdale (<vasundhara.jagdale@clogeny.com>)
3
- # Copyright:: Copyright 2015-2018 Chef Software, Inc.
3
+ # Copyright:: Copyright 2015-2020 Chef Software, Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Vasundhara Jagdale (<vasundhara.jagdale@clogeny.com>)
3
- # Copyright:: Copyright 2015-2018 Chef Software, Inc.
3
+ # Copyright:: Copyright 2015-2020 Chef Software, Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright:: Copyright 2018 Chef Software, Inc.
2
+ # Copyright:: Copyright (c) Chef Software Inc.
3
3
  # License:: Apache License, Version 2.0
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -34,7 +34,7 @@ class Chef
34
34
  end
35
35
 
36
36
  def create_service_instance
37
- OpenstackService.new
37
+ OpenstackService.new(config: config)
38
38
  end
39
39
 
40
40
  def validate!
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Prabhu Das (<prabhu.das@clogeny.com>)
3
- # Copyright:: Copyright 2014-2018 Chef Software, Inc.
3
+ # Copyright:: Copyright 2014-2020 Chef Software, Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Prabhu Das (<prabhu.das@clogeny.com>)
3
- # Copyright:: Copyright 2014-2018 Chef Software, Inc.
3
+ # Copyright:: Copyright 2014-2020 Chef Software, Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -2,7 +2,8 @@
2
2
  # Author:: Seth Chisamore (<schisamo@chef.io>)
3
3
  # Author:: Matt Ray (<matt@chef.io>)
4
4
  # Author:: Chirag Jog (<chirag@clogeny.com>)
5
- # Copyright:: Copyright 2011-2018 Chef Software, Inc.
5
+ # Author:: Lance Albertson (<lance@osuosl.org>)
6
+ # Copyright:: Copyright (c) Chef Software Inc.
6
7
  # License:: Apache License, Version 2.0
7
8
  #
8
9
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -42,19 +43,19 @@ class Chef
42
43
  server_def: {
43
44
  # servers require a name, knife-cloud generates the chef_node_name
44
45
  :name => config[:chef_node_name],
45
- :image_ref => service.get_image(locate_config_value(:image)).id,
46
- :flavor_ref => service.get_flavor(locate_config_value(:flavor)).id,
47
- :security_groups => locate_config_value(:openstack_security_groups),
48
- :availability_zone => locate_config_value(:availability_zone),
49
- "os:scheduler_hints" => locate_config_value(:openstack_scheduler_hints),
50
- :metadata => locate_config_value(:metadata),
51
- :key_name => locate_config_value(:openstack_ssh_key_id),
46
+ :image_ref => service.get_image(config[:image]).id,
47
+ :flavor_ref => service.get_flavor(config[:flavor]).id,
48
+ :security_groups => config[:openstack_security_groups],
49
+ :availability_zone => config[:availability_zone],
50
+ "os:scheduler_hints" => config[:openstack_scheduler_hints],
51
+ :metadata => config[:metadata],
52
+ :key_name => config[:openstack_ssh_key_id],
52
53
  },
53
- server_create_timeout: locate_config_value(:server_create_timeout),
54
+ server_create_timeout: config[:server_create_timeout],
54
55
  }
55
- unless locate_config_value(:openstack_volumes).nil?
56
+ unless config[:openstack_volumes].nil?
56
57
  counter = 99
57
- @create_options[:server_def][:block_device_mapping] = locate_config_value(:openstack_volumes).map do |vol|
58
+ @create_options[:server_def][:block_device_mapping] = config[:openstack_volumes].map do |vol|
58
59
  counter += 1
59
60
  {
60
61
  volume_id: vol,
@@ -65,8 +66,8 @@ class Chef
65
66
  end
66
67
  end
67
68
 
68
- @create_options[:server_def][:user_data] = locate_config_value(:user_data) if locate_config_value(:user_data)
69
- @create_options[:server_def][:nics] = locate_config_value(:network_ids).map { |nic| nic_id = { "net_id" => nic } } if locate_config_value(:network_ids)
69
+ @create_options[:server_def][:user_data] = config[:user_data] if config[:user_data]
70
+ @create_options[:server_def][:nics] = config[:network_ids].map { |nic| nic_id = { "net_id" => nic } } if config[:network_ids]
70
71
 
71
72
  Chef::Log.debug("Create server params - server_def = #{@create_options[:server_def]}")
72
73
  # set columns_with_info map
@@ -93,7 +94,7 @@ class Chef
93
94
  msg_pair("Public IP Address", primary_public_ip_address(server.addresses)) if primary_public_ip_address(server.addresses)
94
95
  msg_pair("Private IP Address", primary_private_ip_address(server.addresses)) if primary_private_ip_address(server.addresses)
95
96
 
96
- floating_address = locate_config_value(:openstack_floating_ip)
97
+ floating_address = config[:openstack_floating_ip]
97
98
  bind_ip = primary_network_ip_address(server.addresses, server.addresses.keys[0])
98
99
  Chef::Log.debug("Floating IP Address requested #{floating_address}")
99
100
  unless floating_address == "-1" # no floating IP requested
@@ -139,10 +140,10 @@ class Chef
139
140
  super
140
141
 
141
142
  # Use SSH password either specified from command line or from openstack server instance
142
- config[:ssh_password] = locate_config_value(:ssh_password) || server.password unless config[:openstack_ssh_key_id]
143
+ config[:ssh_password] = config[:ssh_password] || server.password unless config[:openstack_ssh_key_id]
143
144
 
144
- # The bootstrap network is always initialised to 'public' when a network name isn't specified. Therefore,
145
- # only set the bootstrap network to 'private' if still initialised to public and nothing was specified for
145
+ # The bootstrap network is always initialized to 'public' when a network name isn't specified. Therefore,
146
+ # only set the bootstrap network to 'private' if still initialized to public and nothing was specified for
146
147
  # the private network name.
147
148
  config[:bootstrap_network] = "private" if config[:private_network] && config[:bootstrap_network] == "public"
148
149
 
@@ -171,33 +172,33 @@ class Chef
171
172
 
172
173
  def validate_params!
173
174
  # set param vm_name to a random value if the name is not set by the user (plugin)
174
- config[:chef_node_name] = get_node_name(locate_config_value(:chef_node_name), locate_config_value(:chef_node_name_prefix))
175
+ config[:chef_node_name] = get_node_name(config[:chef_node_name], config[:chef_node_name_prefix])
175
176
 
176
177
  errors = []
177
178
 
178
- if locate_config_value(:bootstrap_protocol) == "winrm"
179
- if locate_config_value(:winrm_password).nil?
180
- errors << "You must provide Winrm Password."
179
+ if config[:connection_protocol] == "winrm"
180
+ if config[:connection_password].nil?
181
+ errors << "You must provide Connection Password."
181
182
  end
182
- elsif locate_config_value(:bootstrap_protocol) != "ssh"
183
+ elsif config[:connection_protocol] != "ssh"
183
184
  errors << "You must provide a valid bootstrap protocol. options [ssh/winrm]. For linux type images, options [ssh]"
184
185
  end
185
186
 
186
- errors << "You must provide --image-os-type option [windows/linux]" unless %w{windows linux}.include?(locate_config_value(:image_os_type))
187
+ errors << "You must provide --image-os-type option [windows/linux]" unless %w{windows linux}.include?(config[:image_os_type])
187
188
  error_message = ""
188
189
  raise CloudExceptions::ValidationError, error_message if errors.each { |e| ui.error(e); error_message = "#{error_message} #{e}." }.any?
189
190
  end
190
191
 
191
192
  def is_image_valid?
192
- service.get_image(locate_config_value(:image)).nil? ? false : true
193
+ service.get_image(config[:image]).nil? ? false : true
193
194
  end
194
195
 
195
196
  def is_flavor_valid?
196
- service.get_flavor(locate_config_value(:flavor)).nil? ? false : true
197
+ service.get_flavor(config[:flavor]).nil? ? false : true
197
198
  end
198
199
 
199
200
  def is_floating_ip_valid?
200
- address = locate_config_value(:openstack_floating_ip)
201
+ address = config[:openstack_floating_ip]
201
202
 
202
203
  return true if address == "-1" # no floating IP requested
203
204
 
@@ -207,16 +208,16 @@ class Chef
207
208
  # floating requested without value
208
209
  if address.nil?
209
210
  if addresses.find_index { |a| a.fixed_ip.nil? }
210
- return true
211
+ true
211
212
  else
212
- return false # no floating IPs available
213
+ false # no floating IPs available
213
214
  end
214
215
  else
215
216
  # floating requested with value
216
217
  if addresses.find_index { |a| a.ip == address }
217
- return true
218
+ true
218
219
  else
219
- return false # requested floating IP does not exist
220
+ false # requested floating IP does not exist
220
221
  end
221
222
  end
222
223
  end
@@ -1,7 +1,7 @@
1
1
  #
2
2
  # Author:: Siddheshwar More (<siddheshwar.more@clogeny.com>)
3
3
  # Author:: Kaustubh Deorukhkar (<kaustubh@clogeny.com>)
4
- # Copyright:: Copyright 2013-2018 Chef Software, Inc.
4
+ # Copyright:: Copyright 2013-2020 Chef Software, Inc.
5
5
  # License:: Apache License, Version 2.0
6
6
  #
7
7
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -3,7 +3,7 @@
3
3
  # Author:: Matt Ray (<matt@chef.io>)
4
4
  # Author:: Chirag Jog (<chirag@clogeny.com>)
5
5
  # Author:: Prabhu Das (<prabhu.das@clogeny.com>)
6
- # Copyright:: Copyright 2011-2018 Chef Software, Inc.
6
+ # Copyright:: Copyright 2011-2020 Chef Software, Inc.
7
7
  # License:: Apache License, Version 2.0
8
8
  #
9
9
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright:: Copyright 2011-2018 Chef Software, Inc.
2
+ # Copyright:: Copyright 2011-2020 Chef Software, Inc.
3
3
  # License:: Apache License, Version 2.0
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -2,7 +2,8 @@
2
2
  # Author:: Seth Chisamore (<schisamo@chef.io>)
3
3
  # Author:: Matt Ray (<matt@chef.io>)
4
4
  # Author:: Evan Felix (<karcaw@gmail.com>)
5
- # Copyright:: Copyright 2011-2018 Chef Software, Inc.
5
+ # Author:: Lance Albertson (<lance@osuosl.org>)
6
+ # Copyright:: Copyright 2011-2020 Chef Software, Inc.
6
7
  # License:: Apache License, Version 2.0
7
8
  #
8
9
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -33,7 +34,7 @@ class Chef
33
34
  banner "knife openstack volume list (options)"
34
35
 
35
36
  def query_resource
36
- @service.connection.volumes
37
+ @service.connection.volumes.all({})
37
38
  rescue Excon::Errors::BadRequest => e
38
39
  response = Chef::JSONCompat.from_json(e.response.body)
39
40
  ui.fatal("Unknown server error (#{response["badRequest"]["code"]}): #{response["badRequest"]["message"]}")
@@ -1,7 +1,7 @@
1
1
  #
2
2
  module Knife
3
3
  module OpenStack
4
- VERSION = "2.1.7".freeze
4
+ VERSION = "5.0.0".freeze
5
5
  MAJOR, MINOR, TINY = VERSION.split(".")
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,64 +1,58 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knife-openstack
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.7
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - JJ Asghar
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-30 00:00:00.000000000 Z
11
+ date: 2021-07-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: fog
14
+ name: fog-openstack
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.23'
19
+ version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.23'
26
+ version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: chef
28
+ name: knife-cloud
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '13'
33
+ version: '4.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '13'
40
+ version: '4.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: knife-cloud
42
+ name: knife
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 1.2.0
48
- - - "<"
49
- - !ruby/object:Gem::Version
50
- version: '3.0'
47
+ version: '17.0'
51
48
  type: :runtime
52
49
  prerelease: false
53
50
  version_requirements: !ruby/object:Gem::Requirement
54
51
  requirements:
55
52
  - - ">="
56
53
  - !ruby/object:Gem::Version
57
- version: 1.2.0
58
- - - "<"
59
- - !ruby/object:Gem::Version
60
- version: '3.0'
61
- description: A Chef knife plugin for OpenStack clouds.
54
+ version: '17.0'
55
+ description: A Chef Infra knife plugin for OpenStack clouds.
62
56
  email:
63
57
  - jj@chef.io
64
58
  executables: []
@@ -97,15 +91,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
97
91
  requirements:
98
92
  - - ">="
99
93
  - !ruby/object:Gem::Version
100
- version: '2.3'
94
+ version: '2.7'
101
95
  required_rubygems_version: !ruby/object:Gem::Requirement
102
96
  requirements:
103
97
  - - ">="
104
98
  - !ruby/object:Gem::Version
105
99
  version: '0'
106
100
  requirements: []
107
- rubygems_version: 3.0.3
101
+ rubygems_version: 3.1.4
108
102
  signing_key:
109
103
  specification_version: 4
110
- summary: A Chef knife plugin for OpenStack clouds.
104
+ summary: A Chef Infra knife plugin for OpenStack clouds.
111
105
  test_files: []