initial import
This commit is contained in:
202
build.gradle
Normal file
202
build.gradle
Normal file
@ -0,0 +1,202 @@
|
||||
buildscript {
|
||||
ext.cubaVersion = '7.2.6'
|
||||
repositories {
|
||||
mavenLocal()
|
||||
maven {
|
||||
url 'https://repo.cuba-platform.com/content/groups/work'
|
||||
credentials {
|
||||
username(rootProject.hasProperty('repoUser') ? rootProject['repoUser'] : 'cuba')
|
||||
password(rootProject.hasProperty('repoPass') ? rootProject['repoPass'] : 'cuba123')
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
dependencies {
|
||||
classpath "com.haulmont.gradle:cuba-plugin:$cubaVersion"
|
||||
}
|
||||
}
|
||||
|
||||
def modulePrefix = 'tmsext'
|
||||
|
||||
def globalModule = project(":${modulePrefix}-global")
|
||||
def coreModule = project(":${modulePrefix}-core")
|
||||
def webModule = project(":${modulePrefix}-web")
|
||||
|
||||
def servletApi = 'javax.servlet:javax.servlet-api:3.1.0'
|
||||
|
||||
apply(plugin: 'cuba')
|
||||
|
||||
cuba {
|
||||
artifact {
|
||||
group = 'com.cmobile.unifiedtms.ext'
|
||||
version = '0.2'
|
||||
isSnapshot = false
|
||||
}
|
||||
tomcat {
|
||||
dir = "$project.rootDir/deploy/tomcat"
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
appComponent("com.haulmont.cuba:cuba-global:$cubaVersion")
|
||||
}
|
||||
|
||||
def postgres = 'org.postgresql:postgresql:42.2.9'
|
||||
|
||||
configure([globalModule, coreModule, webModule]) {
|
||||
apply(plugin: 'java')
|
||||
apply(plugin: 'maven')
|
||||
apply(plugin: 'cuba')
|
||||
|
||||
dependencies {
|
||||
testCompile('junit:junit:4.12')
|
||||
}
|
||||
|
||||
task sourceJar(type: Jar) {
|
||||
from file('src')
|
||||
classifier = 'sources'
|
||||
}
|
||||
|
||||
artifacts {
|
||||
archives sourceJar
|
||||
}
|
||||
}
|
||||
|
||||
configure(globalModule) {
|
||||
dependencies {
|
||||
if (!JavaVersion.current().isJava8()) {
|
||||
runtime('javax.xml.bind:jaxb-api:2.3.1')
|
||||
runtime('org.glassfish.jaxb:jaxb-runtime:2.3.1')
|
||||
}
|
||||
}
|
||||
entitiesEnhancing {
|
||||
main {
|
||||
enabled = true
|
||||
}
|
||||
}
|
||||
|
||||
jar {
|
||||
manifest {
|
||||
attributes('App-Component-Id': cuba.artifact.group)
|
||||
attributes('App-Component-Version': cuba.artifact.version + (cuba.artifact.isSnapshot ? '-SNAPSHOT' : ''))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
configure(coreModule) {
|
||||
|
||||
configurations {
|
||||
jdbc
|
||||
dbscripts
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compile(globalModule)
|
||||
compileOnly(servletApi)
|
||||
jdbc(postgres)
|
||||
testRuntime(postgres)
|
||||
compile('org.apache.poi:poi-ooxml:4.1.1')
|
||||
}
|
||||
|
||||
task cleanConf(description: 'Cleans up conf directory', type: Delete) {
|
||||
delete "$cuba.appHome/${modulePrefix}-core/conf"
|
||||
}
|
||||
|
||||
task deploy(dependsOn: [assemble, cleanConf], type: CubaDeployment) {
|
||||
appName = "${modulePrefix}-core"
|
||||
appJars(modulePrefix + '-global', modulePrefix + '-core')
|
||||
}
|
||||
|
||||
task createDb(dependsOn: assembleDbScripts, description: 'Creates local database', type: CubaDbCreation) {
|
||||
dbms = 'postgres'
|
||||
host = 'localhost:5432'
|
||||
dbName = 'tms'
|
||||
dbUser = 'postgres'
|
||||
dbPassword = 'postgres'
|
||||
}
|
||||
|
||||
task updateDb(dependsOn: assembleDbScripts, description: 'Updates local database', type: CubaDbUpdate) {
|
||||
dbms = 'postgres'
|
||||
host = 'localhost:5432'
|
||||
dbName = 'tms'
|
||||
dbUser = 'postgres'
|
||||
dbPassword = 'postgres'
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
configure(webModule) {
|
||||
configurations {
|
||||
webcontent
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compileOnly(servletApi)
|
||||
compile(globalModule)
|
||||
}
|
||||
|
||||
|
||||
task webArchive(type: Zip) {
|
||||
from file("$buildDir/web")
|
||||
from file('web')
|
||||
classifier = 'web'
|
||||
}
|
||||
|
||||
artifacts {
|
||||
archives webArchive
|
||||
}
|
||||
|
||||
task deployConf(type: Copy) {
|
||||
from file('src')
|
||||
include "/com/cmobile/unifiedtms/ext/**"
|
||||
into "$cuba.appHome/${modulePrefix}/conf"
|
||||
}
|
||||
|
||||
task clearMessagesCache(type: CubaClearMessagesCache) {
|
||||
appName = "${modulePrefix}"
|
||||
}
|
||||
deployConf.dependsOn clearMessagesCache
|
||||
|
||||
task cleanConf(description: 'Cleans up conf directory', type: Delete) {
|
||||
delete "$cuba.appHome/${modulePrefix}/conf"
|
||||
}
|
||||
|
||||
task deploy(dependsOn: [assemble, cleanConf], type: CubaDeployment) {
|
||||
appName = "${modulePrefix}"
|
||||
appJars(modulePrefix + '-global', modulePrefix + '-web')
|
||||
}
|
||||
|
||||
task buildScssThemes(type: CubaWebScssThemeCreation)
|
||||
|
||||
task deployThemes(type: CubaDeployThemeTask, dependsOn: buildScssThemes)
|
||||
|
||||
assemble.dependsOn buildScssThemes
|
||||
|
||||
task themesJar(type: Jar) {
|
||||
from file('themes')
|
||||
classifier = 'themes'
|
||||
}
|
||||
|
||||
artifacts {
|
||||
archives themesJar
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
task undeploy(type: Delete, dependsOn: ":${modulePrefix}-web:cleanConf") {
|
||||
delete("$cuba.tomcat.dir/shared")
|
||||
delete("$cuba.tomcat.dir/webapps/${modulePrefix}-core")
|
||||
delete("$cuba.tomcat.dir/webapps/${modulePrefix}")
|
||||
}
|
||||
|
||||
task restart(dependsOn: ['stop', ":${modulePrefix}-core:deploy", ":${modulePrefix}-web:deploy"], description: 'Redeploys applications and restarts local Tomcat') {
|
||||
doLast {
|
||||
ant.waitfor(maxwait: 6, maxwaitunit: 'second', checkevery: 2, checkeveryunit: 'second') {
|
||||
not {
|
||||
socket(server: 'localhost', port: '8787')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
restart.finalizedBy start
|
||||
|
||||
Reference in New Issue
Block a user