boxgrinder-core 0.1.0 → 0.1.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.
- data/CHANGELOG +4 -0
- data/README +9 -1
- data/Rakefile +21 -3
- data/boxgrinder-core.gemspec +7 -7
- data/lib/boxgrinder-core/defaults.rb +3 -5
- data/lib/boxgrinder-core/helpers/appliance-config-helper.rb +19 -9
- data/lib/boxgrinder-core/helpers/appliance-helper.rb +3 -5
- data/lib/boxgrinder-core/helpers/exec-helper.rb +3 -5
- data/lib/boxgrinder-core/helpers/log-helper.rb +4 -6
- data/lib/boxgrinder-core/helpers/queue-helper.rb +4 -6
- data/lib/boxgrinder-core/models/appliance-config.rb +4 -5
- data/lib/boxgrinder-core/models/config.rb +3 -5
- data/lib/boxgrinder-core/models/task.rb +4 -6
- data/lib/boxgrinder-core/validators/appliance-config-validator.rb +4 -6
- data/lib/boxgrinder-core/validators/errors.rb +4 -6
- data/lib/boxgrinder-core.rb +19 -1
- data/rubygem-boxgrinder-core.spec +59 -0
- data/spec/Rakefile +18 -0
- data/spec/helpers/appliance-config-helper-spec.rb +118 -46
- data/spec/helpers/appliance-helper-spec.rb +18 -0
- data/spec/helpers/exec-helper-spec.rb +18 -0
- data/spec/helpers/log-helper-spec.rb +18 -0
- data/spec/helpers/queue-helper-spec.rb +18 -0
- data/spec/rspec/rspec-config-helper.rb +19 -1
- data/spec/validators/appliance-config-validator-spec.rb +18 -0
- metadata +9 -8
data/CHANGELOG
CHANGED
data/README
CHANGED
data/Rakefile
CHANGED
|
@@ -1,10 +1,28 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'echoe'
|
|
2
20
|
|
|
3
21
|
Echoe.new("boxgrinder-core") do |p|
|
|
4
|
-
p.project = "BoxGrinder
|
|
22
|
+
p.project = "BoxGrinder"
|
|
5
23
|
p.author = "Marek Goldmann"
|
|
6
|
-
p.summary = "Core
|
|
7
|
-
p.url = "http://www.jboss.org/
|
|
24
|
+
p.summary = "Core library for BoxGrinder"
|
|
25
|
+
p.url = "http://www.jboss.org/boxgrinder"
|
|
8
26
|
p.email = "info@boxgrinder.org"
|
|
9
27
|
p.runtime_dependencies = ['open4 >=1.0.0']
|
|
10
28
|
end
|
data/boxgrinder-core.gemspec
CHANGED
|
@@ -2,21 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
Gem::Specification.new do |s|
|
|
4
4
|
s.name = %q{boxgrinder-core}
|
|
5
|
-
s.version = "0.1.
|
|
5
|
+
s.version = "0.1.1"
|
|
6
6
|
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
|
8
8
|
s.authors = ["Marek Goldmann"]
|
|
9
|
-
s.date = %q{2010-
|
|
10
|
-
s.description = %q{Core
|
|
9
|
+
s.date = %q{2010-11-02}
|
|
10
|
+
s.description = %q{Core library for BoxGrinder}
|
|
11
11
|
s.email = %q{info@boxgrinder.org}
|
|
12
12
|
s.extra_rdoc_files = ["CHANGELOG", "LICENSE", "README", "lib/boxgrinder-core.rb", "lib/boxgrinder-core/defaults.rb", "lib/boxgrinder-core/helpers/appliance-config-helper.rb", "lib/boxgrinder-core/helpers/appliance-helper.rb", "lib/boxgrinder-core/helpers/exec-helper.rb", "lib/boxgrinder-core/helpers/log-helper.rb", "lib/boxgrinder-core/helpers/queue-helper.rb", "lib/boxgrinder-core/models/appliance-config.rb", "lib/boxgrinder-core/models/config.rb", "lib/boxgrinder-core/models/task.rb", "lib/boxgrinder-core/validators/appliance-config-validator.rb", "lib/boxgrinder-core/validators/errors.rb", "lib/openhash/openhash.rb"]
|
|
13
|
-
s.files = ["CHANGELOG", "LICENSE", "Manifest", "README", "Rakefile", "lib/boxgrinder-core.rb", "lib/boxgrinder-core/defaults.rb", "lib/boxgrinder-core/helpers/appliance-config-helper.rb", "lib/boxgrinder-core/helpers/appliance-helper.rb", "lib/boxgrinder-core/helpers/exec-helper.rb", "lib/boxgrinder-core/helpers/log-helper.rb", "lib/boxgrinder-core/helpers/queue-helper.rb", "lib/boxgrinder-core/models/appliance-config.rb", "lib/boxgrinder-core/models/config.rb", "lib/boxgrinder-core/models/task.rb", "lib/boxgrinder-core/validators/appliance-config-validator.rb", "lib/boxgrinder-core/validators/errors.rb", "lib/openhash/openhash.rb", "spec/Rakefile", "spec/helpers/appliance-config-helper-spec.rb", "spec/helpers/appliance-helper-spec.rb", "spec/helpers/exec-helper-spec.rb", "spec/helpers/log-helper-spec.rb", "spec/helpers/queue-helper-spec.rb", "spec/rspec/ls/one", "spec/rspec/ls/two", "spec/rspec/rspec-config-helper.rb", "spec/rspec/src/appliances/ephemeral-repo.appl", "spec/rspec/src/appliances/full.appl", "spec/rspec/src/appliances/repo.appl", "spec/validators/appliance-config-validator-spec.rb", "boxgrinder-core.gemspec"]
|
|
14
|
-
s.homepage = %q{http://www.jboss.org/
|
|
13
|
+
s.files = ["CHANGELOG", "LICENSE", "Manifest", "README", "Rakefile", "lib/boxgrinder-core.rb", "lib/boxgrinder-core/defaults.rb", "lib/boxgrinder-core/helpers/appliance-config-helper.rb", "lib/boxgrinder-core/helpers/appliance-helper.rb", "lib/boxgrinder-core/helpers/exec-helper.rb", "lib/boxgrinder-core/helpers/log-helper.rb", "lib/boxgrinder-core/helpers/queue-helper.rb", "lib/boxgrinder-core/models/appliance-config.rb", "lib/boxgrinder-core/models/config.rb", "lib/boxgrinder-core/models/task.rb", "lib/boxgrinder-core/validators/appliance-config-validator.rb", "lib/boxgrinder-core/validators/errors.rb", "lib/openhash/openhash.rb", "rubygem-boxgrinder-core.spec", "spec/Rakefile", "spec/helpers/appliance-config-helper-spec.rb", "spec/helpers/appliance-helper-spec.rb", "spec/helpers/exec-helper-spec.rb", "spec/helpers/log-helper-spec.rb", "spec/helpers/queue-helper-spec.rb", "spec/rspec/ls/one", "spec/rspec/ls/two", "spec/rspec/rspec-config-helper.rb", "spec/rspec/src/appliances/ephemeral-repo.appl", "spec/rspec/src/appliances/full.appl", "spec/rspec/src/appliances/repo.appl", "spec/validators/appliance-config-validator-spec.rb", "boxgrinder-core.gemspec"]
|
|
14
|
+
s.homepage = %q{http://www.jboss.org/boxgrinder}
|
|
15
15
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Boxgrinder-core", "--main", "README"]
|
|
16
16
|
s.require_paths = ["lib"]
|
|
17
|
-
s.rubyforge_project = %q{BoxGrinder
|
|
17
|
+
s.rubyforge_project = %q{BoxGrinder}
|
|
18
18
|
s.rubygems_version = %q{1.3.7}
|
|
19
|
-
s.summary = %q{Core
|
|
19
|
+
s.summary = %q{Core library for BoxGrinder}
|
|
20
20
|
|
|
21
21
|
if s.respond_to? :specification_version then
|
|
22
22
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -24,7 +22,7 @@ require 'set'
|
|
|
24
22
|
module BoxGrinder
|
|
25
23
|
class ApplianceConfigHelper
|
|
26
24
|
|
|
27
|
-
def initialize(
|
|
25
|
+
def initialize(appliance_configs)
|
|
28
26
|
@appliance_configs = appliance_configs.reverse
|
|
29
27
|
end
|
|
30
28
|
|
|
@@ -37,12 +35,24 @@ module BoxGrinder
|
|
|
37
35
|
merge_variables
|
|
38
36
|
merge_hardware
|
|
39
37
|
merge_repos
|
|
38
|
+
merge_default_repos
|
|
40
39
|
merge_packages
|
|
41
40
|
merge_post_operations
|
|
42
41
|
|
|
43
42
|
@appliance_config
|
|
44
43
|
end
|
|
45
44
|
|
|
45
|
+
def merge_default_repos
|
|
46
|
+
@appliance_config.default_repos = true
|
|
47
|
+
|
|
48
|
+
@appliance_configs.each do |appliance_config|
|
|
49
|
+
if appliance_config.default_repos == false
|
|
50
|
+
@appliance_config.default_repos = false
|
|
51
|
+
break
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
46
56
|
def merge_variables
|
|
47
57
|
@appliance_config.variables = {} if @appliance_config.variables.nil?
|
|
48
58
|
@appliance_configs.each do |appliance_config|
|
|
@@ -66,8 +76,8 @@ module BoxGrinder
|
|
|
66
76
|
var = resolve_stack.last
|
|
67
77
|
refs = @appliance_config.variables.keys.delete_if { |k|
|
|
68
78
|
@appliance_config.variables[k].nil? ||
|
|
69
|
-
|
|
70
|
-
|
|
79
|
+
@appliance_config.variables[k].index("##{k}#").nil? ||
|
|
80
|
+
resolve_stack.index(k).nil?
|
|
71
81
|
}
|
|
72
82
|
refs.each do |ref|
|
|
73
83
|
resolve(Arrays.new(resolve_stack).push(ref), resolved_set) unless resolved_set.include?(ref)
|
|
@@ -171,7 +181,7 @@ module BoxGrinder
|
|
|
171
181
|
end
|
|
172
182
|
|
|
173
183
|
def merge_post_operations
|
|
174
|
-
@appliance_config.post.each_value {|cmds| cmds.clear}
|
|
184
|
+
@appliance_config.post.each_value { |cmds| cmds.clear }
|
|
175
185
|
|
|
176
186
|
@appliance_configs.each do |appliance_config|
|
|
177
187
|
appliance_config.post.each do |platform, cmds|
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -95,4 +93,4 @@ module BoxGrinder
|
|
|
95
93
|
attr_accessor :file_log
|
|
96
94
|
attr_accessor :stdout_log
|
|
97
95
|
|
|
98
|
-
end
|
|
96
|
+
end
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -51,4 +49,4 @@ module BoxGrinder
|
|
|
51
49
|
ret_val
|
|
52
50
|
end
|
|
53
51
|
end
|
|
54
|
-
end
|
|
52
|
+
end
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -68,6 +66,7 @@ module BoxGrinder
|
|
|
68
66
|
attr_accessor :name
|
|
69
67
|
attr_accessor :version
|
|
70
68
|
attr_accessor :release
|
|
69
|
+
attr_accessor :default_repos
|
|
71
70
|
|
|
72
71
|
def init
|
|
73
72
|
init_arch
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -32,4 +30,4 @@ module BoxGrinder
|
|
|
32
30
|
attr_reader :created_at
|
|
33
31
|
attr_reader :data
|
|
34
32
|
end
|
|
35
|
-
end
|
|
33
|
+
end
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -71,4 +69,4 @@ module BoxGrinder
|
|
|
71
69
|
end
|
|
72
70
|
end
|
|
73
71
|
end
|
|
74
|
-
end
|
|
72
|
+
end
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
#
|
|
2
|
-
# Copyright
|
|
3
|
-
# by the @authors tag. See the copyright.txt in the distribution for a
|
|
4
|
-
# full listing of individual contributors.
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
5
3
|
#
|
|
6
4
|
# This is free software; you can redistribute it and/or modify it
|
|
7
5
|
# under the terms of the GNU Lesser General Public License as
|
|
8
|
-
# published by the Free Software Foundation; either version
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
9
7
|
# the License, or (at your option) any later version.
|
|
10
8
|
#
|
|
11
9
|
# This software is distributed in the hope that it will be useful,
|
|
@@ -32,4 +30,4 @@ class StandardError
|
|
|
32
30
|
def info
|
|
33
31
|
"#{self.class}: #{message}#$/#{backtrace.join($/)}"
|
|
34
32
|
end
|
|
35
|
-
end
|
|
33
|
+
end
|
data/lib/boxgrinder-core.rb
CHANGED
|
@@ -1 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
19
|
+
require 'boxgrinder-core/defaults'
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
%global gemdir %(ruby -rubygems -e 'puts Gem::dir' 2>/dev/null)
|
|
2
|
+
%global gemname boxgrinder-core
|
|
3
|
+
%global geminstdir %{gemdir}/gems/%{gemname}-%{version}
|
|
4
|
+
%global rubyabi 1.8
|
|
5
|
+
|
|
6
|
+
Summary: Core library for BoxGrinder
|
|
7
|
+
Name: rubygem-%{gemname}
|
|
8
|
+
Version: 0.1.1
|
|
9
|
+
Release: 1%{?dist}
|
|
10
|
+
Group: Development/Languages
|
|
11
|
+
License: LGPL
|
|
12
|
+
URL: http://www.jboss.org/boxgrinder
|
|
13
|
+
Source0: http://rubygems.org/gems/%{gemname}-%{version}.gem
|
|
14
|
+
|
|
15
|
+
Requires: ruby(abi) = %{rubyabi}
|
|
16
|
+
Requires: rubygems >= 1.2
|
|
17
|
+
Requires: ruby >= 0
|
|
18
|
+
Requires: rubygem(open4) >= 1.0.0
|
|
19
|
+
BuildRequires: rubygems >= 1.2
|
|
20
|
+
BuildRequires: ruby >= 0
|
|
21
|
+
|
|
22
|
+
BuildArch: noarch
|
|
23
|
+
Provides: rubygem(%{gemname}) = %{version}
|
|
24
|
+
|
|
25
|
+
%description
|
|
26
|
+
Core library containing files required by BoxGrinder family of projects
|
|
27
|
+
|
|
28
|
+
%prep
|
|
29
|
+
|
|
30
|
+
%build
|
|
31
|
+
|
|
32
|
+
%install
|
|
33
|
+
rm -rf %{buildroot}
|
|
34
|
+
mkdir -p %{buildroot}%{gemdir}
|
|
35
|
+
gem install --local --install-dir %{buildroot}%{gemdir} \
|
|
36
|
+
--force --rdoc %{SOURCE0}
|
|
37
|
+
|
|
38
|
+
%clean
|
|
39
|
+
rm -rf %{buildroot}
|
|
40
|
+
|
|
41
|
+
%files
|
|
42
|
+
%defattr(-, root, root, -)
|
|
43
|
+
%dir %{geminstdir}
|
|
44
|
+
%{geminstdir}/lib
|
|
45
|
+
%doc %{gemdir}/doc/%{gemname}-%{version}
|
|
46
|
+
%doc %{geminstdir}/%{gemname}.gemspec
|
|
47
|
+
%doc %{geminstdir}/rubygem-%{gemname}.spec
|
|
48
|
+
%doc %{geminstdir}/CHANGELOG
|
|
49
|
+
%doc %{geminstdir}/LICENSE
|
|
50
|
+
%doc %{geminstdir}/README
|
|
51
|
+
%doc %{geminstdir}/Manifest
|
|
52
|
+
%doc %{geminstdir}/Rakefile
|
|
53
|
+
%doc %{geminstdir}/spec
|
|
54
|
+
%{gemdir}/cache/%{gemname}-%{version}.gem
|
|
55
|
+
%{gemdir}/specifications/%{gemname}-%{version}.gemspec
|
|
56
|
+
|
|
57
|
+
%changelog
|
|
58
|
+
* Mon Oct 18 2010 <mgoldman@redhat.com> - 0.1.1-1
|
|
59
|
+
- Initial package
|
data/spec/Rakefile
CHANGED
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'rake'
|
|
2
20
|
require 'spec/rake/spectask'
|
|
3
21
|
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'boxgrinder-core/helpers/appliance-config-helper'
|
|
2
20
|
require 'rspec/rspec-config-helper'
|
|
3
21
|
|
|
@@ -10,21 +28,21 @@ module BoxGrinder
|
|
|
10
28
|
@base_arch = @arch.eql?("x86_64") ? "x86_64" : "i386"
|
|
11
29
|
end
|
|
12
30
|
|
|
13
|
-
def prepare_helper(
|
|
14
|
-
@helper = ApplianceConfigHelper.new(
|
|
31
|
+
def prepare_helper(configs)
|
|
32
|
+
@helper = ApplianceConfigHelper.new(configs)
|
|
15
33
|
end
|
|
16
34
|
|
|
17
35
|
it "should merge post sections in right order" do
|
|
18
36
|
config_a = ApplianceConfig.new
|
|
19
37
|
config_a.name = 'a'
|
|
20
|
-
config_a.post['base'] = [
|
|
38
|
+
config_a.post['base'] = ["1_1", "1_2"]
|
|
21
39
|
config_a.appliances << 'b'
|
|
22
40
|
|
|
23
41
|
config_b = ApplianceConfig.new
|
|
24
42
|
config_b.name = 'b'
|
|
25
|
-
config_b.post['base'] = [
|
|
43
|
+
config_b.post['base'] = ["2_1", "2_2"]
|
|
26
44
|
|
|
27
|
-
prepare_helper(
|
|
45
|
+
prepare_helper([config_a, config_b])
|
|
28
46
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
29
47
|
|
|
30
48
|
@helper.merge_post_operations
|
|
@@ -37,19 +55,19 @@ module BoxGrinder
|
|
|
37
55
|
it "should merge post sections in right order with more complicated inheritance" do
|
|
38
56
|
config_a = ApplianceConfig.new
|
|
39
57
|
config_a.name = 'a'
|
|
40
|
-
config_a.post['base'] = [
|
|
58
|
+
config_a.post['base'] = ["1_1", "1_2"]
|
|
41
59
|
config_a.appliances << 'b1'
|
|
42
60
|
config_a.appliances << 'b2'
|
|
43
61
|
|
|
44
62
|
config_b1 = ApplianceConfig.new
|
|
45
63
|
config_b1.name = 'b1'
|
|
46
|
-
config_b1.post['base'] = [
|
|
64
|
+
config_b1.post['base'] = ["2_1", "2_2"]
|
|
47
65
|
|
|
48
66
|
config_b2 = ApplianceConfig.new
|
|
49
67
|
config_b2.name = 'b2'
|
|
50
|
-
config_b2.post['base'] = [
|
|
68
|
+
config_b2.post['base'] = ["3_1", "3_2"]
|
|
51
69
|
|
|
52
|
-
prepare_helper(
|
|
70
|
+
prepare_helper([config_a, config_b1, config_b2])
|
|
53
71
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
54
72
|
|
|
55
73
|
@helper.merge_post_operations
|
|
@@ -62,35 +80,35 @@ module BoxGrinder
|
|
|
62
80
|
it "should merge post sections in right order with even more and more complicated inheritance" do
|
|
63
81
|
config_a = ApplianceConfig.new
|
|
64
82
|
config_a.name = 'a'
|
|
65
|
-
config_a.post['base'] = [
|
|
83
|
+
config_a.post['base'] = ["1_1", "1_2"]
|
|
66
84
|
config_a.appliances << 'b1'
|
|
67
85
|
config_a.appliances << 'b2'
|
|
68
86
|
|
|
69
87
|
config_b1 = ApplianceConfig.new
|
|
70
88
|
config_b1.name = 'b1'
|
|
71
89
|
config_b1.appliances << 'c1'
|
|
72
|
-
config_b1.post['base'] = [
|
|
90
|
+
config_b1.post['base'] = ["2_1", "2_2"]
|
|
73
91
|
|
|
74
92
|
config_b2 = ApplianceConfig.new
|
|
75
93
|
config_b2.name = 'b2'
|
|
76
94
|
config_b2.appliances << 'c2'
|
|
77
|
-
config_b2.post['base'] = [
|
|
95
|
+
config_b2.post['base'] = ["3_1", "3_2"]
|
|
78
96
|
|
|
79
97
|
config_c1 = ApplianceConfig.new
|
|
80
98
|
config_c1.name = 'c1'
|
|
81
|
-
config_c1.post['base'] = [
|
|
99
|
+
config_c1.post['base'] = ["4_1", "4_2"]
|
|
82
100
|
|
|
83
101
|
config_c2 = ApplianceConfig.new
|
|
84
102
|
config_c2.name = 'c2'
|
|
85
|
-
config_c2.post['base'] = [
|
|
86
|
-
|
|
87
|
-
prepare_helper(
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
103
|
+
config_c2.post['base'] = ["5_1", "5_2"]
|
|
104
|
+
|
|
105
|
+
prepare_helper([
|
|
106
|
+
config_a,
|
|
107
|
+
config_b1,
|
|
108
|
+
config_c1,
|
|
109
|
+
config_b2,
|
|
110
|
+
config_c2
|
|
111
|
+
])
|
|
94
112
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
95
113
|
|
|
96
114
|
@helper.merge_post_operations
|
|
@@ -103,14 +121,14 @@ module BoxGrinder
|
|
|
103
121
|
it "should merge post sections when dependent appliance has post section for platform for which we haven't specified post operations" do
|
|
104
122
|
config_a = ApplianceConfig.new
|
|
105
123
|
config_a.name = 'a'
|
|
106
|
-
config_a.post['base'] = [
|
|
124
|
+
config_a.post['base'] = ["1_1", "1_2"]
|
|
107
125
|
config_a.appliances << 'b'
|
|
108
126
|
|
|
109
127
|
config_b = ApplianceConfig.new
|
|
110
128
|
config_b.name = 'b'
|
|
111
|
-
config_b.post['ec2'] = [
|
|
129
|
+
config_b.post['ec2'] = ["2_1", "2_2"]
|
|
112
130
|
|
|
113
|
-
prepare_helper(
|
|
131
|
+
prepare_helper([config_a, config_b])
|
|
114
132
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
115
133
|
|
|
116
134
|
@helper.merge_post_operations
|
|
@@ -126,80 +144,80 @@ module BoxGrinder
|
|
|
126
144
|
config_a = ApplianceConfig.new
|
|
127
145
|
config_a.name = 'a'
|
|
128
146
|
config_a.appliances << 'b'
|
|
129
|
-
config_a.hardware.partitions = {
|
|
147
|
+
config_a.hardware.partitions = {"/" => {'size' => '2'}}
|
|
130
148
|
|
|
131
149
|
config_b = ApplianceConfig.new
|
|
132
150
|
config_b.name = 'b'
|
|
133
|
-
config_b.hardware.partitions = {
|
|
151
|
+
config_b.hardware.partitions = {"/" => {'size' => '4'}, "/home" => {'size' => '2'}}
|
|
134
152
|
|
|
135
|
-
prepare_helper(
|
|
153
|
+
prepare_helper([config_a, config_b])
|
|
136
154
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
137
155
|
|
|
138
156
|
@helper.merge_partitions
|
|
139
157
|
|
|
140
158
|
config = @helper.instance_variable_get(:@appliance_config)
|
|
141
159
|
config.hardware.partitions.size.should == 2
|
|
142
|
-
config.hardware.partitions.should == {
|
|
160
|
+
config.hardware.partitions.should == {"/" => {'size' => '4'}, "/home" => {'size' => '2'}}
|
|
143
161
|
end
|
|
144
162
|
|
|
145
163
|
it "should merge partitions with different filesystem types" do
|
|
146
164
|
config_a = ApplianceConfig.new
|
|
147
165
|
config_a.name = 'a'
|
|
148
166
|
config_a.appliances << 'b'
|
|
149
|
-
config_a.hardware.partitions = {
|
|
167
|
+
config_a.hardware.partitions = {"/" => {'size' => '2', 'type' => 'ext4'}}
|
|
150
168
|
|
|
151
169
|
config_b = ApplianceConfig.new
|
|
152
170
|
config_b.name = 'b'
|
|
153
|
-
config_b.hardware.partitions = {
|
|
171
|
+
config_b.hardware.partitions = {"/" => {'size' => '4', 'type' => 'ext3'}, "/home" => {'size' => '2'}}
|
|
154
172
|
|
|
155
|
-
prepare_helper(
|
|
173
|
+
prepare_helper([config_a, config_b])
|
|
156
174
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
157
175
|
|
|
158
176
|
@helper.merge_partitions
|
|
159
177
|
|
|
160
178
|
config = @helper.instance_variable_get(:@appliance_config)
|
|
161
179
|
config.hardware.partitions.size.should == 2
|
|
162
|
-
config.hardware.partitions.should == {
|
|
180
|
+
config.hardware.partitions.should == {"/" => {'size' => '4', 'type' => 'ext4'}, "/home" => {'size' => '2'}}
|
|
163
181
|
end
|
|
164
182
|
|
|
165
183
|
it "should merge partitions with different options" do
|
|
166
184
|
config_a = ApplianceConfig.new
|
|
167
185
|
config_a.name = 'a'
|
|
168
186
|
config_a.appliances << 'b'
|
|
169
|
-
config_a.hardware.partitions = {
|
|
187
|
+
config_a.hardware.partitions = {"/" => {'size' => '2', 'type' => 'ext4', 'options' => 'barrier=0,nodelalloc,nobh,noatime'}}
|
|
170
188
|
|
|
171
189
|
config_b = ApplianceConfig.new
|
|
172
190
|
config_b.name = 'b'
|
|
173
|
-
config_b.hardware.partitions = {
|
|
191
|
+
config_b.hardware.partitions = {"/" => {'size' => '4', 'type' => 'ext3', 'options' => 'shouldnt appear'}, "/home" => {'size' => '2'}}
|
|
174
192
|
|
|
175
|
-
prepare_helper(
|
|
193
|
+
prepare_helper([config_a, config_b])
|
|
176
194
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
177
195
|
|
|
178
196
|
@helper.merge_partitions
|
|
179
197
|
|
|
180
198
|
config = @helper.instance_variable_get(:@appliance_config)
|
|
181
199
|
config.hardware.partitions.size.should == 2
|
|
182
|
-
config.hardware.partitions.should == {
|
|
200
|
+
config.hardware.partitions.should == {"/" => {'size' => '4', 'type' => 'ext4', 'options' => 'barrier=0,nodelalloc,nobh,noatime'}, "/home" => {'size' => '2'}}
|
|
183
201
|
end
|
|
184
202
|
|
|
185
203
|
it "should merge partitions with different options, another case where type is changing - options should be vanished" do
|
|
186
204
|
config_a = ApplianceConfig.new
|
|
187
205
|
config_a.name = 'a'
|
|
188
206
|
config_a.appliances << 'b'
|
|
189
|
-
config_a.hardware.partitions = {
|
|
207
|
+
config_a.hardware.partitions = {"/" => {'size' => '2', 'type' => 'ext4'}}
|
|
190
208
|
|
|
191
209
|
config_b = ApplianceConfig.new
|
|
192
210
|
config_b.name = 'b'
|
|
193
|
-
config_b.hardware.partitions = {
|
|
211
|
+
config_b.hardware.partitions = {"/" => {'size' => '4', 'type' => 'ext3', 'options' => 'shouldnt appear'}, "/home" => {'size' => '2'}}
|
|
194
212
|
|
|
195
|
-
prepare_helper(
|
|
213
|
+
prepare_helper([config_a, config_b])
|
|
196
214
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
197
215
|
|
|
198
216
|
@helper.merge_partitions
|
|
199
217
|
|
|
200
218
|
config = @helper.instance_variable_get(:@appliance_config)
|
|
201
219
|
config.hardware.partitions.size.should == 2
|
|
202
|
-
config.hardware.partitions.should == {
|
|
220
|
+
config.hardware.partitions.should == {"/" => {'size' => '4', 'type' => 'ext4'}, "/home" => {'size' => '2'}}
|
|
203
221
|
end
|
|
204
222
|
|
|
205
223
|
it "should substitute variables in repos" do
|
|
@@ -207,10 +225,10 @@ module BoxGrinder
|
|
|
207
225
|
config_a.name = 'a'
|
|
208
226
|
config_a.os.name = 'fedora'
|
|
209
227
|
config_a.os.version = '12'
|
|
210
|
-
config_a.repos << {
|
|
228
|
+
config_a.repos << {'name' => '#ARCH#', 'baseurl' => '#BASE_ARCH#', 'mirrorlist' => '#OS_NAME#-#OS_VERSION#'}
|
|
211
229
|
config_a.init_arch
|
|
212
230
|
|
|
213
|
-
prepare_helper(
|
|
231
|
+
prepare_helper([config_a])
|
|
214
232
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
215
233
|
|
|
216
234
|
@helper.merge_variables
|
|
@@ -218,7 +236,7 @@ module BoxGrinder
|
|
|
218
236
|
|
|
219
237
|
config = @helper.instance_variable_get(:@appliance_config)
|
|
220
238
|
config.repos.size.should == 1
|
|
221
|
-
config.repos.first.should == {
|
|
239
|
+
config.repos.first.should == {'name' => "#{@arch}", 'baseurl' => "#{@base_arch}", 'mirrorlist' => 'fedora-12'}
|
|
222
240
|
end
|
|
223
241
|
|
|
224
242
|
it "should substitute variables in post section" do
|
|
@@ -230,7 +248,7 @@ module BoxGrinder
|
|
|
230
248
|
config_a.post['ec2'] = ['#ARCH#', '#BASE_ARCH#', '#OS_VERSION#', '#OS_NAME#']
|
|
231
249
|
config_a.init_arch
|
|
232
250
|
|
|
233
|
-
prepare_helper(
|
|
251
|
+
prepare_helper([config_a])
|
|
234
252
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
235
253
|
|
|
236
254
|
@helper.merge_variables
|
|
@@ -252,7 +270,7 @@ module BoxGrinder
|
|
|
252
270
|
config_a.post['base'] = ['#ARCH#', '#BASE_ARCH#', '#OS_VERSION#', '#OS_NAME#', '#CUSTOM_A#', '#CUSTOM_B#']
|
|
253
271
|
config_a.init_arch
|
|
254
272
|
|
|
255
|
-
prepare_helper(
|
|
273
|
+
prepare_helper([config_a])
|
|
256
274
|
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
257
275
|
|
|
258
276
|
@helper.merge_variables
|
|
@@ -263,5 +281,59 @@ module BoxGrinder
|
|
|
263
281
|
config.post['base'].should == [@arch, @base_arch, '12', 'fedora', 'AAA', 'BBB']
|
|
264
282
|
end
|
|
265
283
|
|
|
284
|
+
describe ".merge_default_repos" do
|
|
285
|
+
it "should set default_repos option to true when not specified" do
|
|
286
|
+
config_a = ApplianceConfig.new
|
|
287
|
+
config_a.name = 'a'
|
|
288
|
+
config_a.appliances << 'b'
|
|
289
|
+
|
|
290
|
+
config_b = ApplianceConfig.new
|
|
291
|
+
config_b.name = 'b'
|
|
292
|
+
|
|
293
|
+
prepare_helper([config_a, config_b])
|
|
294
|
+
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
295
|
+
|
|
296
|
+
@helper.merge_default_repos
|
|
297
|
+
|
|
298
|
+
config = @helper.instance_variable_get(:@appliance_config)
|
|
299
|
+
config.default_repos.should == true
|
|
300
|
+
end
|
|
301
|
+
|
|
302
|
+
it "should merge default_repos option on last appliance" do
|
|
303
|
+
config_a = ApplianceConfig.new
|
|
304
|
+
config_a.name = 'a'
|
|
305
|
+
config_a.appliances << 'b'
|
|
306
|
+
config_a.default_repos = false
|
|
307
|
+
|
|
308
|
+
config_b = ApplianceConfig.new
|
|
309
|
+
config_b.name = 'b'
|
|
310
|
+
|
|
311
|
+
prepare_helper([config_a, config_b])
|
|
312
|
+
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
313
|
+
|
|
314
|
+
@helper.merge_default_repos
|
|
315
|
+
|
|
316
|
+
config = @helper.instance_variable_get(:@appliance_config)
|
|
317
|
+
config.default_repos.should == false
|
|
318
|
+
end
|
|
319
|
+
|
|
320
|
+
it "should merge default_repos option on first appliance" do
|
|
321
|
+
config_a = ApplianceConfig.new
|
|
322
|
+
config_a.name = 'a'
|
|
323
|
+
config_a.appliances << 'b'
|
|
324
|
+
|
|
325
|
+
config_b = ApplianceConfig.new
|
|
326
|
+
config_b.name = 'b'
|
|
327
|
+
config_b.default_repos = false
|
|
328
|
+
|
|
329
|
+
prepare_helper([config_a, config_b])
|
|
330
|
+
@helper.instance_variable_set(:@appliance_config, config_a.clone)
|
|
331
|
+
|
|
332
|
+
@helper.merge_default_repos
|
|
333
|
+
|
|
334
|
+
config = @helper.instance_variable_get(:@appliance_config)
|
|
335
|
+
config.default_repos.should == false
|
|
336
|
+
end
|
|
337
|
+
end
|
|
266
338
|
end
|
|
267
339
|
end
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'boxgrinder-core/helpers/appliance-helper'
|
|
2
20
|
require 'rspec/rspec-config-helper'
|
|
3
21
|
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'boxgrinder-core/helpers/exec-helper'
|
|
2
20
|
|
|
3
21
|
module BoxGrinder
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'boxgrinder-core/helpers/log-helper'
|
|
2
20
|
|
|
3
21
|
module BoxGrinder
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'boxgrinder-core/helpers/queue-helper'
|
|
2
20
|
|
|
3
21
|
module BoxGrinder
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'boxgrinder-core/models/config'
|
|
2
20
|
require 'boxgrinder-core/models/appliance-config'
|
|
3
21
|
require 'boxgrinder-core/helpers/appliance-config-helper'
|
|
@@ -56,4 +74,4 @@ module RSpecConfigHelper
|
|
|
56
74
|
|
|
57
75
|
appliance_config
|
|
58
76
|
end
|
|
59
|
-
end
|
|
77
|
+
end
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2010 Red Hat, Inc.
|
|
3
|
+
#
|
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
|
5
|
+
# under the terms of the GNU Lesser General Public License as
|
|
6
|
+
# published by the Free Software Foundation; either version 3 of
|
|
7
|
+
# the License, or (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This software is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
# Lesser General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
15
|
+
# License along with this software; if not, write to the Free
|
|
16
|
+
# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
17
|
+
# 02110-1301 USA, or see the FSF site: http://www.fsf.org.
|
|
18
|
+
|
|
1
19
|
require 'boxgrinder-core/validators/appliance-config-validator'
|
|
2
20
|
|
|
3
21
|
module BoxGrinder
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: boxgrinder-core
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash:
|
|
4
|
+
hash: 25
|
|
5
5
|
prerelease: false
|
|
6
6
|
segments:
|
|
7
7
|
- 0
|
|
8
8
|
- 1
|
|
9
|
-
-
|
|
10
|
-
version: 0.1.
|
|
9
|
+
- 1
|
|
10
|
+
version: 0.1.1
|
|
11
11
|
platform: ruby
|
|
12
12
|
authors:
|
|
13
13
|
- Marek Goldmann
|
|
@@ -15,7 +15,7 @@ autorequire:
|
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
17
|
|
|
18
|
-
date: 2010-
|
|
18
|
+
date: 2010-11-02 00:00:00 +01:00
|
|
19
19
|
default_executable:
|
|
20
20
|
dependencies:
|
|
21
21
|
- !ruby/object:Gem::Dependency
|
|
@@ -34,7 +34,7 @@ dependencies:
|
|
|
34
34
|
version: 1.0.0
|
|
35
35
|
type: :runtime
|
|
36
36
|
version_requirements: *id001
|
|
37
|
-
description: Core
|
|
37
|
+
description: Core library for BoxGrinder
|
|
38
38
|
email: info@boxgrinder.org
|
|
39
39
|
executables: []
|
|
40
40
|
|
|
@@ -76,6 +76,7 @@ files:
|
|
|
76
76
|
- lib/boxgrinder-core/validators/appliance-config-validator.rb
|
|
77
77
|
- lib/boxgrinder-core/validators/errors.rb
|
|
78
78
|
- lib/openhash/openhash.rb
|
|
79
|
+
- rubygem-boxgrinder-core.spec
|
|
79
80
|
- spec/Rakefile
|
|
80
81
|
- spec/helpers/appliance-config-helper-spec.rb
|
|
81
82
|
- spec/helpers/appliance-helper-spec.rb
|
|
@@ -91,7 +92,7 @@ files:
|
|
|
91
92
|
- spec/validators/appliance-config-validator-spec.rb
|
|
92
93
|
- boxgrinder-core.gemspec
|
|
93
94
|
has_rdoc: true
|
|
94
|
-
homepage: http://www.jboss.org/
|
|
95
|
+
homepage: http://www.jboss.org/boxgrinder
|
|
95
96
|
licenses: []
|
|
96
97
|
|
|
97
98
|
post_install_message:
|
|
@@ -125,10 +126,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
125
126
|
version: "1.2"
|
|
126
127
|
requirements: []
|
|
127
128
|
|
|
128
|
-
rubyforge_project: BoxGrinder
|
|
129
|
+
rubyforge_project: BoxGrinder
|
|
129
130
|
rubygems_version: 1.3.7
|
|
130
131
|
signing_key:
|
|
131
132
|
specification_version: 3
|
|
132
|
-
summary: Core
|
|
133
|
+
summary: Core library for BoxGrinder
|
|
133
134
|
test_files: []
|
|
134
135
|
|