0ccf279
%if 0%{?el5}%{?el6}%{?fc16}
0ccf279
%global ruby_vendorlibdir %{_prefix}/lib/ruby/site_ruby/1.8
0ccf279
%global ruby_version 1.8
0ccf279
%endif
1f13e14
0ccf279
Summary:   A framework to build server orchestration or parallel job execution systems
0ccf279
Name:      mcollective
0265d37
Version:   2.4.1
0265d37
Release:   1%{?dist}
0ccf279
Group:     Applications/System
0ccf279
License:   ASL 2.0
1f13e14
0ccf279
URL:       http://docs.puppetlabs.com/mcollective/
1f13e14
0265d37
Source0:   http://puppetlabs.com/downloads/mcollective/%{name}-%{version}.tar.gz
0ccf279
Source1:   mcollective.service
1f13e14
9dd9ec5
1f13e14
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
1f13e14
0ccf279
BuildRequires: ruby-devel
0265d37
%if 0%{?fedora} >= 18 || 0%{?rhel} >= 7
10ee73c
BuildRequires: systemd
1f13e14
%endif
1f13e14
0ccf279
BuildArch: noarch
0ccf279
0ccf279
Requires:  mcollective-common = %{version}-%{release}
1f13e14
0265d37
%if 0%{?fedora} >= 18 || 0%{?rhel} >= 7
10ee73c
Requires(post):   systemd
10ee73c
Requires(preun):  systemd
10ee73c
Requires(postun): systemd
1f13e14
%endif
1f13e14
1f13e14
%package common
1f13e14
Summary: Common libraries for the mcollective clients and servers
1f13e14
Group: Applications/System
1f13e14
Requires: ruby
0265d37
%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7
b283656
Requires: ruby(release)
b283656
%else
0ccf279
Requires: ruby(abi) = %{ruby_version}
b283656
%endif
1f13e14
Requires: rubygems
1f13e14
Requires: rubygem(json)
1f13e14
Requires: rubygem(stomp)
1f13e14
Requires: rubygem(systemu)
1f13e14
1f13e14
%description common
1f13e14
Common libraries for the mcollective clients and servers
1f13e14
1f13e14
%package client
1f13e14
Summary: Client tools for the mcollective application server
1f13e14
Requires: mcollective-common = %{version}-%{release}
1f13e14
Group: Applications/System
1f13e14
1f13e14
%description client
1f13e14
Client tools for the mcollective application server
1f13e14
1f13e14
%description
1f13e14
The Marionette Collective is a framework to build server orchestration
1f13e14
or parallel job execution systems.
1f13e14
1f13e14
%prep
1f13e14
%setup0 -q
671a2ea
rm -rf lib/mcollective/vendor/json
671a2ea
rm -rf lib/mcollective/vendor/systemu
671a2ea
rm -rf lib/mcollective/vendor/load_*.rb
1f13e14
1f13e14
%build
f82108e
# Nothing to build.
1f13e14
1f13e14
%install
1f13e14
rm -rf %{buildroot}
1f13e14
0ccf279
%{__install} -d -m0755  %{buildroot}/%{ruby_vendorlibdir}/mcollective
0ccf279
cp --preserve=timestamps --recursive lib/* %{buildroot}/%{ruby_vendorlibdir}
1f13e14
1f13e14
%{__install} -d -m0755  %{buildroot}/usr/sbin
54860e3
%{__install} -p -m0755 bin/mcollectived %{buildroot}/usr/sbin/mcollectived
54860e3
%{__install} -p -m0755 bin/mco %{buildroot}/usr/sbin/mco
1f13e14
10ee73c
%if 0%{?rhel} 
1f13e14
%{__install} -d -m0755  %{buildroot}%{_initrddir}
cf47a32
%{__install} -p -m0755 ext/redhat/mcollective.init %{buildroot}%{_initrddir}/mcollective
1f13e14
%endif
1f13e14
10ee73c
%if 0%{?fedora} >= 18
1f13e14
%{__install} -d -m0755  %{buildroot}%{_unitdir}
1f13e14
%{__install} -p -m0644 %{SOURCE1} %{buildroot}%{_unitdir}/mcollective.service
1f13e14
%endif
1f13e14
0ccf279
%{__install} -d -m0755  %{buildroot}%{_libexecdir}/mcollective
0ccf279
cp --preserve=timestamps --recursive plugins/* %{buildroot}%{_libexecdir}/mcollective
1f13e14
1f13e14
%{__install} -d -m0755  %{buildroot}/etc/mcollective
1f13e14
%{__install} -d -m0755  %{buildroot}/etc/mcollective/ssl
1f13e14
%{__install} -d -m0755  %{buildroot}/etc/mcollective/ssl/clients
f2919b5
%{__install} -d -m0755  %{buildroot}/etc/mcollective/plugin.d/clients
1f13e14
%{__install} -p -m0640 etc/server.cfg.dist %{buildroot}/etc/mcollective/server.cfg
f287961
%{__install} -p -m0644 etc/client.cfg.dist %{buildroot}/etc/mcollective/client.cfg
1f13e14
%{__install} -p -m0644 etc/facts.yaml.dist %{buildroot}/etc/mcollective/facts.yaml
f2919b5
%{__install} -p -m0644 etc/*.erb %{buildroot}/etc/mcollective/
1f13e14
1f13e14
%clean
1f13e14
rm -rf %{buildroot}
1f13e14
1f13e14
%post
10ee73c
%if 0%{?rhel}
1f13e14
/sbin/chkconfig --add mcollective || :
1f13e14
%endif
10ee73c
%if 0%{?fedora} >= 18
10ee73c
%systemd_post mcollective.service
1f13e14
%endif
1f13e14
1f13e14
%postun
10ee73c
%if 0%{?rhel}
1f13e14
if [ "$1" -ge 1 ]; then
1f13e14
        /sbin/service mcollective condrestart &>/dev/null || :
1f13e14
fi
1f13e14
%endif
10ee73c
%if 0%{?fedora} >= 18
10ee73c
%systemd_postun_with_restart mcollective.service
1f13e14
%endif
1f13e14
1f13e14
%preun
10ee73c
%if 0%{?rhel}
1f13e14
if [ "$1" = 0 ] ; then
1f13e14
  /sbin/service mcollective stop > /dev/null 2>&1
1f13e14
  /sbin/chkconfig --del mcollective || :
1f13e14
fi
1f13e14
%endif
10ee73c
%if 0%{?fedora} >= 18
10ee73c
%systemd_preun mcollective.service
1f13e14
%endif
1f13e14
1f13e14
%files common
1f13e14
%defattr(-,root,root,-)
1f13e14
%doc COPYING
0ccf279
%{ruby_vendorlibdir}/mcollective.rb
0ccf279
%{ruby_vendorlibdir}/mcollective
0ccf279
%{_libexecdir}/mcollective
0ccf279
%dir %{_sysconfdir}/mcollective
0ccf279
%dir %{_sysconfdir}/mcollective/ssl
f2919b5
%config(noreplace) %{_sysconfdir}/mcollective/*.erb
1f13e14
1f13e14
%files client
1f13e14
%defattr(-,root,root,-)
1f13e14
%doc COPYING
f287961
%config(noreplace) %{_sysconfdir}/mcollective/client.cfg
1f13e14
%{_sbindir}/mco
1f13e14
1f13e14
%files
1f13e14
%defattr(-,root,root,-)
1f13e14
%doc COPYING
1f13e14
%config(noreplace) /etc/mcollective/server.cfg
1f13e14
%config(noreplace) /etc/mcollective/facts.yaml
1f13e14
%{_sbindir}/mcollectived
10ee73c
%if 0%{?rhel} 
1f13e14
%{_initrddir}/mcollective
1f13e14
%endif
10ee73c
%if 0%{?fedora} >= 18
1f13e14
%{_unitdir}/mcollective.service
1f13e14
%endif
1f13e14
%dir /etc/mcollective/ssl/clients
f2919b5
%dir /etc/mcollective/plugin.d
1f13e14
1f13e14
%changelog
0265d37
* Wed Feb 12 2014 Steve Traylen <steve.traylen@cern.ch> - 2.4.1-1
0265d37
- Upstream 2.4.1
0265d37
8041afc
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.3-2
8041afc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
8041afc
3f3b3eb
* Wed Apr 17 2013 Vít Ondruch <vondruch@redhat.com> - 2.2.3-1
3f3b3eb
- Upstream to 2.2.3
9dd9ec5
- Add mcollective-rhbz#952970.patch
10ee73c
- rhbz#850200 Use new systemd rpm macros.
f82108e
- rhbz#868417 Use deamonozie allways in configuration.
3f3b3eb
b283656
* Wed Mar 20 2013 Vít Ondruch <vondruch@redhat.com> - 2.2.0-3
b283656
- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0
b283656
40d2afa
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.0-2
40d2afa
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
40d2afa
f2919b5
* Sat Sep 22 2012 Steve Traylen <steve.traylen@cern.ch> - 2.2.0-1
f2919b5
- Update to 2.2.0, add plugin.d directory to package, add missing
f2919b5
  .erb help files.
f2919b5
f287961
* Wed Sep 5 2012 Steve Traylen <steve.traylen@cern.ch> - 2.0.0-6
f287961
- Fix rhbz#853574 in different way. 0644 client.cfg.
f287961
257a65e
* Wed Sep 5 2012 Steve Traylen <steve.traylen@cern.ch> - 2.0.0-5
257a65e
- Add mco unix group who can read client.cfg rhbz#853574
257a65e
ff461f3
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0.0-4
ff461f3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
ff461f3
671a2ea
* Tue May 22 2012 Steve Traylen <steve.traylen@cern.ch> - 2.0.0-3
671a2ea
- Drop 0001-get-rid-of-vendor-libraries.patch and
671a2ea
  0002-Don-t-enable-services-by-default.patch. vendor load falls
671a2ea
  back to system path.
671a2ea
0ef7831
* Mon May 21 2012 Steve Traylen <steve.traylen@cern.ch> - 2.0.0-2
0ef7831
- Fix ExecReload in systemd file.
cf47a32
- Use alternate SysV start up file dropping lsb requires.
0ef7831
cc1b2d2
* Thu May 3 2012 Steve Traylen <steve.traylen@cern.ch> - 2.0.0-1
cc1b2d2
- New version.
cc1b2d2
caa5433
* Fri Apr 27 2012 Steve Traylen <steve.traylen@cern.ch> - 1.3.3-5
caa5433
- Finger trouble.
caa5433
06d3028
* Fri Apr 27 2012 Steve Traylen <steve.traylen@cern.ch> - 1.3.3-4
06d3028
- Fix patch 0001 to stop loading verdor directory.
06d3028
f94ae5c
* Tue Apr 24 2012 Steve Traylen <steve.traylen@cern.ch> - 1.3.3-3
f94ae5c
- Fix systemd start up file.
f94ae5c
0ccf279
* Wed Apr 18 2012 Steve Traylen <steve.traylen@cern.ch> - 1.3.3-2
0ccf279
- Update to Fedora's new ruby guidelines.
0ccf279
54860e3
* Tue Apr 17 2012 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.3-1
54860e3
- 1.3.3
54860e3
- see releasenotes: http://docs.puppetlabs.com/mcollective/releasenotes.html
54860e3
d9d873a
* Fri Jan 13 2012 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.2-1
d9d873a
- 1.3.2
d9d873a
- see releasenotes: http://docs.puppetlabs.com/mcollective/releasenotes.html
d9d873a
3134b54
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.1-7
3134b54
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
3134b54
1f13e14
* Wed Dec  7 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.1-6
1f13e14
- Use sed instead of perl in build section
1f13e14
1f13e14
* Tue Dec  6 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.1-5
1f13e14
- Use patches instead of perl
1f13e14
- Remove included copy of systemu
1f13e14
1f13e14
* Mon Dec  5 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.1-4
1f13e14
- More work on keeping init scripts disabled by default
1f13e14
- reorder defattr and doc lines
1f13e14
1f13e14
* Thu Dec  1 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.1-3
1f13e14
- Don't enable SysV init script by default
1f13e14
- use sbindir macro for a few more things
1f13e14
- fix config(noreplace) flag
1f13e14
- default file attributes for EPEL
1f13e14
1f13e14
* Thu Nov 17 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.1-2
1f13e14
- Remove internal copy of JSON library
1f13e14
1f13e14
* Thu Nov 17 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.1-1
1f13e14
- Update to 1.3.1
1f13e14
1f13e14
* Thu Aug 18 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.3.0-1
1f13e14
- Update to 1.3.0
1f13e14
1f13e14
* Fri May 27 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.2.0-2
1f13e14
- Add mco script
1f13e14
1f13e14
* Mon May 23 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.2.0-1
1f13e14
- Update to 1.2.0
1f13e14
1f13e14
* Wed Apr 20 2011 Jeffrey Ollie <jeff@ocjtech.us> - 1.1.3-3
1f13e14
- First version for Fedora