corda/samples/simm-valuation-demo/build.gradle
Ross Nicoll e85ed639bb Clean up X500 names in Corda simulation
Clean up X500 names in Corda simulation, and ensure they're consistent with the standard test names.
This includes using the locations present in those test names, which requires updates to the node
config test.
2017-05-03 15:55:19 +01:00

141 lines
4.2 KiB
Groovy

buildscript {
ext.strata_version = '1.1.2'
}
apply plugin: 'java'
apply plugin: 'kotlin'
apply plugin: 'idea'
apply plugin: 'net.corda.plugins.quasar-utils'
apply plugin: 'net.corda.plugins.publish-utils'
apply plugin: 'net.corda.plugins.cordformation'
apply plugin: 'maven-publish'
sourceSets {
integrationTest {
kotlin {
compileClasspath += main.output + test.output
runtimeClasspath += main.output + test.output
srcDir file('src/integration-test/kotlin')
}
}
}
configurations {
integrationTestCompile.extendsFrom testCompile
integrationTestRuntime.extendsFrom testRuntime
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version"
testCompile "junit:junit:$junit_version"
testCompile "org.assertj:assertj-core:${assertj_version}"
// Corda integration dependencies
runtime project(path: ":node:capsule", configuration: 'runtimeArtifacts')
runtime project(path: ":webserver:webcapsule", configuration: 'runtimeArtifacts')
compile project(':core')
compile project(':node')
compile project(':webserver')
compile project(':finance')
testCompile project(':test-utils')
// Javax is required for webapis
compile "org.glassfish.jersey.core:jersey-server:${jersey_version}"
// Cordapp dependencies
// Specify your cordapp's dependencies below, including dependent cordapps
compile "com.opengamma.strata:strata-basics:${strata_version}"
compile "com.opengamma.strata:strata-product:${strata_version}"
compile "com.opengamma.strata:strata-data:${strata_version}"
compile "com.opengamma.strata:strata-calc:${strata_version}"
compile "com.opengamma.strata:strata-pricer:${strata_version}"
compile "com.opengamma.strata:strata-report:${strata_version}"
compile "com.opengamma.strata:strata-market:${strata_version}"
compile "com.opengamma.strata:strata-collect:${strata_version}"
compile "com.opengamma.strata:strata-loader:${strata_version}"
compile "com.opengamma.strata:strata-math:${strata_version}"
}
task deployNodes(type: net.corda.plugins.Cordform, dependsOn: ['jar']) {
directory "./build/nodes"
networkMap "CN=Notary Service,O=R3,OU=corda,L=London,C=UK"
node {
name "CN=Notary Service,O=R3,OU=corda,L=London,C=UK"
nearestCity "London"
advertisedServices = ["corda.notary.validating"]
p2pPort 10002
cordapps = []
}
node {
name "CN=Bank A,O=Bank A,L=London,C=UK"
nearestCity "London"
advertisedServices = []
p2pPort 10004
webPort 10005
cordapps = []
}
node {
name "CN=Bank B,O=Bank B,L=New York,C=US"
nearestCity "New York"
advertisedServices = []
p2pPort 10006
webPort 10007
cordapps = []
}
node {
name "CN=Bank C,O=Bank C,L=Tokyo,C=Japan"
nearestCity "Tokyo"
advertisedServices = []
p2pPort 10008
webPort 10009
cordapps = []
}
}
task integrationTest(type: Test, dependsOn: []) {
testClassesDir = sourceSets.integrationTest.output.classesDir
classpath = sourceSets.integrationTest.runtimeClasspath
}
task npmInstall(type: Exec) {
workingDir 'src/main/web'
if (System.getProperty('os.name').toLowerCase().contains('windows')) {
commandLine 'cmd', '/c', 'npm', 'install'
} else {
commandLine 'npm', 'install'
}
outputs.upToDateWhen { file('src/main/web/node_modules').exists() }
}
task cleanWeb() << {
delete 'src/main/resources/simmvaluationweb'
delete 'src/main/web/dist'
}
task buildWeb(type: Exec, dependsOn: [cleanWeb, npmInstall]) {
workingDir 'src/main/web'
if (System.getProperty('os.name').toLowerCase().contains('windows')) {
commandLine 'cmd', '/c', 'ng', 'build'
} else {
commandLine 'ng', 'build'
}
}
task installWeb(type: Copy, dependsOn: [buildWeb]) {
from 'src/main/web/dist'
into 'src/main/resources/simmvaluationweb'
}
publishing {
publications {
simmvaluationdemo(MavenPublication) {
from components.java
artifactId 'simmvaluationdemo'
artifact sourceJar
artifact javadocJar
}
}
}