110 lines
4.2 KiB
Groovy
110 lines
4.2 KiB
Groovy
|
usePlugin 'groovy'
|
||
|
usePlugin 'war'
|
||
|
usePlugin 'eclipse'
|
||
|
|
||
|
version = '0.0.04'
|
||
|
jar.enabled = true
|
||
|
archivesBaseName = 'bigbluebutton'
|
||
|
|
||
|
task copyToLib(dependsOn: configurations.default.buildArtifacts, type: Copy) {
|
||
|
into('lib')
|
||
|
from configurations.default
|
||
|
from configurations.default.allArtifacts*.file
|
||
|
}
|
||
|
|
||
|
repositories {
|
||
|
add(new org.apache.ivy.plugins.resolver.ChainResolver()) {
|
||
|
name = 'remote'
|
||
|
returnFirst = true
|
||
|
add(new org.apache.ivy.plugins.resolver.URLResolver()) {
|
||
|
name = "googlecode"
|
||
|
addArtifactPattern "http://red5.googlecode.com/svn/repository/[artifact](-[revision]).[ext]"
|
||
|
addArtifactPattern "http://red5.googlecode.com/svn/repository/[organisation]/[artifact](-[revision]).[ext]"
|
||
|
}
|
||
|
add(new org.apache.ivy.plugins.resolver.URLResolver()) {
|
||
|
name = "blindside-repos"
|
||
|
addArtifactPattern "http://blindside.googlecode.com/svn/repository/[artifact](-[revision]).[ext]"
|
||
|
addArtifactPattern "http://blindside.googlecode.com/svn/repository/[organisation]/[artifact](-[revision]).[ext]"
|
||
|
}
|
||
|
add(new org.apache.ivy.plugins.resolver.URLResolver()) {
|
||
|
name = "maven2-central"
|
||
|
m2compatible = true
|
||
|
addArtifactPattern "http://repo1.maven.org/maven2/[organisation]/[module]/[revision]/[artifact](-[revision]).[ext]"
|
||
|
addArtifactPattern "http://repo1.maven.org/maven2/[organisation]/[artifact]/[revision]/[artifact](-[revision]).[ext]"
|
||
|
}
|
||
|
add(new org.apache.ivy.plugins.resolver.URLResolver()) {
|
||
|
name = "testng_ibiblio_maven2"
|
||
|
m2compatible = true
|
||
|
addArtifactPattern "http://repo1.maven.org/maven2/[organisation]/[module]/[revision]/[artifact](-[revision])-jdk15.[ext]"
|
||
|
addArtifactPattern "http://repo1.maven.org/maven2/[organisation]/[artifact]/[revision]/[artifact](-[revision])-jdk15.[ext]"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
dependencies {
|
||
|
// JMS
|
||
|
providedCompile 'org.apache.activemq:activemq-core:5.1.0@jar', 'org/apache/geronimo:geronimo-j2ee-management_1.0_spec:1.0@jar'
|
||
|
providedCompile 'org/apache/geronimo:geronimo-jms_1.1_spec:1.0@jar'
|
||
|
|
||
|
// Servlet
|
||
|
providedCompile 'javax.servlet:servlet-api:2.5@jar'
|
||
|
|
||
|
// Mina
|
||
|
providedCompile 'org.apache.mina:mina-core:2.0.0-M6@jar', 'org.apache.mina:mina-integration-spring:1.1.7@jar'
|
||
|
|
||
|
// Asterisk-Java
|
||
|
compile 'org.asteriskjava:asterisk-java:0.3.1@jar'
|
||
|
|
||
|
// Spring
|
||
|
providedCompile 'spring:spring-web:2.5.6@jar', 'spring:spring-jms:2.5.6@jar', 'spring:spring-tx:2.5.6@jar', 'spring:aopalliance:@jar'
|
||
|
providedCompile 'spring:spring-aop:2.5.6@jar', 'spring:spring-beans:2.5.6@jar', 'spring:spring-context:2.5.6@jar', 'spring:spring-core:2.5.6@jar'
|
||
|
|
||
|
// Spring Integration
|
||
|
providedCompile 'org.springframework.integration:spring-integration-core:1.0.2.RELEASE@jar'
|
||
|
providedCompile 'org.springframework.integration:spring-integration-adapter:1.0.2.RELEASE@jar'
|
||
|
providedCompile 'org.springframework.integration:spring-integration-stream:1.0.2.RELEASE@jar'
|
||
|
providedCompile 'org.springframework.integration:spring-integration-file:1.0.2.RELEASE@jar'
|
||
|
providedCompile 'org.springframework.integration:spring-integration-jms:1.0.2.RELEASE@jar'
|
||
|
|
||
|
// Red5
|
||
|
providedCompile 'org/red5:red5:0.8@jar'
|
||
|
|
||
|
// Logging
|
||
|
compile ':logback-core:0.9.14@jar', ':logback-classic:0.9.14@jar', ':slf4j-api:1.5.6@jar', ':log4j-over-slf4j:1.5.6@jar'
|
||
|
|
||
|
// Java Concurrency In Practice
|
||
|
providedCompile 'net.jcip:jcip-annotations:1.0@jar'
|
||
|
|
||
|
// YAML
|
||
|
compile 'org/ho:jyaml:1.3@jar'
|
||
|
|
||
|
// GROOVY
|
||
|
providedCompile 'org.codehaus.groovy:groovy-all:1.6.4@jar'
|
||
|
|
||
|
// Testing
|
||
|
testRuntime 'org/testng:testng:5.8@jar', 'org/fitnesse:fitnesse:20090214@jar', 'org.easymock:easymock:2.4@jar'
|
||
|
|
||
|
}
|
||
|
|
||
|
test {
|
||
|
useTestNG()
|
||
|
}
|
||
|
|
||
|
war.doLast {
|
||
|
ant.unzip(src: war.archivePath, dest: "$buildDir/bigbluebutton")
|
||
|
ant.copy(file: "$buildDir/bigbluebutton/WEB-INF/logback-bigbluebutton.xml", todir: "$buildDir/bigbluebutton/WEB-INF/classes")
|
||
|
}
|
||
|
|
||
|
|
||
|
task deploy() << {
|
||
|
def red5AppsDir = '/usr/share/red5/webapps'
|
||
|
def bbbDir = new File("${red5AppsDir}/bigbluebutton")
|
||
|
println "Deleting $bbbDir"
|
||
|
ant.delete(dir: bbbDir)
|
||
|
ant.mkdir(dir: bbbDir)
|
||
|
ant.copy(todir: bbbDir) {
|
||
|
fileset(dir: "$buildDir/bigbluebutton")
|
||
|
}
|
||
|
}
|
||
|
|