92 lines
2.6 KiB
Groovy
Executable File
92 lines
2.6 KiB
Groovy
Executable File
plugins {
|
|
id 'java'
|
|
id 'war'
|
|
id 'eclipse'
|
|
id 'idea'
|
|
}
|
|
|
|
version = '1.0' //TODO
|
|
jar.enabled = true
|
|
archivesBaseName = 'video-broadcast'
|
|
|
|
task resolveDeps(type: Copy) {
|
|
into('lib')
|
|
from configurations.default
|
|
from configurations.default.allArtifacts.file
|
|
doLast { println '[bbb:task] Resolved dependencies for video-broadcast application' }
|
|
|
|
}
|
|
|
|
repositories {
|
|
jcenter()
|
|
mavenLocal()
|
|
}
|
|
|
|
dependencies {
|
|
// Servlet
|
|
providedCompile 'javax.servlet:servlet-api:2.5'
|
|
|
|
// Mina
|
|
providedCompile 'org.apache.mina:mina-core:2.0.19'
|
|
providedCompile 'org.apache.mina:mina-integration-beans:2.0.19'
|
|
providedCompile 'org.apache.mina:mina-integration-jmx:2.0.19'
|
|
|
|
// Spring
|
|
providedCompile 'org.springframework:spring-web:4.3.12.RELEASE'
|
|
providedCompile 'org.springframework:spring-beans:4.3.12.RELEASE'
|
|
providedCompile 'org.springframework:spring-context:4.3.12.RELEASE'
|
|
providedCompile 'org.springframework:spring-core:4.3.12.RELEASE'
|
|
|
|
// Red5
|
|
providedCompile 'org.red5:red5-server:1.0.10-M9'
|
|
providedCompile 'org.red5:red5-server-common:1.0.10-M9'
|
|
providedCompile 'org.red5:red5-io:1.0.10-M9'
|
|
|
|
// Logging
|
|
providedCompile 'ch.qos.logback:logback-core:1.2.3'
|
|
providedCompile 'ch.qos.logback:logback-classic:1.2.3'
|
|
providedCompile 'org.slf4j:log4j-over-slf4j:1.7.25'
|
|
providedCompile 'org.slf4j:jcl-over-slf4j:1.7.25'
|
|
providedCompile 'org.slf4j:jul-to-slf4j:1.7.25'
|
|
providedCompile 'org.slf4j:slf4j-api:1.7.25'
|
|
|
|
// Needed for the JVM shutdown hook but needs to be put into red5/lib dir.
|
|
// Otherwise we get exception on aop utils class not found.
|
|
providedCompile 'org.springframework:spring-aop:4.3.12.RELEASE'
|
|
compile 'aopalliance:aopalliance:1.0'
|
|
|
|
// Java Concurrency In Practice
|
|
providedCompile 'net.jcip:jcip-annotations:1.0'
|
|
|
|
// Testing
|
|
// compile 'org.testng:testng:5.8'
|
|
compile 'org.easymock:easymock:2.4'
|
|
|
|
//redis
|
|
compile 'redis.clients:jedis:2.0.0'
|
|
compile 'commons-pool:commons-pool:1.5.6'
|
|
compile 'com.google.code.gson:gson:1.7.1'
|
|
|
|
compile 'org.bigbluebutton:bbb-common-message_2.12:0.0.20-SNAPSHOT'
|
|
|
|
}
|
|
|
|
war.doLast {
|
|
ant.unzip(src: war.archivePath, dest: "$buildDir/video-broadcast")
|
|
println '[bbb:task] WAR file ready for video-broadcast application'
|
|
}
|
|
|
|
task deploy {
|
|
doLast {
|
|
def red5AppsDir = '/usr/share/red5/webapps'
|
|
def broadcastDir = new File("${red5AppsDir}/video-broadcast")
|
|
println "Deleting $broadcastDir"
|
|
if (broadcastDir.exists()) ant.delete(dir: broadcastDir)
|
|
ant.mkdir(dir: broadcastDir)
|
|
ant.copy(todir: broadcastDir) {
|
|
fileset(dir: "$buildDir/video-broadcast")
|
|
}
|
|
println '[bbb:task] WAR file deployed for video-broadcast application'
|
|
}
|
|
}
|