knife-ec2 0.19.16 → 1.0.1

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.
@@ -26,13 +26,16 @@ class Chef
26
26
  end
27
27
 
28
28
  def body
29
- bucket_obj.files.get(path).body
29
+ bucket_obj.body.string
30
30
  end
31
31
 
32
32
  private
33
33
 
34
34
  def bucket_obj
35
- @bucket_obj ||= fog.directories.get(bucket)
35
+ s3_connection.get_object({
36
+ bucket: bucket,
37
+ key: path,
38
+ })
36
39
  end
37
40
 
38
41
  # @return [URI]
@@ -55,13 +58,28 @@ class Chef
55
58
  end
56
59
  end
57
60
 
58
- # @return [Fog::Storage::AWS]
59
- def fog
60
- require "fog/aws" # lazy load the fog library to speed up the knife run
61
- @fog ||= Fog::Storage::AWS.new(
62
- aws_access_key_id: Chef::Config[:knife][:aws_access_key_id],
63
- aws_secret_access_key: Chef::Config[:knife][:aws_secret_access_key]
64
- )
61
+ def connection_string
62
+ conn = {}
63
+ conn[:region] = Chef::Config[:knife][:region]
64
+ conn[:credentials] =
65
+ if Chef::Config[:knife][:use_iam_profile]
66
+ Aws::InstanceProfileCredentials.new
67
+ else
68
+ Aws::Credentials.new(
69
+ Chef::Config[:knife][:aws_access_key_id],
70
+ Chef::Config[:knife][:aws_secret_access_key],
71
+ Chef::Config[:knife][:aws_session_token]
72
+ )
73
+ end
74
+ conn
75
+ end
76
+
77
+ # @return [Aws::S3::Client]
78
+ def s3_connection
79
+ @s3_connection ||= begin
80
+ require "aws-sdk-s3" # lazy load the aws sdk to speed up the knife run
81
+ Aws::S3::Client.new(connection_string)
82
+ end
65
83
  end
66
84
  end
67
85
  end
@@ -1,6 +1,6 @@
1
1
  module Knife
2
2
  module Ec2
3
- VERSION = "0.19.16".freeze
3
+ VERSION = "1.0.1".freeze
4
4
  MAJOR, MINOR, TINY = VERSION.split(".")
5
5
  end
6
6
  end
metadata CHANGED
@@ -1,54 +1,60 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knife-ec2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.16
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
- - Adam Jacob
8
- - Seth Chisamore
7
+ - Chef Software, Inc.
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2018-12-11 00:00:00.000000000 Z
11
+ date: 2019-07-08 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: fog-aws
14
+ name: chef
16
15
  requirement: !ruby/object:Gem::Requirement
17
16
  requirements:
18
17
  - - ">="
19
18
  - !ruby/object:Gem::Version
20
- version: '1'
21
- - - "<"
22
- - !ruby/object:Gem::Version
23
- version: '4'
19
+ version: '15.1'
24
20
  type: :runtime
25
21
  prerelease: false
26
22
  version_requirements: !ruby/object:Gem::Requirement
27
23
  requirements:
28
24
  - - ">="
29
25
  - !ruby/object:Gem::Version
30
- version: '1'
31
- - - "<"
26
+ version: '15.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: aws-sdk-s3
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.43'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
32
39
  - !ruby/object:Gem::Version
33
- version: '4'
40
+ version: '1.43'
34
41
  - !ruby/object:Gem::Dependency
35
- name: knife-windows
42
+ name: aws-sdk-ec2
36
43
  requirement: !ruby/object:Gem::Requirement
37
44
  requirements:
38
45
  - - "~>"
39
46
  - !ruby/object:Gem::Version
40
- version: '1.0'
47
+ version: '1.95'
41
48
  type: :runtime
42
49
  prerelease: false
43
50
  version_requirements: !ruby/object:Gem::Requirement
44
51
  requirements:
45
52
  - - "~>"
46
53
  - !ruby/object:Gem::Version
47
- version: '1.0'
54
+ version: '1.95'
48
55
  description: Amazon EC2 Support for Chef's Knife Command
49
56
  email:
50
- - adam@chef.io
51
- - schisamo@chef.io
57
+ - info@chef.io
52
58
  executables: []
53
59
  extensions: []
54
60
  extra_rdoc_files: []
@@ -56,10 +62,14 @@ files:
56
62
  - LICENSE
57
63
  - lib/chef/knife/ec2_ami_list.rb
58
64
  - lib/chef/knife/ec2_base.rb
65
+ - lib/chef/knife/ec2_eip_list.rb
59
66
  - lib/chef/knife/ec2_flavor_list.rb
67
+ - lib/chef/knife/ec2_securitygroup_list.rb
60
68
  - lib/chef/knife/ec2_server_create.rb
61
69
  - lib/chef/knife/ec2_server_delete.rb
62
70
  - lib/chef/knife/ec2_server_list.rb
71
+ - lib/chef/knife/ec2_subnet_list.rb
72
+ - lib/chef/knife/ec2_vpc_list.rb
63
73
  - lib/chef/knife/s3_source.rb
64
74
  - lib/knife-ec2/version.rb
65
75
  homepage: https://github.com/chef/knife-ec2
@@ -74,15 +84,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
74
84
  requirements:
75
85
  - - ">="
76
86
  - !ruby/object:Gem::Version
77
- version: '2.3'
87
+ version: '2.5'
78
88
  required_rubygems_version: !ruby/object:Gem::Requirement
79
89
  requirements:
80
90
  - - ">="
81
91
  - !ruby/object:Gem::Version
82
92
  version: '0'
83
93
  requirements: []
84
- rubyforge_project:
85
- rubygems_version: 2.7.6
94
+ rubygems_version: 3.0.3
86
95
  signing_key:
87
96
  specification_version: 4
88
97
  summary: Amazon EC2 Support for Chef's Knife Command