]>
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) | |
424a2d48 | 210 | %dir %{_sysconfdir}/%{name} |
211 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.xml | |
212 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.properties | |
5b6bb793 | 213 | %{_tomcatconfdir}/%{name}.xml |
4d3ea4e7 | 214 | %{_datadir}/%{name} |
2044b527 SP |
215 | %exclude %{libdir}/%{name}-support-spnego-%{version}.jar |
216 | %exclude %{libdir}/%{name}-integration-berkeleydb-%{version}.jar | |
217 | %exclude %{libdir}/%{name}-support-x509-%{version}.jar | |
218 | %exclude %{libdir}/%{name}-integration-jboss-%{version}.jar | |
219 | %exclude %{libdir}/%{name}-support-openid-%{version}.jar | |
220 | %exclude %{libdir}/%{name}-support-legacy-%{version}.jar | |
221 | %exclude %{libdir}/%{name}-support-radius-%{version}.jar | |
222 | %exclude %{libdir}/%{name}-integration-memcached-%{version}.jar | |
223 | %exclude %{libdir}/%{name}-integration-restlet-%{version}.jar | |
224 | %exclude %{libdir}/%{name}-support-ldap-%{version}.jar | |
225 | %exclude %{libdir}/%{name}-support-generic-%{version}.jar | |
226 | %exclude %{libdir}/%{name}-support-trusted-%{version}.jar | |
227 | %exclude %{libdir}/%{name}-support-jdbc-%{version}.jar | |
4d3ea4e7 | 228 | %attr(2775,root,servlet) %dir %{_sharedstatedir}/%{name} |
229 | %dir %attr(2770,root,servlet) %{logdir} | |
891b8000 | 230 | |
231 | %files authenticator-spnego | |
232 | %defattr(644,root,root,755) | |
2044b527 | 233 | %{libdir}/%{name}-support-spnego-%{version}.jar |
891b8000 | 234 | |
235 | %files authenticator-x509 | |
236 | %defattr(644,root,root,755) | |
2044b527 | 237 | %{libdir}/%{name}-support-x509-%{version}.jar |
891b8000 | 238 | |
239 | %files authenticator-openid | |
240 | %defattr(644,root,root,755) | |
2044b527 | 241 | %{libdir}/%{name}-support-openid-%{version}.jar |
891b8000 | 242 | |
243 | %files authenticator-legacy | |
244 | %defattr(644,root,root,755) | |
2044b527 | 245 | %{libdir}/%{name}-support-legacy-%{version}.jar |
891b8000 | 246 | |
247 | %files authenticator-radius | |
248 | %defattr(644,root,root,755) | |
2044b527 | 249 | %{libdir}/%{name}-support-radius-%{version}.jar |
891b8000 | 250 | |
251 | %files authenticator-ldap | |
252 | %defattr(644,root,root,755) | |
2044b527 | 253 | %{libdir}/%{name}-support-ldap-%{version}.jar |
891b8000 | 254 | |
255 | %files authenticator-generic | |
256 | %defattr(644,root,root,755) | |
2044b527 | 257 | %{libdir}/%{name}-support-generic-%{version}.jar |
891b8000 | 258 | |
259 | %files authenticator-trusted | |
260 | %defattr(644,root,root,755) | |
2044b527 | 261 | %{libdir}/%{name}-support-trusted-%{version}.jar |
891b8000 | 262 | |
263 | %files authenticator-jdbc | |
264 | %defattr(644,root,root,755) | |
2044b527 | 265 | %{libdir}/%{name}-support-jdbc-%{version}.jar |
891b8000 | 266 | |
267 | %files integration-berkeleydb | |
268 | %defattr(644,root,root,755) | |
2044b527 | 269 | %{libdir}/%{name}-integration-berkeleydb-%{version}.jar |
891b8000 | 270 | |
271 | %files integration-jboss | |
272 | %defattr(644,root,root,755) | |
2044b527 | 273 | %{libdir}/%{name}-integration-jboss-%{version}.jar |
891b8000 | 274 | |
275 | %files integration-memcached | |
276 | %defattr(644,root,root,755) | |
2044b527 | 277 | %{libdir}/%{name}-integration-memcached-%{version}.jar |
891b8000 | 278 | |
279 | %files integration-restlet | |
280 | %defattr(644,root,root,755) | |
2044b527 | 281 | %{libdir}/%{name}-integration-restlet-%{version}.jar |