CAS Overlay Template

Generic CAS WAR overlay to exercise the latest versions of CAS. This overlay could be freely used as a starting template for local CAS war overlays. The CAS services management overlay is available here.




  • JDK 1.8+


The etc directory contains the configuration files and directories that need to be copied to /etc/cas/config.


To see what commands are available to the build script, run:

./ help

To package the final web application, run:

./ package

To update SNAPSHOT versions run:

./ package -U


  • Create a keystore file thekeystore under /etc/cas. Use the password changeit for both the keystore and the key/certificate entries.
  • Ensure the keystore is loaded up with keys and certificates of the server.

On a successful deployment via the following methods, CAS will be available at:


Executable WAR

Run the CAS web application as an executable WAR.

./ run

Spring Boot

Run the CAS web application as an executable WAR via Spring Boot. This is most useful during development and testing.

./ bootrun


Be careful with this method of deployment. bootRun is not designed to work with already executable WAR artifacts such that CAS server web application. YMMV. Today, uses of this mode ONLY work when there is NO OTHER dependency added to the build script and the cas-server-webapp is the only present module. See this issue for more info.

Spring Boot App Server Selection

There is an app.server property in the pom.xml that can be used to select a spring boot application server. It defaults to -tomcat but -jetty and -undertow are supported.

It can also be set to an empty value (nothing) if you want to deploy CAS to an external application server of your choice.


Windows Build

If you are building on windows, try build.cmd instead of Arguments are similar but for usage, run:

build.cmd help


Deploy resultant target/cas.war to a servlet container of choice.

Command Line Shell

Invokes the CAS Command Line Shell. For a list of commands either use no arguments or use -h. To enter the interactive shell use -sh.

./ cli