boxgrinder-core 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,4 +1,8 @@
1
1
 
2
+ v0.1.3
3
+
4
+ * [BGBUILD-98] Use hashery gem
5
+
2
6
  v0.1.2
3
7
 
4
8
  * [BGBUILD-87] Set default filesystem to ext4 for Fedora 13+
data/Manifest CHANGED
@@ -1,32 +0,0 @@
1
- CHANGELOG
2
- LICENSE
3
- Manifest
4
- README
5
- Rakefile
6
- boxgrinder-core.gemspec
7
- lib/boxgrinder-core.rb
8
- lib/boxgrinder-core/defaults.rb
9
- lib/boxgrinder-core/helpers/appliance-config-helper.rb
10
- lib/boxgrinder-core/helpers/appliance-helper.rb
11
- lib/boxgrinder-core/helpers/exec-helper.rb
12
- lib/boxgrinder-core/helpers/log-helper.rb
13
- lib/boxgrinder-core/helpers/queue-helper.rb
14
- lib/boxgrinder-core/models/appliance-config.rb
15
- lib/boxgrinder-core/models/config.rb
16
- lib/boxgrinder-core/models/task.rb
17
- lib/boxgrinder-core/validators/appliance-config-validator.rb
18
- lib/boxgrinder-core/validators/errors.rb
19
- lib/openhash/openhash.rb
20
- rubygem-boxgrinder-core.spec
21
- spec/helpers/appliance-config-helper-spec.rb
22
- spec/helpers/appliance-helper-spec.rb
23
- spec/helpers/exec-helper-spec.rb
24
- spec/helpers/log-helper-spec.rb
25
- spec/helpers/queue-helper-spec.rb
26
- spec/rspec/ls/one
27
- spec/rspec/ls/two
28
- spec/rspec/rspec-config-helper.rb
29
- spec/rspec/src/appliances/ephemeral-repo.appl
30
- spec/rspec/src/appliances/full.appl
31
- spec/rspec/src/appliances/repo.appl
32
- spec/validators/appliance-config-validator-spec.rb
data/Rakefile CHANGED
@@ -19,6 +19,7 @@
19
19
  require 'rubygems'
20
20
  require 'spec/rake/spectask'
21
21
  require 'echoe'
22
+ require 'rbconfig'
22
23
 
23
24
  Echoe.new("boxgrinder-core") do |p|
24
25
  p.project = "BoxGrinder"
@@ -26,7 +27,7 @@ Echoe.new("boxgrinder-core") do |p|
26
27
  p.summary = "Core library for BoxGrinder"
27
28
  p.url = "http://www.jboss.org/boxgrinder"
28
29
  p.email = "info@boxgrinder.org"
29
- p.runtime_dependencies = ['open4 >=1.0.0']
30
+ p.runtime_dependencies = ['open4 >=1.0.0', 'hashery >=1.3.0']
30
31
  end
31
32
 
32
33
  desc "Run all tests"
@@ -46,32 +47,23 @@ Spec::Rake::SpecTask.new('spec:coverage') do |t|
46
47
  t.verbose = true
47
48
  end
48
49
 
49
- topdir = "#{Dir.pwd}/pkg/rpmbuild"
50
- directory "#{topdir}/SOURCES"
51
-
52
- task 'gem:copy' => [:clean, :manifest, :gem, 'rpm:topdir'] do
53
- Dir["**/pkg/*.gem"].each { |gem| FileUtils.cp(gem, "#{topdir}/SOURCES", :verbose => true) }
54
- end
55
-
56
- task 'rpm:topdir' do
57
- FileUtils.mkdir_p(["#{topdir}/SOURCES", "#{topdir}/RPMS", "#{topdir}/BUILD", "#{topdir}/SPECS", "#{topdir}/SRPMS"], :verbose => true)
58
- end
59
-
60
50
  desc "Create RPM"
61
- task 'rpm' => ['gem:copy'] do
51
+ task :rpm, :target, :version, :arch, :needs => ['clean', 'gem'] do |t, args|
52
+ target = args[:target] || 'fedora'
53
+ version = args[:version] || 'rawhide'
54
+ arch = args[:arch] || RbConfig::CONFIG['host_cpu']
55
+
62
56
  Dir["**/rubygem-*.spec"].each do |spec|
63
- `rpmbuild --define '_topdir #{topdir}' -ba #{spec}`
57
+ `mock -v -r #{target}-#{version}-#{arch} --buildsrpm --sources pkg/*.gem --spec #{spec} --resultdir pkg/`
58
+ exit 1 unless $? == 0
59
+ `mock -v -r #{target}-#{version}-#{arch} --rebuild pkg/*.rpm --resultdir pkg/`
64
60
  exit 1 unless $? == 0
65
61
  end
66
62
  end
67
63
 
68
64
  desc "Install RPM"
69
- task 'rpm:install' => ['rpm'] do
70
- puts "sudo yum -y remove rubygem-boxgrinder-core"
65
+ task 'rpm:install' => [:rpm] do
71
66
  system "sudo yum -y remove rubygem-boxgrinder-core"
67
+ system "sudo yum -y localinstall --nogpgcheck pkg/*.rpm"
72
68
  exit 1 unless $? == 0
73
-
74
- puts "sudo yum -y --nogpgcheck localinstall #{topdir}/RPMS/noarch/*.rpm"
75
- system "sudo yum -y --nogpgcheck localinstall #{topdir}/RPMS/noarch/*.rpm"
76
- exit 1 unless $? == 0
77
- end
69
+ end
@@ -2,15 +2,15 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{boxgrinder-core}
5
- s.version = "0.1.2"
5
+ s.version = "0.1.3"
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-11-11}
9
+ s.date = %q{2010-11-23}
10
10
  s.description = %q{Core library for BoxGrinder}
11
11
  s.email = %q{info@boxgrinder.org}
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", "boxgrinder-core.gemspec", "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/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"]
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"]
13
+ s.files = ["CHANGELOG", "LICENSE", "Manifest", "README", "Rakefile", "boxgrinder-core.gemspec", "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", "rubygem-boxgrinder-core.spec", "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"]
14
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"]
@@ -24,10 +24,13 @@ Gem::Specification.new do |s|
24
24
 
25
25
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
26
26
  s.add_runtime_dependency(%q<open4>, [">= 1.0.0"])
27
+ s.add_runtime_dependency(%q<hashery>, [">= 1.3.0"])
27
28
  else
28
29
  s.add_dependency(%q<open4>, [">= 1.0.0"])
30
+ s.add_dependency(%q<hashery>, [">= 1.3.0"])
29
31
  end
30
32
  else
31
33
  s.add_dependency(%q<open4>, [">= 1.0.0"])
34
+ s.add_dependency(%q<hashery>, [">= 1.3.0"])
32
35
  end
33
36
  end
@@ -16,8 +16,9 @@
16
16
  # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
17
17
  # 02110-1301 USA, or see the FSF site: http://www.fsf.org.
18
18
 
19
+ require 'rubygems'
19
20
  require 'boxgrinder-core/defaults'
20
- require 'openhash/openhash'
21
+ require 'hashery/opencascade'
21
22
 
22
23
  module BoxGrinder
23
24
  class ApplianceConfig
@@ -27,13 +28,13 @@ module BoxGrinder
27
28
 
28
29
  @variables = {}
29
30
 
30
- @os = OpenHash.new
31
+ @os = OpenCascade.new
31
32
 
32
33
  @os.name = nil
33
34
  @os.version = nil
34
35
  @os.password = nil
35
36
 
36
- @hardware = OpenHash.new
37
+ @hardware = OpenCascade.new
37
38
 
38
39
  @hardware.cpus = APPLIANCE_DEFAULTS[:hardware][:cpus]
39
40
  @hardware.memory = APPLIANCE_DEFAULTS[:hardware][:memory]
@@ -41,7 +42,7 @@ module BoxGrinder
41
42
 
42
43
  @post = {}
43
44
 
44
- @packages = OpenHash.new
45
+ @packages = OpenCascade.new
45
46
  @packages.includes = []
46
47
  @packages.excludes = []
47
48
 
@@ -81,7 +82,7 @@ module BoxGrinder
81
82
  end
82
83
 
83
84
  def initialize_paths
84
- @path = OpenHash.new
85
+ @path = OpenCascade.new
85
86
 
86
87
  @path.os = "#{@os.name}/#{@os.version}"
87
88
  @path.main = "#{@hardware.arch}/#{@path.os}"
@@ -5,20 +5,22 @@
5
5
 
6
6
  Summary: Core library for BoxGrinder
7
7
  Name: rubygem-%{gemname}
8
- Version: 0.1.2
9
- Release: 1%{?dist}
8
+ Version: 0.1.3
9
+ Release: 3%{?dist}
10
10
  Group: Development/Languages
11
11
  License: LGPLv3+
12
12
  URL: http://www.jboss.org/boxgrinder
13
13
  Source0: http://rubygems.org/gems/%{gemname}-%{version}.gem
14
- Buildroot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
15
14
 
16
15
  Requires: ruby(abi) = %{rubyabi}
17
- Requires: rubygems >= 1.2
18
- Requires: ruby >= 0
19
- Requires: rubygem(open4) >= 1.0.0
20
- BuildRequires: rubygems >= 1.2
21
- BuildRequires: ruby >= 0
16
+ Requires: rubygem(open4)
17
+ Requires: rubygem(hashery)
18
+
19
+ BuildRequires: rubygem(rake)
20
+ BuildRequires: rubygem(rspec)
21
+ BuildRequires: rubygem(open4)
22
+ BuildRequires: rubygem(hashery)
23
+ BuildRequires: rubygem(echoe)
22
24
 
23
25
  BuildArch: noarch
24
26
  Provides: rubygem(%{gemname}) = %{version}
@@ -35,24 +37,22 @@ Requires:%{name} = %{version}-%{release}
35
37
  Documentation for %{name}
36
38
 
37
39
  %prep
40
+ %setup -q -c -T
41
+ mkdir -p .%{gemdir}
42
+ gem install --local --install-dir .%{gemdir} \
43
+ --force --rdoc %{SOURCE0}
38
44
 
39
45
  %build
40
46
 
41
47
  %install
42
- rm -rf %{buildroot}
43
48
  mkdir -p %{buildroot}%{gemdir}
44
- gem install --local --install-dir %{buildroot}%{gemdir} \
45
- --force --rdoc %{SOURCE0}
49
+ cp -a .%{gemdir}/* %{buildroot}%{gemdir}/
46
50
 
47
51
  %check
48
- pushd %{buildroot}/%{geminstdir}
52
+ pushd .%{geminstdir}
49
53
  rake spec
50
- rm -rf log
51
54
  popd
52
55
 
53
- %clean
54
- rm -rf %{buildroot}
55
-
56
56
  %files
57
57
  %defattr(-, root, root, -)
58
58
  %dir %{geminstdir}
@@ -73,6 +73,19 @@ rm -rf %{buildroot}
73
73
  %{gemdir}/doc/%{gemname}-%{version}
74
74
 
75
75
  %changelog
76
+ * Wed Nov 17 2010 <mgoldman@redhat.com> - 0.1.3-3
77
+ - Added: BuildRequires: rubygem(echoe)
78
+ - Changed the way Gem is installed and tests are exeuted
79
+
80
+ * Mon Nov 15 2010 <mgoldman@redhat.com> - 0.1.3-2
81
+ - Removing unecessary Requires: rubygems
82
+
83
+ * Mon Nov 15 2010 <mgoldman@redhat.com> - 0.1.3-1
84
+ - Removed BuildRoot tag
85
+ - Adjusted Requires and BuildRequires
86
+ - Different approach for testing
87
+ - [BGBUILD-98] Use hashery gem
88
+
76
89
  * Tue Nov 09 2010 <mgoldman@redhat.com> - 0.1.2-1
77
90
  - [BGBUILD-87] Set default filesystem to ext4 for Fedora 13+
78
91
  - [BGBUILD-65] Allow to specify own repos overriding default repos provided for selected OS
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: 31
4
+ hash: 29
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 2
10
- version: 0.1.2
9
+ - 3
10
+ version: 0.1.3
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-11-11 00:00:00 +01:00
18
+ date: 2010-11-23 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -34,6 +34,22 @@ dependencies:
34
34
  version: 1.0.0
35
35
  type: :runtime
36
36
  version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: hashery
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 27
46
+ segments:
47
+ - 1
48
+ - 3
49
+ - 0
50
+ version: 1.3.0
51
+ type: :runtime
52
+ version_requirements: *id002
37
53
  description: Core library for BoxGrinder
38
54
  email: info@boxgrinder.org
39
55
  executables: []
@@ -56,7 +72,6 @@ extra_rdoc_files:
56
72
  - lib/boxgrinder-core/models/task.rb
57
73
  - lib/boxgrinder-core/validators/appliance-config-validator.rb
58
74
  - lib/boxgrinder-core/validators/errors.rb
59
- - lib/openhash/openhash.rb
60
75
  files:
61
76
  - CHANGELOG
62
77
  - LICENSE
@@ -76,7 +91,6 @@ files:
76
91
  - lib/boxgrinder-core/models/task.rb
77
92
  - lib/boxgrinder-core/validators/appliance-config-validator.rb
78
93
  - lib/boxgrinder-core/validators/errors.rb
79
- - lib/openhash/openhash.rb
80
94
  - rubygem-boxgrinder-core.spec
81
95
  - spec/helpers/appliance-config-helper-spec.rb
82
96
  - spec/helpers/appliance-helper-spec.rb
@@ -1,92 +0,0 @@
1
- # The MIT License
2
- #
3
- # Copyright (c) 2005 Thomas Sawyer
4
- #
5
- # Permission is hereby granted, free of charge, to any person obtaining a copy
6
- # of this software and associated documentation files (the "Software"), to deal
7
- # in the Software without restriction, including without limitation the rights
8
- # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- # copies of the Software, and to permit persons to whom the Software is
10
- # furnished to do so, subject to the following conditions:
11
- #
12
- # The above copyright notice and this permission notice shall be included in
13
- # all copies or substantial portions of the Software.
14
- #
15
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- # THE SOFTWARE.
22
-
23
- class OpenHash < Hash
24
-
25
- # New OpenHash.
26
- def initialize(data={})
27
- super()
28
- merge!(data)
29
- end
30
-
31
- #
32
- def <<(x)
33
- case x
34
- when Hash
35
- update(x)
36
- when Array
37
- x.each_slice(2) do |(k, v)|
38
- self[k] = v
39
- end
40
- end
41
- end
42
-
43
- #
44
- def respond_to?(name)
45
- key?(name.to_sym) || super(name)
46
- end
47
-
48
- #
49
- def to_h
50
- dup
51
- end
52
-
53
- #
54
- def to_hash
55
- dup
56
- end
57
-
58
- #
59
- def inspect
60
- super
61
- end
62
-
63
- # Omit specific Hash methods from slot protection.
64
- def omit!(*methods)
65
- methods.reject!{ |x| x.to_s =~ /^__/ }
66
- (
67
- class << self;
68
- self;
69
- end).class_eval{ private *methods }
70
- end
71
-
72
- # Route get and set calls.
73
- def method_missing(s, *a, &b)
74
- type = s.to_s[-1, 1]
75
- name = s.to_s.sub(/[!?=]$/, '')
76
- key = name.to_sym
77
- case type
78
- when '='
79
- self[key] = a[0]
80
- #when '!'
81
- # self[s] = OpenHash.new
82
- when '?'
83
- key?(key)
84
- else
85
- if key?(key)
86
- self[key]
87
- else
88
- nil # super(s, *a, &b)
89
- end
90
- end
91
- end
92
- end