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 +4 -4
- data/Gemfile +3 -1
- data/Rakefile +2 -2
- data/cobbler.gemspec +10 -8
- data/config/cobbler.yml +2 -0
- data/lib/cobbler.rb +1 -1
- data/lib/cobbler/connection/handling.rb +19 -4
- data/lib/cobbler/system.rb +1 -1
- data/spec/spec_helper.rb +2 -1
- data/spec/unit/cobbler/connection/common_spec.rb +1 -0
- data/spec/unit/cobbler/connection/handling_spec.rb +2 -2
- metadata +58 -46
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA512:
|
3
|
-
data.tar.gz:
|
4
|
-
metadata.gz:
|
3
|
+
data.tar.gz: 63a2bf4f191921f4edc3ff20e7198f0b450de120e8a89cb7eb5f567b09d538c9a4cf059c17c64207ff16cbcab7600afb36856511434be7654e3428b59b8b10e7
|
4
|
+
metadata.gz: 48a3a3a1fe972ba74771ec51536896e6c383138c7a4528855edebbc41a78e1a1d9f390f7fce7f2874ceb37ee4a5bd3a51e065013c6deff21f33f8224cb397abb
|
5
5
|
SHA1:
|
6
|
-
data.tar.gz:
|
7
|
-
metadata.gz:
|
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.
|
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.
|
69
|
+
version = '2.0.3'
|
70
70
|
rdoc.rdoc_dir = 'rdoc'
|
71
71
|
rdoc.title = "cobbler #{version}"
|
72
72
|
rdoc.rdoc_files.include('README*')
|
data/cobbler.gemspec
CHANGED
@@ -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.
|
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 = "
|
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.
|
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<
|
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<
|
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<
|
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"])
|
data/config/cobbler.yml
CHANGED
data/lib/cobbler.rb
CHANGED
@@ -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
|
85
|
-
@connection = XMLRPC::Client.new2("
|
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
|
data/lib/cobbler/system.rb
CHANGED
@@ -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
|
data/spec/spec_helper.rb
CHANGED
@@ -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'] &&
|
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."
|
@@ -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.
|
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:
|
12
|
+
date: 2015-06-05 00:00:00 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
35
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
-
|
38
|
-
- ">="
|
37
|
+
- - ~>
|
39
38
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
41
|
-
|
42
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
65
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
57
66
|
requirements:
|
58
67
|
- - ~>
|
59
68
|
- !ruby/object:Gem::Version
|
60
69
|
version: "3.8"
|
61
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
85
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
77
86
|
requirements:
|
78
|
-
-
|
79
|
-
|
80
|
-
|
81
|
-
|
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
|
-
|
96
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
85
97
|
requirements:
|
86
|
-
- *
|
87
|
-
|
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
|
-
|
104
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
93
105
|
requirements:
|
94
|
-
- *
|
95
|
-
|
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
|
-
- *
|
170
|
+
- *id009
|
159
171
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
160
172
|
requirements:
|
161
|
-
- *
|
173
|
+
- *id009
|
162
174
|
requirements: []
|
163
175
|
|
164
176
|
rubyforge_project:
|
165
|
-
rubygems_version: 2.
|
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.
|