mirror of
https://github.com/corda/corda.git
synced 2024-12-23 23:02:29 +00:00
0ccfae252f
* POMs generated by publishing are now correct. The publish extension now requires an explicit call to configure the publishing instead of waiting until after evaluation. This prevents evaluation order issues with the artifact renaming code that causes the POM to have the original, incorrect, artifact names. * Fixed new test compile issues caused by removal of some dependencies in test utils that caused webserver code to be automatically included in any project also compiling test utils.
136 lines
3.9 KiB
Groovy
136 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
|
|
compile project(path: ":node:capsule", configuration: 'runtimeArtifacts')
|
|
compile project(path: ":webserver:webcapsule", configuration: 'runtimeArtifacts')
|
|
compile project(':core')
|
|
compile project(':client:jfx')
|
|
compile project(':client:rpc')
|
|
compile project(':finance')
|
|
compile project(':webserver')
|
|
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=Zurich,C=CH"
|
|
node {
|
|
name "CN=Notary Service,O=R3,OU=corda,L=Zurich,C=CH"
|
|
advertisedServices = ["corda.notary.validating"]
|
|
p2pPort 10002
|
|
rpcPort 10003
|
|
cordapps = []
|
|
}
|
|
node {
|
|
name "CN=BankOfCorda,O=R3,L=New York,C=US"
|
|
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.CashExitFlow",
|
|
"StartFlow.net.corda.flows.IssuerFlow\$IssuanceRequester"]]
|
|
]
|
|
}
|
|
node {
|
|
name "CN=BigCorporation,O=R3,OU=corda,L=London,C=GB"
|
|
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'
|
|
}
|