165 lines
6.3 KiB
Groovy
Executable File
165 lines
6.3 KiB
Groovy
Executable File
buildscript {
|
|
repositories {
|
|
mavenCentral()
|
|
mavenLocal()
|
|
maven { url "https://repo1.maven.org/maven2" }
|
|
maven { url "https://repo.grails.org/artifactory/core" }
|
|
maven { url "https://repo.grails.org/grails/core" }
|
|
}
|
|
dependencies {
|
|
classpath "org.grails:grails-gradle-plugin:${grailsGradlePluginVersion}"
|
|
classpath "org.grails.plugins:hibernate5:${gormVersion}"
|
|
classpath "com.bertramlabs.plugins:asset-pipeline-gradle:4.0.0"
|
|
classpath "gradle.plugin.com.github.erdi.webdriver-binaries:webdriver-binaries-gradle-plugin:2.6"
|
|
classpath "org.grails.plugins:views-gradle:2.1.1"
|
|
classpath "org.grails.plugins:views-json:2.1.1"
|
|
}
|
|
}
|
|
|
|
version "0.10.0"
|
|
group "org.bigbluebutton.web"
|
|
|
|
apply plugin: "eclipse"
|
|
apply plugin: "idea"
|
|
apply plugin: "war"
|
|
apply plugin: "org.grails.grails-web"
|
|
apply plugin: "com.bertramlabs.asset-pipeline"
|
|
apply plugin: "org.grails.grails-gsp"
|
|
apply plugin: "com.github.erdi.webdriver-binaries"
|
|
apply plugin: "org.grails.plugins.views-json"
|
|
|
|
task resolveDeps(type: Copy) {
|
|
into('lib')
|
|
from configurations.default
|
|
from configurations.default.allArtifacts.file
|
|
doLast { println '[bbb:task] Resolved dependencies for bigbluebutton-web application' }
|
|
}
|
|
|
|
// Task that creates the index file which lists all extra libs
|
|
task copyWebInf(type: Copy) {
|
|
into("${project.buildDir}/resources/main/")
|
|
from("src/main/webapp")
|
|
}
|
|
|
|
// make processResources depends on copyWebInf task
|
|
processResources.dependsOn copyWebInf
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
mavenLocal()
|
|
maven { url "https://repo1.maven.org/maven2" }
|
|
maven { url "https://repo.grails.org/artifactory/core" }
|
|
maven { url "https://repo.grails.org/grails/core" }
|
|
}
|
|
|
|
dependencies {
|
|
runtimeOnly "com.bertramlabs.plugins:asset-pipeline-grails:4.0.0"
|
|
|
|
implementation "org.springframework:spring-core:5.3.21"
|
|
implementation "org.springframework:spring-context:5.3.27"
|
|
implementation "org.springframework.boot:spring-boot:${springVersion}"
|
|
implementation "org.springframework.boot:spring-boot-starter-logging:${springVersion}"
|
|
implementation "org.springframework.boot:spring-boot-autoconfigure:${springVersion}"
|
|
implementation "org.grails:grails-core:${grailsVersion}"
|
|
implementation "org.springframework.boot:spring-boot-starter-actuator:${springVersion}"
|
|
implementation "org.springframework.boot:spring-boot-starter-tomcat:${springVersion}"
|
|
|
|
implementation "org.grails:grails-web-boot:5.2.5"
|
|
implementation "org.springframework:spring-webmvc:5.3.27"
|
|
|
|
implementation "org.grails:grails-logging"
|
|
implementation "org.grails:grails-plugin-rest:5.2.5"
|
|
implementation "org.grails:grails-plugin-databinding:5.2.4"
|
|
implementation "org.grails:grails-plugin-i18n"
|
|
implementation "org.grails:grails-plugin-services"
|
|
implementation "org.grails:grails-plugin-url-mappings"
|
|
implementation "org.grails:grails-plugin-interceptors"
|
|
implementation 'org.grails.plugins:external-config:1.2.2'
|
|
implementation "org.yaml:snakeyaml:1.31"
|
|
implementation "org.grails.plugins:views-json:2.1.1"
|
|
implementation "org.grails.plugins:cache"
|
|
implementation "org.apache.xmlbeans:xmlbeans:5.0.3"
|
|
implementation "org.grails:grails-gradle-plugin:5.1.4"
|
|
implementation "org.grails.plugins:async"
|
|
implementation "org.grails.plugins:scaffolding"
|
|
implementation "org.grails.plugins:events"
|
|
implementation "org.grails.plugins:gsp"
|
|
implementation "org.apache.tomcat.embed:tomcat-embed-core:${tomcatEmbedVersion}"
|
|
implementation "org.apache.tomcat.embed:tomcat-embed-el:${tomcatEmbedVersion}"
|
|
implementation "org.apache.tomcat.embed:tomcat-embed-websocket:${tomcatEmbedVersion}"
|
|
implementation "org.apache.tomcat:tomcat-annotations-api:${tomcatEmbedVersion}"
|
|
//--- BigBlueButton Dependencies Start - Transitive dependencies have to be re-defined below
|
|
implementation "org.bigbluebutton:bbb-common-message_2.13:0.0.22-SNAPSHOT"
|
|
implementation "org.bigbluebutton:bbb-common-web:0.0.3-SNAPSHOT"
|
|
implementation "io.lettuce:lettuce-core:6.1.9.RELEASE"
|
|
implementation "org.reactivestreams:reactive-streams:1.0.3"
|
|
implementation "io.projectreactor:reactor-core:3.4.12"
|
|
implementation "org.freemarker:freemarker:2.3.31"
|
|
implementation "com.google.code.gson:gson:2.8.9"
|
|
implementation "org.json:json:20230227"
|
|
implementation "com.zaxxer:nuprocess:2.0.6"
|
|
implementation "net.java.dev.jna:jna:5.10.0"
|
|
implementation "org.springframework.data:spring-data-commons:2.7.6"
|
|
|
|
implementation 'javax.validation:validation-api:2.0.1.Final'
|
|
implementation "org.springframework.boot:spring-boot-starter-validation:${springVersion}"
|
|
implementation 'org.postgresql:postgresql:42.7.2'
|
|
implementation 'org.hibernate:hibernate-core:5.6.1.Final'
|
|
|
|
//--- BigBlueButton Dependencies End
|
|
console "org.grails:grails-console:5.2.0"
|
|
profile "org.grails.profiles:web"
|
|
runtimeOnly "com.bertramlabs.plugins:asset-pipeline-grails:4.0.0"
|
|
testImplementation "org.grails:grails-gorm-testing-support"
|
|
testImplementation "org.grails.plugins:geb"
|
|
testImplementation "org.grails:grails-web-testing-support"
|
|
testRuntimeOnly "org.seleniumhq.selenium:selenium-chrome-driver:4.0.0"
|
|
testRuntimeOnly "org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.1"
|
|
testRuntimeOnly "net.sourceforge.htmlunit:htmlunit:2.63.0"
|
|
testImplementation "com.github.javafaker:javafaker:0.12"
|
|
}
|
|
|
|
tasks.named('bootWarMainClassName') {
|
|
it.mustRunAfter(tasks.named('compileGsonViews'))
|
|
}
|
|
|
|
configurations.implementation {
|
|
exclude group: 'io.micronaut', module: 'micronaut-aop'
|
|
exclude group: 'com.h2database', module: 'h2'
|
|
exclude group: 'org.graalvm.sdk', module: 'graal-sdk'
|
|
}
|
|
|
|
configurations {
|
|
developmentOnly
|
|
runtimeClasspath {
|
|
extendsFrom developmentOnly
|
|
}
|
|
}
|
|
|
|
bootRun {
|
|
jvmArgs('-Dspring.output.ansi.enabled=always')
|
|
jvmArgs('-Dspring.main.allow-circular-references=true')
|
|
sourceResources sourceSets.main
|
|
String springProfilesActive = 'spring.profiles.active'
|
|
systemProperty springProfilesActive, System.getProperty(springProfilesActive)
|
|
}
|
|
|
|
assets {
|
|
minifyJs = true
|
|
minifyCss = true
|
|
}
|
|
|
|
test {
|
|
testLogging {
|
|
events = ["passed", "failed", "skipped"]
|
|
|
|
// Make sure output from
|
|
// standard out or error is shown
|
|
// in Gradle output.
|
|
showStandardStreams = true
|
|
showExceptions = true
|
|
showCauses = true
|
|
exceptionFormat = "full"
|
|
}
|
|
}
|