add a monit configuration file
[certmaster.git] / certmaster.spec
1
2
3 # We can run on Rhel 3'ish systems, but only if python2.3 is installed
4 %if 0%{?rhel} == 3
5 %define __python_ver 2.3
6 %endif
7 %define python python%{?__python_ver}
8 %define __python /usr/bin/%{python}
9
10
11 %{!?python_version: %define python_version %(%{__python} -c "from distutils.sysconfig import get_python_version; print get_python_version()")}
12 %{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
13
14 %define is_suse %(test -e /etc/SuSE-release && echo 1 || echo 0)
15
16
17 Summary: Remote certificate distribution framework
18 Name: certmaster
19 Version: 0.24
20 Release: 5%{?dist}
21 Source0: %{name}-%{version}.tar.gz
22 License: GPLv2+
23 Group: Applications/System
24 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
25 BuildArch: noarch
26 Url: https://fedorahosted.org/certmaster
27
28 %if 0%{?rhel} == 3
29 Requires: %{python}
30 Requires: pyOpenSSL-py23
31 %else
32 Requires: python >= 2.3
33 Requires: pyOpenSSL
34 %endif
35
36 # NOTE: if you
37 BuildRequires: %{python}-devel
38 %if %is_suse
39 BuildRequires: gettext-devel
40 %else
41 %if 0%{?fedora} >= 8
42 BuildRequires: python-setuptools-devel
43 %else
44 %if 0%{?rhel} >= 5
45 BuildRequires: python-setuptools
46 %endif
47 %endif
48 %endif
49
50
51
52 %description
53
54 certmaster is a easy mechanism for distributing SSL certificates
55
56 %prep
57 %setup -q
58
59 %build
60 %{__python} setup.py build
61
62 %install
63 test "x$RPM_BUILD_ROOT" != "x" && rm -rf $RPM_BUILD_ROOT
64 %{__python} setup.py install --prefix=/usr --root=$RPM_BUILD_ROOT
65
66 %clean
67 rm -fr $RPM_BUILD_ROOT
68
69 %files
70 %defattr(-, root, root, -)
71 %if "%{python_version}" >= "2.5"
72 %{python_sitelib}/certmaster*.egg-info
73 %endif
74 %{_bindir}/certmaster
75 %{_bindir}/certmaster-request
76 %{_bindir}/certmaster-ca
77 /etc/init.d/certmaster
78 %dir %{_sysconfdir}/%{name}
79 %dir %{_sysconfdir}/%{name}/minion-acl.d/
80 %dir %{_sysconfdir}/pki/%{name}
81 %config(noreplace) /etc/certmaster/minion.conf
82 %config(noreplace) /etc/certmaster/certmaster.conf
83 %config(noreplace) /etc/logrotate.d/certmaster_rotate
84 %dir %{python_sitelib}/certmaster
85 %{python_sitelib}/certmaster/*.py*
86 %dir /var/log/certmaster
87 %dir /var/lib/certmaster
88 %dir /var/lib/certmaster/triggers/sign/
89 %dir /var/lib/certmaster/triggers/sign/pre
90 %dir /var/lib/certmaster/triggers/sign/post
91 %dir /var/lib/certmaster/triggers/request/
92 %dir /var/lib/certmaster/triggers/request/pre
93 %dir /var/lib/certmaster/triggers/request/post
94 %dir /var/lib/certmaster/triggers/remove/
95 %dir /var/lib/certmaster/triggers/remove/pre
96 %dir /var/lib/certmaster/triggers/remove/post
97 %doc AUTHORS README LICENSE
98 %{_mandir}/man1/*.1.gz
99
100
101 %post
102 # for suse
103 if [ -x /usr/lib/lsb/install_initd ]; then
104 /usr/lib/lsb/install_initd /etc/init.d/certmaster
105 # for red hat distros
106 elif [ -x /sbin/chkconfig ]; then
107 /sbin/chkconfig --add certmaster
108 # or, the old fashioned way
109 else
110 for i in 2 3 4 5; do
111 ln -sf /etc/init.d/certmaster /etc/rc.d/rc${i}.d/S99certmaster
112 done
113 for i in 1 6; do
114 ln -sf /etc/init.d/certmaster /etc/rc.d/rc${i}.d/k01certmaster
115 done
116 fi
117 exit 0
118
119 %preun
120 if [ "$1" = 0 ] ; then
121 /etc/init.d/certmaster stop > /dev/null 2>&1
122 if [ -x /usr/lib/lsb/remove_initd ]; then
123 /usr/lib/lsb/remove_initd /etc/init.d/certmaster
124 elif [ -x /sbin/chkconfig ]; then
125 /sbin/chkconfig --del certmaster
126 else
127 rm -f /etc/rc.d/rc?.d/???certmaster
128 fi
129 fi
130
131
132 %changelog
133 * Wed Feb 18 2009 Adrian Likins <alikins@redhat.com> - 0.24.5
134 - remove version file
135
136 * Mon Jan 19 2009 Adrian Likins <alikins@redhat.com> - 0.24.4
137 - make inclusion of egginfo dependant on having python >= 2.5
138 - remove need for patch on rhel3+python2.4 cases (distutils should
139 do all the /usr/bin/python renaming now)
140 - minor reformatting changes
141
142 * Tue Jan 06 2009 Greg Swift <gregswift@gmail.com> - 0.24-3x1
143 - Fixed spec because it was only building in rhel3
144
145 * Wed Dec 31 2008 Greg Swift <gregswift@gmail.com> - 0.24-2
146 - Patched SPEC to build on rhel3 with python2.3
147 - Added Patch0 to handle python2.3 if on rhel3
148
149 * Mon Dec 12 2008 Adrian Likins <alikins@redhat.com> - 0.24-1
150 - add missing dirs as per bz#473633
151
152 * Mon Jun 6 2008 Adrian Likins <alikins@redhat.com> - 0.20-2
153 - fix fedora bug #441283 - typo in postinstall scriptlet
154 (the init.d symlinks for runlevels 1 and 6 were created wrong)
155
156 * Tue Apr 15 2008 Michael DeHaan <mdehaan@redhat.com> - 0.20-1
157 - new release
158 - fix changelog versions
159
160 * Tue Apr 15 2008 Steve Salevan <ssalevan@redhat.com> - 0.19-3
161 - added in trigger directories
162
163 * Mon Mar 17 2008 Adrian Likins <alikins@redhat.com> - 0.19-2
164 - removed unused minion/ and overlord/ dirs
165
166 * Mon Feb 25 2008 Adrian Likins <alikins@redhat.com> - 0.19-1
167 - remove certmasterd references
168
169 * Thu Feb 7 2008 Michael DeHaan <mdehaan@redhat.com> - 0.18-1
170 - initial version, split off from func project, WIP
171