1 Summary: Configuration management system
6 Group: Applications/System
7 URL: http://trac.mcs.anl.gov/projects/bcfg2
8 Source0: ftp://ftp.mcs.anl.gov/pub/bcfg/%{name}-%{version}.tar.gz
9 # Source0-md5: 6fbf36acc5cc58b2504a25c25cad3921
10 BuildRequires: python-devel
11 BuildRequires: rpm-pythonprov
12 BuildRequires: rpmbuild(macros) >= 1.710
13 Requires: python-modules
15 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
18 Bcfg2 helps system administrators produce a consistent, reproducible,
19 and verifiable description of their environment, and offers
20 visualization and reporting tools to aid in day-to-day administrative
21 tasks. It is the fifth generation of configuration management tools
22 developed in the Mathematics and Computer Science Division of Argonne
25 It is based on an operational model in which the specification can be
26 used to validate and optionally change the state of clients, but in a
27 feature unique to bcfg2 the client's response to the specification can
28 also be used to assess the completeness of the specification. Using
29 this feature, bcfg2 provides an objective measure of how good a job an
30 administrator has done in specifying the configuration of client
31 systems. Bcfg2 is therefore built to help administrators construct an
32 accurate, comprehensive specification.
34 Bcfg2 has been designed from the ground up to support gentle
35 reconciliation between the specification and current client states. It
36 is designed to gracefully cope with manual system modifications.
38 Finally, due to the rapid pace of updates on modern networks, client
39 systems are constantly changing; if required in your environment,
40 Bcfg2 can enable the construction of complex change management and
41 deployment strategies.
43 %package -n bcfg2-server
45 Group: Networking/Daemons
49 Requires: python-pyOpenSSL
51 %description -n bcfg2-server
52 Bcfg2 helps system administrators produce a consistent, reproducible,
53 and verifiable description of their environment, and offers
54 visualization and reporting tools to aid in day-to-day administrative
55 tasks. It is the fifth generation of configuration management tools
56 developed in the Mathematics and Computer Science Division of Argonne
59 It is based on an operational model in which the specification can be
60 used to validate and optionally change the state of clients, but in a
61 feature unique to bcfg2 the client's response to the specification can
62 also be used to assess the completeness of the specification. Using
63 this feature, bcfg2 provides an objective measure of how good a job an
64 administrator has done in specifying the configuration of client
65 systems. Bcfg2 is therefore built to help administrators construct an
66 accurate, comprehensive specification.
68 Bcfg2 has been designed from the ground up to support gentle
69 reconciliation between the specification and current client states. It
70 is designed to gracefully cope with manual system modifications.
72 Finally, due to the rapid pace of updates on modern networks, client
73 systems are constantly changing; if required in your environment,
74 Bcfg2 can enable the construction of complex change management and
75 deployment strategies.
84 rm -rf $RPM_BUILD_ROOT
87 %py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
88 %py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
91 install -d $RPM_BUILD_ROOT%{_bindir}
92 install -d $RPM_BUILD_ROOT%{_sbindir}
93 install -d $RPM_BUILD_ROOT%{_initrddir}
94 install -d $RPM_BUILD_ROOT%{_sysconfdir}/default
95 install -d $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily
96 install -d $RPM_BUILD_ROOT%{_sysconfdir}/cron.hourly
97 install -d $RPM_BUILD_ROOT%{_libdir}/bcfg2
98 %{__mv} $RPM_BUILD_ROOT%{_bindir}/bcfg2* $RPM_BUILD_ROOT%{_sbindir}
99 install redhat/scripts/bcfg2.init $RPM_BUILD_ROOT/etc/rc.d/init.d/bcfg2
100 install redhat/scripts/bcfg2-server.init $RPM_BUILD_ROOT/etc/rc.d/init.d/bcfg2-server
101 install debian/bcfg2.default $RPM_BUILD_ROOT%{_sysconfdir}/default/bcfg2
102 install debian/bcfg2-server.default $RPM_BUILD_ROOT%{_sysconfdir}/default/bcfg2-server
103 install debian/bcfg2.cron.daily $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily/bcfg2
104 install debian/bcfg2.cron.hourly $RPM_BUILD_ROOT%{_sysconfdir}/cron.hourly/bcfg2
105 install tools/bcfg2-cron $RPM_BUILD_ROOT%{_libdir}/bcfg2/bcfg2-cron
108 rm -rf $RPM_BUILD_ROOT
110 %post -n bcfg2-server
111 /sbin/chkconfig --add bcfg2-server
114 %defattr(644,root,root,755)
115 %attr(755,root,root) %{_sbindir}/bcfg2
116 %dir %{py_sitescriptdir}/Bcfg2
117 %{py_sitescriptdir}/Bcfg2/*.py[co]
118 %dir %{py_sitescriptdir}/Bcfg2/Client
119 %{py_sitescriptdir}/Bcfg2/Client/*
123 %config(noreplace) %{_sysconfdir}/default/bcfg2
124 %{_sysconfdir}/cron.hourly/bcfg2
125 /etc/cron.daily/bcfg2
126 %{_libdir}/bcfg2/bcfg2-cron
128 %files -n bcfg2-server
129 %defattr(644,root,root,755)
130 %attr(754,root,root) /etc/rc.d/init.d/bcfg2-server
131 %{py_sitescriptdir}/Bcfg2/Server
133 %config(noreplace) %{_sysconfdir}/default/bcfg2-server
134 %attr(755,root,root) %{_sbindir}/bcfg2-admin
135 %attr(755,root,root) %{_sbindir}/bcfg2-build-reports
136 %attr(755,root,root) %{_sbindir}/bcfg2-info
137 %attr(755,root,root) %{_sbindir}/bcfg2-ping-sweep
138 %attr(755,root,root) %{_sbindir}/bcfg2-repo-validate
139 %attr(755,root,root) %{_sbindir}/bcfg2-reports
140 %attr(755,root,root) %{_sbindir}/bcfg2-server
142 %dir %{_libdir}/bcfg2