mirror of
https://github.com/corda/corda.git
synced 2024-12-23 23:02:29 +00:00
47b1ec49aa
Fix Bank of Corda, Trader and Notary demos. In Notary demo, introduce deployNodes task, that deploys all three types of Notary into different directories (so there is no need to do clean, when you want to run them one after another).
137 lines
3.9 KiB
Groovy
137 lines
3.9 KiB
Groovy
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"
|
|
|
|
// Corda integration dependencies
|
|
runtime project(path: ":node:capsule", configuration: 'runtimeArtifacts')
|
|
runtime project(path: ":webserver:webcapsule", configuration: 'runtimeArtifacts')
|
|
compile project(':core')
|
|
compile project(':client:jfx')
|
|
compile project(':client:rpc')
|
|
compile project(':finance')
|
|
compile project(':test-utils')
|
|
|
|
// Javax is required for webapis
|
|
compile "org.glassfish.jersey.core:jersey-server:${jersey_version}"
|
|
}
|
|
|
|
task deployNodes(type: net.corda.plugins.Cordform, dependsOn: ['jar']) {
|
|
directory "./build/nodes"
|
|
// This name "Notary" is hard-coded into BankOfCordaClientApi so if you change it here, change it there too.
|
|
// In this demo the node that runs a standalone notary also acts as the network map server.
|
|
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
|
|
rpcPort 10003
|
|
cordapps = []
|
|
}
|
|
node {
|
|
name "CN=BankOfCorda,O=R3,L=New York,C=US"
|
|
nearestCity "New York"
|
|
advertisedServices = ["corda.issuer.USD"]
|
|
p2pPort 10005
|
|
rpcPort 10006
|
|
webPort 10007
|
|
cordapps = []
|
|
rpcUsers = [
|
|
['username' : "bankUser",
|
|
'password' : "test",
|
|
'permissions': ["StartFlow.net.corda.flows.CashPaymentFlow",
|
|
"StartFlow.net.corda.flows.IssuerFlow\$IssuanceRequester"]]
|
|
]
|
|
}
|
|
node {
|
|
name "CN=BigCorporation,O=R3,OU=corda,L=London,C=UK"
|
|
nearestCity "New York"
|
|
advertisedServices = []
|
|
p2pPort 10008
|
|
rpcPort 10009
|
|
webPort 10010
|
|
cordapps = []
|
|
rpcUsers = [
|
|
['username' : "bigCorpUser",
|
|
'password' : "test",
|
|
'permissions': ["StartFlow.net.corda.flows.CashPaymentFlow"]]
|
|
]
|
|
}
|
|
}
|
|
|
|
task integrationTest(type: Test, dependsOn: []) {
|
|
testClassesDir = sourceSets.integrationTest.output.classesDir
|
|
classpath = sourceSets.integrationTest.runtimeClasspath
|
|
}
|
|
|
|
idea {
|
|
module {
|
|
downloadJavadoc = true // defaults to false
|
|
downloadSources = true
|
|
}
|
|
}
|
|
|
|
publishing {
|
|
publications {
|
|
jarAndSources(MavenPublication) {
|
|
from components.java
|
|
artifactId 'bankofcorda'
|
|
|
|
artifact sourceJar
|
|
artifact javadocJar
|
|
}
|
|
}
|
|
}
|
|
|
|
task runIssuer(type: JavaExec) {
|
|
classpath = sourceSets.main.runtimeClasspath
|
|
main = 'net.corda.bank.BankOfCordaDriverKt'
|
|
args '--role'
|
|
args 'ISSUER'
|
|
}
|
|
|
|
task runRPCCashIssue(type: JavaExec) {
|
|
classpath = sourceSets.main.runtimeClasspath
|
|
main = 'net.corda.bank.BankOfCordaDriverKt'
|
|
args '--role'
|
|
args 'ISSUE_CASH_RPC'
|
|
args '--quantity'
|
|
args 20000
|
|
args '--currency'
|
|
args 'USD'
|
|
}
|
|
|
|
task runWebCashIssue(type: JavaExec) {
|
|
classpath = sourceSets.main.runtimeClasspath
|
|
main = 'net.corda.bank.BankOfCordaDriverKt'
|
|
args '--role'
|
|
args 'ISSUE_CASH_WEB'
|
|
args '--quantity'
|
|
args 30000
|
|
args '--currency'
|
|
args 'GBP'
|
|
}
|