/* 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 . */ 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' }