cobbler 2.0.2 → 2.0.3

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
  SHA512:
3
- data.tar.gz: 24e1e5cfa835de1c54d3c9e0706cf21dc0506ec7f8ac2bc9beced12a68ea498b8fb28ee4f97e512d61edb622318ee5ff9e52a02b5b79e868226674b6a457fe7a
4
- metadata.gz: 8565605df4e39ae5aa7e069a029e420e41b5edb1a5436dfc917a91bede2aacb4949a63acf8549ff87bf0724983ae202845e44be3a778a98563d91bddc59a8e9c
3
+ data.tar.gz: 63a2bf4f191921f4edc3ff20e7198f0b450de120e8a89cb7eb5f567b09d538c9a4cf059c17c64207ff16cbcab7600afb36856511434be7654e3428b59b8b10e7
4
+ metadata.gz: 48a3a3a1fe972ba74771ec51536896e6c383138c7a4528855edebbc41a78e1a1d9f390f7fce7f2874ceb37ee4a5bd3a51e065013c6deff21f33f8224cb397abb
5
5
  SHA1:
6
- data.tar.gz: 553b175cc8cc5d21003843e58d1b1a4984302771
7
- metadata.gz: 264878c6be7a05856884705c746bf937de70a236
6
+ data.tar.gz: 1aa8159cf3d1ab92aa934c97384476f8d58395ed
7
+ metadata.gz: 5ab6018172c562e17fa1240e488d33a765e56251
data/Gemfile CHANGED
@@ -6,10 +6,12 @@ source "http://rubygems.org"
6
6
  if RUBY_VERSION < "1.9"
7
7
  gem 'activesupport', '~> 3.1.12'
8
8
  gem 'nokogiri', '~> 1.5.0'
9
+ gem 'highline', '~> 1.6.21'
10
+ gem 'i18n', '~> 0.6.11'
9
11
  else
10
12
  gem 'activesupport'
13
+ gem 'i18n'
11
14
  end
12
- gem 'i18n'
13
15
 
14
16
  # Add dependencies to develop your gem here.
15
17
  # Include everything needed to run rake, tests, features, etc.
data/Rakefile CHANGED
@@ -37,7 +37,7 @@ require 'cobbler'
37
37
  Jeweler::Tasks.new do |gem|
38
38
  # gem is a Gem::Specification... see http://docgem.rubygems.org/read/chapter/20 for more options
39
39
  gem.name = 'cobbler'
40
- gem.version = "2.0.2"
40
+ gem.version = "2.0.3"
41
41
  gem.author = 'duritong'
42
42
  gem.email = 'peter.meier@immerda.ch'
43
43
  gem.homepage = 'http://github.com/duritong/ruby-cobbler/'
@@ -66,7 +66,7 @@ task :default => :spec
66
66
  gem 'rdoc'
67
67
  require 'rdoc/task'
68
68
  RDoc::Task.new do |rdoc|
69
- version = '2.0.2'
69
+ version = '2.0.3'
70
70
  rdoc.rdoc_dir = 'rdoc'
71
71
  rdoc.title = "cobbler #{version}"
72
72
  rdoc.rdoc_files.include('README*')
@@ -2,16 +2,14 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: cobbler 2.0.2 ruby lib
6
5
 
7
6
  Gem::Specification.new do |s|
8
7
  s.name = "cobbler"
9
- s.version = "2.0.2"
8
+ s.version = "2.0.3"
10
9
 
11
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
- s.require_paths = ["lib"]
13
11
  s.authors = ["duritong"]
14
- s.date = "2014-06-27"
12
+ s.date = "2015-06-05"
15
13
  s.description = " Provides Ruby bindings to interact with a Cobbler server.\n"
16
14
  s.email = "peter.meier@immerda.ch"
17
15
  s.extra_rdoc_files = [
@@ -59,7 +57,8 @@ Gem::Specification.new do |s|
59
57
  ]
60
58
  s.homepage = "http://github.com/duritong/ruby-cobbler/"
61
59
  s.licenses = ["GPLv2"]
62
- s.rubygems_version = "2.3.0"
60
+ s.require_paths = ["lib"]
61
+ s.rubygems_version = "2.0.15"
63
62
  s.summary = "An interface for interacting with a Cobbler server."
64
63
 
65
64
  if s.respond_to? :specification_version then
@@ -68,7 +67,8 @@ Gem::Specification.new do |s|
68
67
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
69
68
  s.add_runtime_dependency(%q<activesupport>, ["~> 3.1.12"])
70
69
  s.add_runtime_dependency(%q<nokogiri>, ["~> 1.5.0"])
71
- s.add_runtime_dependency(%q<i18n>, [">= 0"])
70
+ s.add_runtime_dependency(%q<highline>, ["~> 1.6.21"])
71
+ s.add_runtime_dependency(%q<i18n>, ["~> 0.6.11"])
72
72
  s.add_development_dependency(%q<rspec>, ["~> 2.5.0"])
73
73
  s.add_development_dependency(%q<rdoc>, ["~> 3.8"])
74
74
  s.add_development_dependency(%q<mocha>, ["~> 0.10.0"])
@@ -78,7 +78,8 @@ Gem::Specification.new do |s|
78
78
  else
79
79
  s.add_dependency(%q<activesupport>, ["~> 3.1.12"])
80
80
  s.add_dependency(%q<nokogiri>, ["~> 1.5.0"])
81
- s.add_dependency(%q<i18n>, [">= 0"])
81
+ s.add_dependency(%q<highline>, ["~> 1.6.21"])
82
+ s.add_dependency(%q<i18n>, ["~> 0.6.11"])
82
83
  s.add_dependency(%q<rspec>, ["~> 2.5.0"])
83
84
  s.add_dependency(%q<rdoc>, ["~> 3.8"])
84
85
  s.add_dependency(%q<mocha>, ["~> 0.10.0"])
@@ -89,7 +90,8 @@ Gem::Specification.new do |s|
89
90
  else
90
91
  s.add_dependency(%q<activesupport>, ["~> 3.1.12"])
91
92
  s.add_dependency(%q<nokogiri>, ["~> 1.5.0"])
92
- s.add_dependency(%q<i18n>, [">= 0"])
93
+ s.add_dependency(%q<highline>, ["~> 1.6.21"])
94
+ s.add_dependency(%q<i18n>, ["~> 0.6.11"])
93
95
  s.add_dependency(%q<rspec>, ["~> 2.5.0"])
94
96
  s.add_dependency(%q<rdoc>, ["~> 3.8"])
95
97
  s.add_dependency(%q<mocha>, ["~> 0.10.0"])
@@ -3,3 +3,5 @@
3
3
  hostname: localhost
4
4
  username: cobbler
5
5
  password: cobbler
6
+ secure: false
7
+ timeout: 30
@@ -30,6 +30,6 @@ require 'cobbler/system'
30
30
 
31
31
  module Cobbler
32
32
 
33
- VERSION = '2.0.0'
33
+ VERSION = '2.0.3'
34
34
 
35
35
  end
@@ -37,7 +37,7 @@ module Cobbler
37
37
 
38
38
  # Set hostname, username, password for the Cobbler server, overriding any settings
39
39
  # from cobbler.yml.
40
- mattr_accessor :hostname, :username, :password
40
+ mattr_accessor :hostname, :username, :password, :secure, :verify_ssl, :timeout
41
41
 
42
42
  # Returns the version for the remote cobbler instance.
43
43
  def remote_version
@@ -81,12 +81,15 @@ module Cobbler
81
81
  protected
82
82
  # Returns a connection to the Cobbler server.
83
83
  def connect
84
- debug("Connecting to http://#{hostname}/cobbler_api")
85
- @connection = XMLRPC::Client.new2("http://#{hostname}/cobbler_api").tap do |client|
84
+ debug("Connecting to #{protocol}://#{hostname}/cobbler_api")
85
+ @connection = XMLRPC::Client.new2("#{protocol}://#{hostname}/cobbler_api",nil,timeout).tap do |client|
86
86
  client.http_header_extra = { 'Accept-Encoding' => 'identity' } if client.respond_to?(:http_header_extra=)
87
+ if secure && no_verify_ssl
88
+ client.instance_variable_get(:@http).instance_variable_set(:@verify_mode, OpenSSL::SSL::VERIFY_NONE)
89
+ end
87
90
  end
88
91
  end
89
-
92
+
90
93
  private
91
94
  # Establishes a connection with the Cobbler system.
92
95
  def begin_transaction
@@ -105,6 +108,18 @@ module Cobbler
105
108
  properties && !properties.empty? && properties != '~'
106
109
  end
107
110
 
111
+ def protocol
112
+ secure ? "https" : "http"
113
+ end
114
+
115
+ def no_verify_ssl
116
+ if verify_ssl == false
117
+ true
118
+ else
119
+ false
120
+ end
121
+ end
122
+
108
123
  end
109
124
  end
110
125
  end
@@ -25,7 +25,7 @@
25
25
  module Cobbler
26
26
  class System < Base
27
27
  cobbler_fields :name, :profile, :image, :kickstart, :netboot_enabled, :server, :virt_cpus,
28
- :virt_file_size, :virt_path, :virt_ram, :virt_auto_boot, :virt_type, :gateway, :hostname
28
+ :virt_file_size, :virt_path, :virt_ram, :virt_auto_boot, :virt_type, :gateway, :hostname, :timeout
29
29
 
30
30
  cobbler_collection :kernel_options, :packing => :hash
31
31
  cobbler_collection :ks_meta, :packing => :hash, :store => :store_ksmeta
@@ -12,7 +12,8 @@ end
12
12
  def with_real_cobbler(calzz,&blk)
13
13
  unless ENV['NO_REAL_COBBLER'] == '1'
14
14
  config = (ENV['COBBLER_YML'] || File.expand_path(File.join(File.dirname(__FILE__),'..','config','cobbler.yml')))
15
- if File.exist?(config) && (yml = YAML::load(File.open(config))) && (yml['hostname'] && yml['username'] && yml['password'])
15
+ if File.exist?(config) && (yml = YAML::load(File.open(config))) && (yml['hostname'] && yml['username'] && \
16
+ yml['password'] && yml['secure'])
16
17
  yield(yml)
17
18
  else
18
19
  puts "No cobbler data found."
@@ -40,6 +40,7 @@ describe Cobbler::Connection::Common do
40
40
  TestConnection.hostname = yml['hostname']
41
41
  TestConnection.username = yml['username']
42
42
  TestConnection.password = yml['password']
43
+ TestConnection.timeout = yml['timeout']
43
44
  end
44
45
 
45
46
  it "should "
@@ -7,7 +7,7 @@ class TestConnection
7
7
  end
8
8
 
9
9
  describe Cobbler::Connection::Handling do
10
- [:hostname, :username, :password].each do |field|
10
+ [:hostname, :username, :password, :timeout].each do |field|
11
11
  it "should provide getters and setters for #{field}" do
12
12
  TestConnection.should respond_to(field)
13
13
  TestConnection.should respond_to("#{field}=".to_sym)
@@ -60,7 +60,7 @@ describe Cobbler::Connection::Handling do
60
60
  it "should connect to the cobbler server" do
61
61
  TestConnection.hostname = 'localhost'
62
62
  @connection = Object.new
63
- XMLRPC::Client.expects(:new2).with('http://localhost/cobbler_api').returns(@connection)
63
+ XMLRPC::Client.expects(:new2).with('http://localhost/cobbler_api',nil,nil).returns(@connection)
64
64
  TestConnection.send(:connect)
65
65
  end
66
66
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cobbler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - duritong
@@ -9,93 +9,105 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2014-06-27 00:00:00 Z
12
+ date: 2015-06-05 00:00:00 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- version_requirements: &id001 !ruby/object:Gem::Requirement
15
+ requirement: &id001 !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: 3.1.12
20
- requirement: *id001
21
- name: activesupport
22
- type: :runtime
20
+ version_requirements: *id001
23
21
  prerelease: false
22
+ type: :runtime
23
+ name: activesupport
24
24
  - !ruby/object:Gem::Dependency
25
- version_requirements: &id002 !ruby/object:Gem::Requirement
25
+ requirement: &id002 !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
29
  version: 1.5.0
30
- requirement: *id002
31
- name: nokogiri
32
- type: :runtime
30
+ version_requirements: *id002
33
31
  prerelease: false
32
+ type: :runtime
33
+ name: nokogiri
34
34
  - !ruby/object:Gem::Dependency
35
- version_requirements: &id003 !ruby/object:Gem::Requirement
35
+ requirement: &id003 !ruby/object:Gem::Requirement
36
36
  requirements:
37
- - &id007
38
- - ">="
37
+ - - ~>
39
38
  - !ruby/object:Gem::Version
40
- version: "0"
41
- requirement: *id003
42
- name: i18n
39
+ version: 1.6.21
40
+ version_requirements: *id003
41
+ prerelease: false
43
42
  type: :runtime
43
+ name: highline
44
+ - !ruby/object:Gem::Dependency
45
+ requirement: &id004 !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ~>
48
+ - !ruby/object:Gem::Version
49
+ version: 0.6.11
50
+ version_requirements: *id004
44
51
  prerelease: false
52
+ type: :runtime
53
+ name: i18n
45
54
  - !ruby/object:Gem::Dependency
46
- version_requirements: &id004 !ruby/object:Gem::Requirement
55
+ requirement: &id005 !ruby/object:Gem::Requirement
47
56
  requirements:
48
57
  - - ~>
49
58
  - !ruby/object:Gem::Version
50
59
  version: 2.5.0
51
- requirement: *id004
52
- name: rspec
53
- type: :development
60
+ version_requirements: *id005
54
61
  prerelease: false
62
+ type: :development
63
+ name: rspec
55
64
  - !ruby/object:Gem::Dependency
56
- version_requirements: &id005 !ruby/object:Gem::Requirement
65
+ requirement: &id006 !ruby/object:Gem::Requirement
57
66
  requirements:
58
67
  - - ~>
59
68
  - !ruby/object:Gem::Version
60
69
  version: "3.8"
61
- requirement: *id005
62
- name: rdoc
63
- type: :development
70
+ version_requirements: *id006
64
71
  prerelease: false
72
+ type: :development
73
+ name: rdoc
65
74
  - !ruby/object:Gem::Dependency
66
- version_requirements: &id006 !ruby/object:Gem::Requirement
75
+ requirement: &id007 !ruby/object:Gem::Requirement
67
76
  requirements:
68
77
  - - ~>
69
78
  - !ruby/object:Gem::Version
70
79
  version: 0.10.0
71
- requirement: *id006
72
- name: mocha
73
- type: :development
80
+ version_requirements: *id007
74
81
  prerelease: false
82
+ type: :development
83
+ name: mocha
75
84
  - !ruby/object:Gem::Dependency
76
- version_requirements: &id008 !ruby/object:Gem::Requirement
85
+ requirement: &id008 !ruby/object:Gem::Requirement
77
86
  requirements:
78
- - *id007
79
- requirement: *id008
80
- name: bundler
81
- type: :development
87
+ - &id009
88
+ - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: "0"
91
+ version_requirements: *id008
82
92
  prerelease: false
93
+ type: :development
94
+ name: bundler
83
95
  - !ruby/object:Gem::Dependency
84
- version_requirements: &id009 !ruby/object:Gem::Requirement
96
+ requirement: &id010 !ruby/object:Gem::Requirement
85
97
  requirements:
86
- - *id007
87
- requirement: *id009
88
- name: jeweler
89
- type: :development
98
+ - *id009
99
+ version_requirements: *id010
90
100
  prerelease: false
101
+ type: :development
102
+ name: jeweler
91
103
  - !ruby/object:Gem::Dependency
92
- version_requirements: &id010 !ruby/object:Gem::Requirement
104
+ requirement: &id011 !ruby/object:Gem::Requirement
93
105
  requirements:
94
- - *id007
95
- requirement: *id010
96
- name: simplecov
97
- type: :development
106
+ - *id009
107
+ version_requirements: *id011
98
108
  prerelease: false
109
+ type: :development
110
+ name: simplecov
99
111
  description: " Provides Ruby bindings to interact with a Cobbler server.\n"
100
112
  email: peter.meier@immerda.ch
101
113
  executables: []
@@ -155,14 +167,14 @@ require_paths:
155
167
  - lib
156
168
  required_ruby_version: !ruby/object:Gem::Requirement
157
169
  requirements:
158
- - *id007
170
+ - *id009
159
171
  required_rubygems_version: !ruby/object:Gem::Requirement
160
172
  requirements:
161
- - *id007
173
+ - *id009
162
174
  requirements: []
163
175
 
164
176
  rubyforge_project:
165
- rubygems_version: 2.3.0
177
+ rubygems_version: 2.0.15
166
178
  signing_key:
167
179
  specification_version: 4
168
180
  summary: An interface for interacting with a Cobbler server.