]> git.pld-linux.org Git - packages/chef.git/blobdiff - chef.spec
use poldek as package manager :)
[packages/chef.git] / chef.spec
index ee8f4a496a54e94cac8663b3ce2383b6d4fbf1d7..d6a1ae5551003eb727ecb90c488eafc4d461d7e2 100644 (file)
--- a/chef.spec
+++ b/chef.spec
@@ -1,20 +1,42 @@
-# TODO
-# - try not to use /var/chef
+#
+# Conditional build:
+%bcond_with    tests           # build without tests
+
 Summary:       A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure
 Name:          chef
-Version:       11.4.0
-Release:       0.4
+Version:       11.4.4
+Release:       2
 License:       Apache v2.0
 Group:         Development/Languages
 Source0:       http://rubygems.org/downloads/%{name}-%{version}.gem
-# Source0-md5: 1ebabd6fdeae44a99d5cb199c38adc15
+# Source0-md5: dc50aa6a4a7d4785a4c82fcaab3f9436
+Source1:       %{name}.rb
+Patch0:                platform-pld.patch
+Patch1:                FHS.patch
+Patch2:                https://github.com/glensc/chef/compare/poldek.patch
+# Patch2-md5:  df7d8380da401ba9c37faeeb9250ae36
 URL:           http://wiki.opscode.com/display/chef
 BuildRequires: rpm-rubyprov
 BuildRequires: rpmbuild(macros) >= 1.656
-Requires:      ruby >= 1:1.8.7
+BuildRequires: sed >= 4.0
+%if %{with tests}
+BuildRequires: ruby-abstract
+BuildRequires: ruby-mixlib-authentication >= 1.3.0
+BuildRequires: ruby-net-ssh-multi >= 1.1.0
+BuildRequires: ruby-rack
+BuildRequires: ruby-rake
+#BuildRequires:        ruby-rdoc
+BuildRequires: ruby-rest-client >= 1.0.4
+BuildRequires: ruby-rspec-core >= 2.12.0
+BuildRequires: ruby-rspec-expectations >= 2.12.0
+BuildRequires: ruby-rspec-mocks >= 2.12.0
+#BuildRequires:        ruby-rspec_junit_formatter
+#BuildRequires:        ruby-sdoc
+%endif
+Requires:      lsb-release
+Requires:      poldek >= 0.30
 Requires:      ruby-erubis
 Requires:      ruby-highline >= 1.6.9
-Requires:      ruby-json <= 1.7.7
 Requires:      ruby-json >= 1.4.4
 Requires:      ruby-mixlib-authentication >= 1.3.0
 Requires:      ruby-mixlib-cli >= 1.3.0
@@ -24,7 +46,6 @@ Requires:     ruby-mixlib-shellout
 Requires:      ruby-net-ssh >= 2.6
 Requires:      ruby-net-ssh-multi >= 1.1.0
 Requires:      ruby-ohai >= 0.6.0
-Requires:      ruby-rest-client < 1.7.0
 Requires:      ruby-rest-client >= 1.0.4
 Requires:      ruby-rubygems
 Requires:      ruby-yajl >= 1.1
@@ -37,14 +58,25 @@ configuration management to your entire infrastructure.
 
 %prep
 %setup -q
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+
+%{__sed} -i -e '1 s,#!.*ruby,#!%{__ruby},' bin/*
+
+%build
+%if %{with tests}
+rspec spec
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{ruby_rubylibdir},%{_bindir}}
+install -d $RPM_BUILD_ROOT{%{ruby_vendorlibdir},%{_bindir}} \
+       $RPM_BUILD_ROOT{%{_sysconfdir},/var/{cache,lib}}/%{name}
+cp -a lib/* $RPM_BUILD_ROOT%{ruby_vendorlibdir}
 cp -a bin/* $RPM_BUILD_ROOT%{_bindir}
-cp -a lib/* $RPM_BUILD_ROOT%{ruby_rubylibdir}
 
-install -d $RPM_BUILD_ROOT{%{_sysconfdir},/var}/%{name}
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/chef.rb
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -53,14 +85,15 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc README.md CONTRIBUTING.md
 %dir %{_sysconfdir}/%{name}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/chef.rb
 %attr(755,root,root) %{_bindir}/chef-apply
 %attr(755,root,root) %{_bindir}/chef-client
 %attr(755,root,root) %{_bindir}/chef-shell
 %attr(755,root,root) %{_bindir}/chef-solo
 %attr(755,root,root) %{_bindir}/knife
 %attr(755,root,root) %{_bindir}/shef
-%{ruby_rubylibdir}/chef.rb
-%{ruby_rubylibdir}/chef
+%{ruby_vendorlibdir}/chef.rb
+%{ruby_vendorlibdir}/chef
 
-# FIXME: FHS
-%dir /var/%{name}
+%dir /var/lib/%{name}
+%dir /var/cache/%{name}
This page took 2.170283 seconds and 4 git commands to generate.