PAN-15 Created gradle tasks to start the persistence API and to start the API asynchronously
This commit is contained in:
+21
-5
@@ -1,6 +1,20 @@
|
|||||||
|
import java.util.concurrent.Callable
|
||||||
|
import java.util.concurrent.ExecutorService
|
||||||
|
import java.util.concurrent.Executors
|
||||||
|
|
||||||
|
class RunAsyncTask extends DefaultTask {
|
||||||
|
String taskToExecute = ':persistence:startPersistenceApi'
|
||||||
|
@TaskAction
|
||||||
|
def startAsync() {
|
||||||
|
ExecutorService es = Executors.newSingleThreadExecutor()
|
||||||
|
es.submit({taskToExecute.execute()} as Callable)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
buildscript {
|
buildscript {
|
||||||
repositories {
|
repositories {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
|
maven { url 'http://dl.bintray.com/vermeulen-mp/gradle-plugins' }
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath("org.springframework.boot:spring-boot-gradle-plugin:2.0.5.RELEASE")
|
classpath("org.springframework.boot:spring-boot-gradle-plugin:2.0.5.RELEASE")
|
||||||
@@ -15,6 +29,7 @@ plugins {
|
|||||||
id "org.sonarqube" version "2.6"
|
id "org.sonarqube" version "2.6"
|
||||||
id 'org.unbroken-dome.test-sets' version '1.4.5'
|
id 'org.unbroken-dome.test-sets' version '1.4.5'
|
||||||
id 'war'
|
id 'war'
|
||||||
|
id "com.wiredforcode.spawn" version "0.8.2"
|
||||||
}
|
}
|
||||||
|
|
||||||
apply plugin: 'org.springframework.boot'
|
apply plugin: 'org.springframework.boot'
|
||||||
@@ -87,11 +102,6 @@ subprojects {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bootJar {
|
|
||||||
baseName = 'gs-spring-boot'
|
|
||||||
version = '0.1.0'
|
|
||||||
}
|
|
||||||
|
|
||||||
sourceCompatibility = 1.8
|
sourceCompatibility = 1.8
|
||||||
targetCompatibility = 1.8
|
targetCompatibility = 1.8
|
||||||
|
|
||||||
@@ -136,6 +146,12 @@ testSets {
|
|||||||
integrationTest
|
integrationTest
|
||||||
}
|
}
|
||||||
|
|
||||||
|
task startApi(type: RunAsyncTask) {
|
||||||
|
dependsOn ':persistence:loadDb'
|
||||||
|
dependsOn 'build'
|
||||||
|
taskToExecute = ':persistence:startPersistenceApi'
|
||||||
|
}
|
||||||
|
|
||||||
compileKotlin {
|
compileKotlin {
|
||||||
kotlinOptions.jvmTarget = "1.8"
|
kotlinOptions.jvmTarget = "1.8"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,9 @@ plugins {
|
|||||||
id 'java'
|
id 'java'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
apply plugin: 'io.spring.dependency-management'
|
||||||
|
apply plugin: 'org.springframework.boot'
|
||||||
|
|
||||||
description = 'Provides database access and connectivity'
|
description = 'Provides database access and connectivity'
|
||||||
group 'edu.msudenver.tsp'
|
group 'edu.msudenver.tsp'
|
||||||
version '1.0'
|
version '1.0'
|
||||||
@@ -50,3 +53,11 @@ task loadDb(type: Exec, group: 'Verification', description: 'Reloads the local d
|
|||||||
commandLine=['cmd','/c','loaddb.bat']
|
commandLine=['cmd','/c','loaddb.bat']
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
task startPersistenceApi(type: JavaExec, description: 'Starts the Persistence API') {
|
||||||
|
dependsOn 'loadDb'
|
||||||
|
dependsOn 'build'
|
||||||
|
classpath = files('build/libs/persistence-1.0.jar')
|
||||||
|
classpath += sourceSets.main.runtimeClasspath
|
||||||
|
main = 'edu.msudenver.tsp.persistence.PersistenceApi'
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user