]>
Commit | Line | Data |
---|---|---|
d2c1e630 SP |
1 | %include /usr/lib/rpm/macros.java |
2 | Summary: JA-SIG Central Authentication Service | |
5ffde846 | 3 | Name: cas |
b6643417 | 4 | Version: 3.3.5 |
93d13f8b | 5 | Release: 1 |
d2c1e630 | 6 | License: MIT License |
891b8000 | 7 | Group: Networking/Daemons/Java/Servlets |
5ffde846 | 8 | Source0: http://www.ja-sig.org/downloads/cas/%{name}-server-%{version}-release.tar.gz |
b6643417 | 9 | # Source0-md5: c12594a2af98ee2dd11a8c97895d91af |
b8de829f | 10 | Source1: %{name}-context.xml |
d2c1e630 | 11 | URL: http://www.ja-sig.org/products/cas/ |
d2c1e630 | 12 | BuildRequires: rpm-javaprov |
59ec8784 | 13 | BuildRequires: rpmbuild(macros) >= 1.546 |
d2c1e630 | 14 | Requires: jpackage-utils |
891b8000 | 15 | Requires: tomcat >= 6 |
d2c1e630 SP |
16 | BuildArch: noarch |
17 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
18 | ||
891b8000 | 19 | %define webappdir %{_datadir}/%{name} |
20 | %define libdir %{_datadir}/%{name}/WEB-INF/lib | |
4d3ea4e7 | 21 | %define logdir %{_var}/log/%{name} |
891b8000 | 22 | |
d2c1e630 SP |
23 | %description |
24 | CAS is an authentication system originally created by Yale University | |
25 | to provide a trusted way for an application to authenticate a user. | |
26 | CAS became a JA-SIG project in December 2004. | |
27 | ||
2409ae05 | 28 | CAS provides enterprise single sign on service. It features: |
d2c1e630 | 29 | |
2409ae05 | 30 | - An open and well-documented protocol |
31 | - An open-source Java server component | |
8a28099e | 32 | - A library of clients for Java, .Net, PHP, Perl, Apache, uPortal and |
33 | others | |
2409ae05 | 34 | - Integrates with uPortal, BlueSocket, TikiWiki, Mule, Liferay, Moodle |
35 | and others | |
36 | - Community documentation and implementation support | |
37 | - An extensive community of adopters | |
8edb2437 | 38 | |
891b8000 | 39 | %package authenticator-spnego |
40 | Summary: Spnego authenticator for CAS server | |
891b8000 | 41 | Group: Libraries/Java |
8a28099e | 42 | Requires: %{name} = %{version}-%{release} |
891b8000 | 43 | |
44 | %description authenticator-spnego | |
2409ae05 | 45 | Spnego authentication backend for CAS Server. |
891b8000 | 46 | |
47 | %package authenticator-x509 | |
48 | Summary: x509 authenticator for CAS server | |
891b8000 | 49 | Group: Libraries/Java |
8a28099e | 50 | Requires: %{name} = %{version}-%{release} |
891b8000 | 51 | |
52 | %description authenticator-x509 | |
2409ae05 | 53 | X509 client certificates authentication backend for CAS Server. |
891b8000 | 54 | |
55 | %package authenticator-openid | |
56 | Summary: OpenID authenticator for CAS server | |
891b8000 | 57 | Group: Libraries/Java |
8a28099e | 58 | Requires: %{name} = %{version}-%{release} |
891b8000 | 59 | |
60 | %description authenticator-openid | |
2409ae05 | 61 | OpenID authentication backend for CAS Server. |
891b8000 | 62 | |
63 | %package authenticator-legacy | |
64 | Summary: Legacy authenticator for CAS server | |
891b8000 | 65 | Group: Libraries/Java |
8a28099e | 66 | Requires: %{name} = %{version}-%{release} |
891b8000 | 67 | |
68 | %description authenticator-legacy | |
2409ae05 | 69 | Legacy authentication backend for CAS Server. |
891b8000 | 70 | |
71 | %package authenticator-radius | |
72 | Summary: Radius authenticator for CAS server | |
891b8000 | 73 | Group: Libraries/Java |
8a28099e | 74 | Requires: %{name} = %{version}-%{release} |
891b8000 | 75 | |
76 | %description authenticator-radius | |
2409ae05 | 77 | Radius authentication backend for CAS Server. |
891b8000 | 78 | |
79 | %package authenticator-ldap | |
80 | Summary: LDAP authenticator for CAS server | |
891b8000 | 81 | Group: Libraries/Java |
8a28099e | 82 | Requires: %{name} = %{version}-%{release} |
891b8000 | 83 | |
84 | %description authenticator-ldap | |
2409ae05 | 85 | LDAP authentication backend for CAS Server. |
891b8000 | 86 | |
87 | %package authenticator-generic | |
88 | Summary: Generic authenticator for CAS server | |
891b8000 | 89 | Group: Libraries/Java |
8a28099e | 90 | Requires: %{name} = %{version}-%{release} |
891b8000 | 91 | |
92 | %description authenticator-generic | |
2409ae05 | 93 | Generic authentication backend for CAS Server. |
891b8000 | 94 | |
95 | %package authenticator-trusted | |
96 | Summary: Trusted authenticator for CAS server | |
891b8000 | 97 | Group: Libraries/Java |
8a28099e | 98 | Requires: %{name} = %{version}-%{release} |
891b8000 | 99 | |
100 | %description authenticator-trusted | |
2409ae05 | 101 | Trusted authentication backend for CAS Server. |
891b8000 | 102 | |
103 | %package authenticator-jdbc | |
104 | Summary: JDBC authenticator for CAS server | |
891b8000 | 105 | Group: Libraries/Java |
8a28099e | 106 | Requires: %{name} = %{version}-%{release} |
891b8000 | 107 | |
108 | %description authenticator-jdbc | |
2409ae05 | 109 | JDBC authentication backend for CAS Server. |
891b8000 | 110 | |
111 | %package integration-berkeleydb | |
112 | Summary: Berkeleydb ticket registry for CAS server | |
891b8000 | 113 | Group: Libraries/Java |
8a28099e | 114 | Requires: %{name} = %{version}-%{release} |
891b8000 | 115 | |
116 | %description integration-berkeleydb | |
2409ae05 | 117 | BerkeleyDB integration for CAS Server allows to store ticket registry |
118 | in berkeleyDB. | |
891b8000 | 119 | |
120 | %package integration-jboss | |
121 | Summary: Jboss ticket registry for CAS server | |
891b8000 | 122 | Group: Libraries/Java |
8a28099e | 123 | Requires: %{name} = %{version}-%{release} |
891b8000 | 124 | |
125 | %description integration-jboss | |
2409ae05 | 126 | Jboss integration for CAS Server allows to store ticket registry in |
127 | Jboss internal authentication system. | |
891b8000 | 128 | |
129 | %package integration-memcached | |
130 | Summary: Memory ticket registry for CAS server | |
891b8000 | 131 | Group: Libraries/Java |
8a28099e | 132 | Requires: %{name} = %{version}-%{release} |
891b8000 | 133 | |
134 | %description integration-memcached | |
2409ae05 | 135 | Memcached integration for CAS Server allows to store ticket registry |
136 | in memory cache. | |
891b8000 | 137 | |
138 | %package integration-restlet | |
8a28099e | 139 | Summary: I have no idea WTF is that, but it is for CAS server |
891b8000 | 140 | Group: Libraries/Java |
8a28099e | 141 | Requires: %{name} = %{version}-%{release} |
891b8000 | 142 | |
143 | %description integration-restlet | |
2409ae05 | 144 | I really have no idea WTF is that. It name suggests it is yet another |
145 | registry storage driver for CAS, but it does not extends | |
146 | AbstractDistributedTicketRegistry class. | |
891b8000 | 147 | |
d2c1e630 | 148 | %prep |
5ffde846 SP |
149 | %setup -q -n %{name}-server-%{version} |
150 | unzip modules/%{name}-server-webapp-%{version}.war -d webapp | |
d2c1e630 | 151 | |
cdb12095 | 152 | rm webapp/WEB-INF/lib/%{name}-server-support-ldap-%{version}.jar |
c27df57e | 153 | |
b52b7102 | 154 | sed -i 's,^\(log4j.appender.logfile.File=\)cas.log$,\1%{logdir}/%{name}.log,' webapp/WEB-INF/classes/log4j.properties |
155 | ||
d2c1e630 | 156 | %build |
d2c1e630 SP |
157 | |
158 | %install | |
159 | rm -rf $RPM_BUILD_ROOT | |
4d3ea4e7 | 160 | install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_datadir},%{_sharedstatedir}/%{name},%{_tomcatconfdir},%{logdir}} |
830c0d28 | 161 | |
891b8000 | 162 | cp -a webapp $RPM_BUILD_ROOT%{webappdir} |
830c0d28 | 163 | |
5b6bb793 | 164 | MODULES=" |
165 | integration-berkeleydb | |
166 | integration-jboss | |
167 | integration-memcached | |
168 | integration-restlet | |
169 | support-generic | |
170 | support-jdbc | |
171 | support-ldap | |
172 | support-legacy | |
173 | support-openid | |
174 | support-radius | |
175 | support-spnego | |
176 | support-trusted | |
177 | support-x509 | |
178 | " | |
179 | ||
180 | CONFIGFILES=" | |
181 | classes/log4j.properties | |
182 | cas.properties | |
183 | deployerConfigContext.xml | |
184 | login-webflow.xml | |
185 | restlet-servlet.xml | |
186 | cas-servlet.xml | |
187 | web.xml | |
188 | " | |
830c0d28 | 189 | |
ce7a3fad | 190 | for i in $MODULES; do |
5ffde846 | 191 | install modules/%{name}-server-$i-%{version}.jar $RPM_BUILD_ROOT%{libdir}/%{name}-$i-%{version}.jar |
830c0d28 SP |
192 | done |
193 | ||
5b6bb793 | 194 | for i in $CONFIGFILES; do |
cd86a3ef | 195 | mv $RPM_BUILD_ROOT%{webappdir}/WEB-INF/$i $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/$(basename $i) |
5b6bb793 | 196 | ln -s %{_sysconfdir}/%{name}/$(basename $i) $RPM_BUILD_ROOT%{webappdir}/WEB-INF/$i |
197 | done | |
4d3ea4e7 | 198 | |
59ec8784 | 199 | install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/tomcat-context.xml |
200 | ln -sf %{_sysconfdir}/%{name}/tomcat-context.xml $RPM_BUILD_ROOT%{_tomcatconfdir}/%{name}.xml | |
201 | ||
202 | %postun | |
203 | %tomcat_clear_cache %{name} | |
fddcb93d | 204 | |
d2c1e630 SP |
205 | %clean |
206 | rm -rf $RPM_BUILD_ROOT | |
207 | ||
208 | %files | |
209 | %defattr(644,root,root,755) | |
4d3ea4e7 | 210 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name} |
5b6bb793 | 211 | %{_tomcatconfdir}/%{name}.xml |
4d3ea4e7 | 212 | %{_datadir}/%{name} |
2044b527 SP |
213 | %exclude %{libdir}/%{name}-support-spnego-%{version}.jar |
214 | %exclude %{libdir}/%{name}-integration-berkeleydb-%{version}.jar | |
215 | %exclude %{libdir}/%{name}-support-x509-%{version}.jar | |
216 | %exclude %{libdir}/%{name}-integration-jboss-%{version}.jar | |
217 | %exclude %{libdir}/%{name}-support-openid-%{version}.jar | |
218 | %exclude %{libdir}/%{name}-support-legacy-%{version}.jar | |
219 | %exclude %{libdir}/%{name}-support-radius-%{version}.jar | |
220 | %exclude %{libdir}/%{name}-integration-memcached-%{version}.jar | |
221 | %exclude %{libdir}/%{name}-integration-restlet-%{version}.jar | |
222 | %exclude %{libdir}/%{name}-support-ldap-%{version}.jar | |
223 | %exclude %{libdir}/%{name}-support-generic-%{version}.jar | |
224 | %exclude %{libdir}/%{name}-support-trusted-%{version}.jar | |
225 | %exclude %{libdir}/%{name}-support-jdbc-%{version}.jar | |
4d3ea4e7 | 226 | %attr(2775,root,servlet) %dir %{_sharedstatedir}/%{name} |
227 | %dir %attr(2770,root,servlet) %{logdir} | |
891b8000 | 228 | |
229 | %files authenticator-spnego | |
230 | %defattr(644,root,root,755) | |
2044b527 | 231 | %{libdir}/%{name}-support-spnego-%{version}.jar |
891b8000 | 232 | |
233 | %files authenticator-x509 | |
234 | %defattr(644,root,root,755) | |
2044b527 | 235 | %{libdir}/%{name}-support-x509-%{version}.jar |
891b8000 | 236 | |
237 | %files authenticator-openid | |
238 | %defattr(644,root,root,755) | |
2044b527 | 239 | %{libdir}/%{name}-support-openid-%{version}.jar |
891b8000 | 240 | |
241 | %files authenticator-legacy | |
242 | %defattr(644,root,root,755) | |
2044b527 | 243 | %{libdir}/%{name}-support-legacy-%{version}.jar |
891b8000 | 244 | |
245 | %files authenticator-radius | |
246 | %defattr(644,root,root,755) | |
2044b527 | 247 | %{libdir}/%{name}-support-radius-%{version}.jar |
891b8000 | 248 | |
249 | %files authenticator-ldap | |
250 | %defattr(644,root,root,755) | |
2044b527 | 251 | %{libdir}/%{name}-support-ldap-%{version}.jar |
891b8000 | 252 | |
253 | %files authenticator-generic | |
254 | %defattr(644,root,root,755) | |
2044b527 | 255 | %{libdir}/%{name}-support-generic-%{version}.jar |
891b8000 | 256 | |
257 | %files authenticator-trusted | |
258 | %defattr(644,root,root,755) | |
2044b527 | 259 | %{libdir}/%{name}-support-trusted-%{version}.jar |
891b8000 | 260 | |
261 | %files authenticator-jdbc | |
262 | %defattr(644,root,root,755) | |
2044b527 | 263 | %{libdir}/%{name}-support-jdbc-%{version}.jar |
891b8000 | 264 | |
265 | %files integration-berkeleydb | |
266 | %defattr(644,root,root,755) | |
2044b527 | 267 | %{libdir}/%{name}-integration-berkeleydb-%{version}.jar |
891b8000 | 268 | |
269 | %files integration-jboss | |
270 | %defattr(644,root,root,755) | |
2044b527 | 271 | %{libdir}/%{name}-integration-jboss-%{version}.jar |
891b8000 | 272 | |
273 | %files integration-memcached | |
274 | %defattr(644,root,root,755) | |
2044b527 | 275 | %{libdir}/%{name}-integration-memcached-%{version}.jar |
891b8000 | 276 | |
277 | %files integration-restlet | |
278 | %defattr(644,root,root,755) | |
2044b527 | 279 | %{libdir}/%{name}-integration-restlet-%{version}.jar |