cas.gradle 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. // CAS sample build file
  2. apply plugin: 'war'
  3. apply plugin: 'jetty'
  4. configurations {
  5. casServer
  6. }
  7. dependencies {
  8. casServer "org.jasig.cas:cas-server-webapp:3.4.2.1@war"
  9. runtime project(':spring-security-web'),
  10. project(':spring-security-cas'),
  11. project(':spring-security-config'),
  12. "org.slf4j:jcl-over-slf4j:$slf4jVersion",
  13. "ch.qos.logback:logback-classic:$logbackVersion"
  14. }
  15. def keystore = "$rootDir/samples/certificates/server.jks"
  16. jettyRun {
  17. contextPath = "/cas"
  18. def httpConnector = new org.mortbay.jetty.nio.SelectChannelConnector();
  19. httpConnector.port = 8080
  20. httpConnector.confidentialPort = 8443
  21. def httpsConnector = new org.mortbay.jetty.security.SslSocketConnector();
  22. httpsConnector.port = 8443
  23. httpsConnector.keystore = httpsConnector.truststore = keystore
  24. httpsConnector.keyPassword = httpsConnector.trustPassword = 'password'
  25. connectors = [httpConnector, httpsConnector]
  26. }
  27. task casServer (type: org.gradle.api.plugins.jetty.JettyRunWar) {
  28. contextPath = "/cas"
  29. connectors = [new org.mortbay.jetty.security.SslSocketConnector()]
  30. connectors[0].port = 9443
  31. connectors[0].keystore = connectors[0].truststore = keystore
  32. connectors[0].keyPassword = connectors[0].trustPassword = 'password'
  33. connectors[0].wantClientAuth = true
  34. connectors[0].needClientAuth = false
  35. webApp = configurations.casServer.resolve().toArray()[0]
  36. doFirst() {
  37. System.setProperty('javax.net.ssl.trustStore', keystore)
  38. System.setProperty('javax.net.ssl.trustStorePassword', 'password')
  39. }
  40. }
  41. task cas (dependsOn: jettyRun) {
  42. jettyRun.dependsOn(casServer)
  43. casServer.daemon = true
  44. }