1 Summary: Next-Generation Provisioning for bare metal and virtual servers
7 Source0: https://github.com/puppetlabs/Razor/archive/%{version}.tar.gz?/%{name}-%{version}.tgz
8 # Source0-md5: b7b595cfb9a523018e1139da2dd3ebd0
9 URL: https://github.com/puppetlabs/Razor/wiki
10 BuildRequires: rpm-rubyprov
11 BuildRequires: rpmbuild(macros) >= 1.656
12 BuildRequires: sed >= 4.0
15 Requires: ruby-bson_ext
16 Requires: ruby-colored
17 Requires: ruby-daemons
21 Requires: ruby-net-ssh
24 Requires: ruby-require_all
28 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31 Razor is an advanced provisioning application which can deploy both
32 bare-metal and virtual systems. It's aimed at solving the problem of
33 how to bring new metal into a state where your existing
34 DevOps/configuration management workflows can take it over.
36 Newly added machines in a Razor deployment will PXE-boot from a
37 special Razor Microkernel image, then check in, provide Razor with
38 inventory information, and wait for further instructions. Razor will
39 consult user-created policy rules to choose which preconfigured model
40 to apply to a new node, which will begin to follow the model's
41 directions, giving feedback to Razor as it completes various steps.
42 Models can include steps for handoff to a DevOps system or to any
43 other system capable of controlling the node (such as a vCenter server
44 taking possession of ESX systems).
47 %setup -q -n Razor-%{version}
48 %{__sed} -i -e '1 s,#!.*ruby,#!%{__ruby},' bin/*
53 rm -rf $RPM_BUILD_ROOT
54 install -d $RPM_BUILD_ROOT{%{ruby_vendorlibdir},%{_bindir}}
55 cp -a bin/* $RPM_BUILD_ROOT%{_bindir}
56 cp -a lib/* $RPM_BUILD_ROOT%{ruby_vendorlibdir}
59 rm -rf $RPM_BUILD_ROOT
62 %defattr(644,root,root,755)
63 %doc README.md LICENSE CONTRIBUTING.md TESTING.md
64 %attr(755,root,root) %{_bindir}/razor
65 %attr(755,root,root) %{_bindir}/razor_daemon.rb
67 %attr(755,root,root) %{_bindir}/api.js
68 %attr(755,root,root) %{_bindir}/common.js
69 %attr(755,root,root) %{_bindir}/http_range_req.js
70 %attr(755,root,root) %{_bindir}/image_svc.js
71 %{ruby_vendorlibdir}/project_razor.rb
72 %{ruby_vendorlibdir}/project_razor