bigbluebutton-Github/bbb-lti/build.gradle
2021-12-17 12:40:33 +00:00

152 lines
5.4 KiB
Groovy

/*
BigBlueButton open source conferencing system - http://www.bigbluebutton.org/
Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below).
This program is free software; you can redistribute it and/or modify it under the
terms of the GNU Lesser General Public License as published by the Free Software
Foundation; either version 3.0 of the License, or (at your option) any later
version.
BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along
with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
*/
buildscript {
repositories {
jcenter()
mavenLocal()
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:3.3.4"
classpath "gradle.plugin.com.github.erdi.webdriver-binaries:webdriver-binaries-gradle-plugin:2.6"
classpath "org.grails.plugins:views-gradle:2.1.0"
}
}
version "0.5"
group "org.bigbluebutton.lti"
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-lti 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")
}
task copyViews(type: Copy) {
into("${project.buildDir}/resources/main/grails-app/views")
from("grails-app/views")
}
task copyI18n(type: Copy) {
into("${project.buildDir}/resources/main/grails-app/i18n")
from("grails-app/i18n")
}
// make processResources depends on copyWebInf task
processResources.dependsOn copyWebInf
copyWebInf.dependsOn copyViews
copyViews.dependsOn copyI18n
repositories {
jcenter()
mavenLocal()
maven { url "https://repo.grails.org/grails/core" }
maven { url "https://jitpack.io" }
}
configurations {
developmentOnly
runtimeClasspath {
extendsFrom developmentOnly
}
}
dependencies {
runtimeOnly "com.bertramlabs.plugins:asset-pipeline-grails:3.3.4"
implementation group: 'commons-codec', name: 'commons-codec', version: '1.15'
developmentOnly("org.springframework.boot:spring-boot-devtools")
implementation "org.codehaus.groovy:groovy-dateutil:3.0.9"
implementation "org.springframework.boot:spring-boot-starter-logging"
implementation "org.springframework.boot:spring-boot-autoconfigure"
implementation "org.grails:grails-core"
implementation "org.springframework.boot:spring-boot-starter-actuator"
implementation "org.springframework.boot:spring-boot-starter-tomcat"
implementation "org.grails:grails-web-boot"
implementation "org.grails:grails-logging"
implementation "org.grails:grails-plugin-rest"
implementation "org.grails:grails-plugin-databinding"
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:cache"
implementation "org.grails.plugins:async"
implementation "org.grails.plugins:scaffolding"
implementation "org.grails.plugins:events"
implementation "org.grails.plugins:gsp"
implementation 'com.github.blindsidenetworks:oauth:master-SNAPSHOT'
implementation "org.json:json:20180813"
console "org.grails:grails-console"
profile "org.grails.profiles:web"
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:$seleniumVersion"
testRuntimeOnly "org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion"
testRuntimeOnly "org.seleniumhq.selenium:selenium-safari-driver:$seleniumSafariDriverVersion"
testImplementation "org.seleniumhq.selenium:selenium-remote-driver:$seleniumVersion"
testImplementation "org.seleniumhq.selenium:selenium-api:$seleniumVersion"
testImplementation "org.seleniumhq.selenium:selenium-support:$seleniumVersion"
}
bootRun {
jvmArgs(
'-Dspring.output.ansi.enabled=always',
'-noverify',
'-XX:TieredStopAtLevel=1',
'-Xmx1024m')
sourceResources sourceSets.main
String springProfilesActive = 'spring.profiles.active'
systemProperty springProfilesActive, System.getProperty(springProfilesActive)
}
tasks.withType(Test) {
systemProperty "geb.env", System.getProperty('geb.env')
systemProperty "geb.build.reportsDir", reporting.file("geb/integrationTest")
systemProperty "webdriver.chrome.driver", System.getProperty('webdriver.chrome.driver')
systemProperty "webdriver.gecko.driver", System.getProperty('webdriver.gecko.driver')
}
assets {
minifyJs = true
minifyCss = true
}
springBoot {
mainClassName = 'org.bigbluebuttoni.Application'
}