]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # Conditional build: | |
3 | %bcond_without tests # build without tests | |
4 | ||
5 | %define pkgname ohai | |
6 | Summary: Profiles your system and emits JSON | |
7 | Name: ruby-%{pkgname} | |
8 | Version: 6.18.0 | |
9 | Release: 1 | |
10 | License: Apache v2.0 | |
11 | Group: Development/Languages | |
12 | Source0: https://github.com/opscode/ohai/archive/%{version}/%{pkgname}-%{version}.tar.gz | |
13 | # Source0-md5: 898ee1f9395b9b7dc5c7d9779b8a6291 | |
14 | Patch0: virtualization-vserver.patch | |
15 | Patch1: php-builddate.patch | |
16 | URL: http://docs.opscode.com/ohai.html | |
17 | BuildRequires: rpm-rubyprov | |
18 | BuildRequires: rpmbuild(macros) >= 1.665 | |
19 | BuildRequires: ruby-rake | |
20 | BuildRequires: sed >= 4.0 | |
21 | %if %{with tests} | |
22 | BuildRequires: ruby-ipaddress | |
23 | BuildRequires: ruby-mixlib-config | |
24 | BuildRequires: ruby-mixlib-log | |
25 | BuildRequires: ruby-mixlib-shellout | |
26 | BuildRequires: ruby-rspec | |
27 | BuildRequires: ruby-systemu | |
28 | BuildRequires: ruby-yajl | |
29 | %endif | |
30 | Requires: lsb-release | |
31 | Requires: ruby-ipaddress | |
32 | Requires: ruby-mixlib-cli | |
33 | Requires: ruby-mixlib-config | |
34 | Requires: ruby-mixlib-log | |
35 | Requires: ruby-mixlib-shellout | |
36 | Requires: ruby-systemu | |
37 | Requires: ruby-yajl | |
38 | BuildArch: noarch | |
39 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
40 | ||
41 | %description | |
42 | Ohai detects data about your operating system and prints out a JSON | |
43 | data blob. It can be used standalone, but it's primary purpose is to | |
44 | provide node data to Chef. | |
45 | ||
46 | %package doc | |
47 | Summary: Documentation for %{name} | |
48 | Group: Documentation | |
49 | Requires: %{name} = %{version}-%{release} | |
50 | ||
51 | %description doc | |
52 | This package contains documentation for %{name}. | |
53 | ||
54 | %prep | |
55 | %setup -q -n ohai-%{version} | |
56 | %patch0 -p1 | |
57 | %patch1 -p1 | |
58 | %{__sed} -i -e '1 s,#!.*ruby,#!%{__ruby},' bin/* | |
59 | ||
60 | # no plist and not darwin so don't care | |
61 | rm spec/unit/plugins/darwin/system_profiler_spec.rb | |
62 | ||
63 | # can't figure how to fix -r rubygems does not help | |
64 | # ohai-6.16.0/spec/unit/plugins/ruby_spec.rb:52:in `block in <top (required)>': uninitialized cons tant Gem (NameError) | |
65 | rm spec/unit/plugins/ruby_spec.rb | |
66 | ||
67 | %build | |
68 | rake gem | |
69 | %{__tar} -xmf pkg/ohai-%{version}.gem | |
70 | %__gem_helper spec | |
71 | ||
72 | %if %{with tests} | |
73 | # Occasionally fails with "undefined method `rfc2822' for nil:NilClass" during | |
74 | # mock. Unsure why - disable for now. | |
75 | #sed -i 's^Time.should_receive(:now)^^' spec/ohai/plugins/ohai_time_spec.rb | |
76 | LC_ALL=en_US.utf8 \ | |
77 | rake -r rubygems spec | |
78 | %endif | |
79 | ||
80 | %install | |
81 | rm -rf $RPM_BUILD_ROOT | |
82 | install -d $RPM_BUILD_ROOT{%{ruby_vendorlibdir},%{ruby_specdir},%{_bindir},%{_mandir}/man1} | |
83 | cp -a bin/* $RPM_BUILD_ROOT%{_bindir} | |
84 | cp -a lib/* $RPM_BUILD_ROOT%{ruby_vendorlibdir} | |
85 | cp -p docs/man/man1/ohai.1 $RPM_BUILD_ROOT%{_mandir}/man1 | |
86 | cp -p %{pkgname}-%{version}.gemspec $RPM_BUILD_ROOT%{ruby_specdir} | |
87 | ||
88 | %clean | |
89 | rm -rf $RPM_BUILD_ROOT | |
90 | ||
91 | %files | |
92 | %defattr(644,root,root,755) | |
93 | %doc README.rdoc CHANGELOG NOTICE | |
94 | %attr(755,root,root) %{_bindir}/ohai | |
95 | %{_mandir}/man1/ohai.1* | |
96 | %{ruby_vendorlibdir}/%{pkgname}.rb | |
97 | %{ruby_vendorlibdir}/%{pkgname} | |
98 | %{ruby_specdir}/%{pkgname}-%{version}.gemspec |