2016-11-21 15:11:24 +00:00
|
|
|
// The project is named 'corda-project' and not 'corda' because if this is named the same as the
|
|
|
|
// output JAR from the capsule then the buildCordaJAR task goes into an infinite loop.
|
|
|
|
rootProject.name = 'corda-project'
|
2017-09-18 13:19:20 +00:00
|
|
|
include 'confidential-identities'
|
2018-12-19 18:02:51 +00:00
|
|
|
include 'finance:contracts'
|
|
|
|
include 'finance:workflows'
|
2018-12-31 15:02:11 +00:00
|
|
|
include 'isolated'
|
2016-05-14 16:57:41 +00:00
|
|
|
include 'core'
|
2017-03-24 14:43:45 +00:00
|
|
|
include 'docs'
|
2017-03-17 10:33:01 +00:00
|
|
|
include 'node-api'
|
2016-06-22 13:02:50 +00:00
|
|
|
include 'node'
|
2016-12-06 15:25:38 +00:00
|
|
|
include 'node:capsule'
|
2017-03-02 16:58:55 +00:00
|
|
|
include 'client:jackson'
|
2017-03-21 19:45:12 +00:00
|
|
|
include 'client:jfx'
|
|
|
|
include 'client:mock'
|
2017-03-22 15:52:54 +00:00
|
|
|
include 'client:rpc'
|
2018-11-20 13:38:44 +00:00
|
|
|
include 'docker'
|
2017-03-30 16:34:32 +00:00
|
|
|
include 'webserver'
|
|
|
|
include 'webserver:webcapsule'
|
2016-06-22 13:02:50 +00:00
|
|
|
include 'experimental'
|
2018-06-04 12:33:34 +00:00
|
|
|
include 'experimental:avalanche'
|
2018-02-01 16:06:12 +00:00
|
|
|
include 'experimental:behave'
|
2017-05-11 10:13:18 +00:00
|
|
|
include 'experimental:quasar-hook'
|
2018-05-18 10:35:00 +00:00
|
|
|
include 'experimental:corda-utils'
|
2018-06-11 19:34:59 +00:00
|
|
|
include 'jdk8u-deterministic'
|
2017-06-28 08:54:09 +00:00
|
|
|
include 'test-common'
|
2018-08-16 14:44:40 +00:00
|
|
|
include 'test-cli'
|
2016-07-14 12:47:31 +00:00
|
|
|
include 'test-utils'
|
2017-06-02 14:47:20 +00:00
|
|
|
include 'smoke-test-utils'
|
2017-09-05 08:50:51 +00:00
|
|
|
include 'node-driver'
|
2017-09-05 17:27:26 +00:00
|
|
|
// Avoid making 'testing' a project, and allow build.gradle files to refer to these by their simple names:
|
2018-08-16 14:44:40 +00:00
|
|
|
['test-common', 'test-utils', 'test-cli', 'smoke-test-utils', 'node-driver'].each {
|
2017-09-05 17:27:26 +00:00
|
|
|
project(":$it").projectDir = new File("$settingsDir/testing/$it")
|
|
|
|
}
|
2016-11-04 11:20:02 +00:00
|
|
|
include 'tools:explorer'
|
Merge DemoBench into Corda. (#380)
* Add basic spec for the demobench tool.
* Initial commit: Creating new tabs whenever the "Add Node" button is pressed. These tabs currently contain the bash shell only.
* Refactor shutdown code, although AWT is still misbehaving.
* Remove duplicate libpty native objects.
* Add initial form for configuring new nodes.
* Update to Corda 0.8-SNAPSHOT
* Patch JediTerm to allow the application to shutdown cleanly.
* Write configuration parameters into node.conf, and then run corda.jar in its own directory.
* The first node now becomes the session's Network Map service used by all other nodes. Force nodes to be created one-by-one.
* Trim node name and nearest city values.
* Fix logging location of corda.jar
* legalName field can be val.
* Allow configuration of extra network services.
* Launch DB viewer for node.
* Small tidy-up.
* Allow services to be loaded as a resources as well as a file.
* Include native artifacts in distribution.
* Add cash and issuer services to DemoBench.
* Configure Node and DemoBench to use same version of H2 database.
* Implement launching "Node Explorer" for each node.
* Create a capsule for Node Explorer, and allow login via command line parameters to bypass login screen.
* Simplify Kotlin objects.
* Include issuer for CHF (Swiss Francs)
* Fix SLF4J logging.
* Display simple statistics about the node on each tab.
* Add new RPC operation getCashBalances() to Node.
* Ensure demobench is built after explorer:capsule.
* Grant permissions to the Node's user, and install BanfOfCorda plugin for cash issuers.
* Initial inclusion of Corda and BankOfCorda JARs in distribution.
* Fix DemoBench distribution target.
* Add SLF4J binding for Log4J 2.x
* First batch of code review changes.
* More changes from review.
* Remove ".exe" from Java executable path, because Windows doesn't need it.
* Remove superfluous lamba parameter names.
* Better usage of Paths vs File API.
* Simplify the configuration object.
* Ensure a DemoBench installation is relocatable.
* Ensure that Node Explorer can write into its working directory.
* Disable Node Explorer and Database Viewer buttons until the node has launched and is responding to RPC.
* Only allow the first node to run notary services. And validate port numbers more strongly.
* Force all chosen port numbers to be different.
* Initial javapackager task: currently builds RPMs.
* Ensure JavaPackager task finds custom resources on the classpath.
* Move demobench.log into the user's demobench directory.
* Upgrade to Logback 1.1.10
* Make the javapackage task "more gradle" and "less ant".
* Display "0" balance for a node which has no cash balances at all.
* CORPRIV-665: Ensure tab closes if the node exits.
* CORPRIV-665: Protect against NPE
* CORPRIV-665: Protect harder against NPE
* CORPRIV-665: Protect NodeTerminalView from being destroyed twice.
* Initial custom resource script for Windows bundle.
* Take java executable from JRE.
* Allow Node Explorer to be relaunched.
* CORPRIV-658: Add gradle parameter "packageType" for javapackage task.
* Replace R3 logo with Corda logo.
* CORPRIV-658: Add icon file for Windows installer.
* CORPRIV-658: Add BAT file to create unsigned DemoBench.exe.
* CORPRIV-659: Add icon file for DMG package.
* Improve packaging information.
* CORPRIV-660: Allow user to launch Web server for each node.
* Tidy up gradle usage.
* Document provenance of jediterm-terminal-2.5.jar.
* Use "safe" casting operator.
* CORPRIV-659: Add bin/java to minimal JRE.
* CORPRIV-659: Basic shell script to package DemoBench as DMG.
* Add utility function for creating SLF4J loggers, and close unused I/O streams from forked processes.
* Switch from Runtime.exec() to ProcessBuilder.
* CORPRIV-660: Display Web server's port number on launch button.
* CORPRIV-661: Allow profiles to be loaded into DemoBench.
* Upgrade to TornadoFX 1.6.2.
* CORPRIV-661: Implement saving profiles.
* CORPRIV-661: Refactor code for guaranteeing a .zip extension.
* CORRIV-658: Add icon for Windows installer.
* CORPRIV-659: Update installer script and icons for DMG.
* CORPRIV-659: Tweak post-image script for DMG.
* CORPRIV-658: I've wasted enough time on this - Windows rejects this BMP
as invalid, and I have no idea why!?
* CORPRIV-658: Add external manifest for DemoBench.exe that declares it incapable of native HiDPI support.
* CORPRIV-661: Ensure that we can rewrite saved profiles correctly.
* Fix terminal resizing.
* CORPRIV-659: Fix DMG installer.
* CORPRIV-659: Better validation for JAVA_HOME.
* Downgrade JDK requirement to 8u102, for consistency with capsules.
* Comment how JediTerm is not available via Maven.
* CORPRIV-658: Rename packaging script.
* CORPRIV-659: Renaming packaging script.
* Comment file copying vs file filtering during packaging.
* Fixes from code review.
* CORPRIV-661: Ensure that nodes loaded from a profile have the correct network map service.
* Break textfield definitions out into separate functions.
* Fixes from code review.
* Code review tweaks.
* More code review tweaks.
* Another simple code review tweak.
* Replace companion object with a BiPredicate lambda.
* CORPRIV-664: Implement saving/loading of Cordapps with profiles.
* CORPRIV-664: Refactor saving/loading plugins.
* CORPRIV-664: Add initial unit tests for model.
* CORPRIV-664: Add simple unit tests for NodeController.
* CORPRIV-664: Unit test enhancements, e.g. configure JUL properly.
* CORPRIV-664: Use Suite instead of abstract test class.
* CORPRIV-664: Allow Cordapps to be loaded when each Node is configured.
* CORPRIV-664: Document which checked Java exceptions are thrown.
* Write JavaPackager output into build/javapackage directory.
* CORPRIV-664: Document more checked Java exceptions.
* Refactor Web and Explorer classes into their own packages.
* Declare WebServer and Explorer constructors as "internal".
* Update packaging scripts: tell user where the installer is!
* CORPRIV-659: Set "system menu bar" property for MacOSX.
* CORPRIV-661: Use "*.profile" for profile files.
* Remove unnecessary <children/> elements, as they are defaults.
* Fix build breakage when on Windows.
* Tweaks for EXE packaging script.
* Change function to extension function.
* Merged in corpriv-702 (pull request #25)
CORPRIV-702: Sign the DMG with a 'Developer ID Application' certificate.
* CORPRIV-702: Sign the DMG with a 'Mac Developer' certificate.
* CORPRIV-702: Use "Developer ID Application" certificate instead. And now JavaPackager signs the application, which means that we only need to resign our embedded JVM.
* CORPRIV-702: Update comment better to explain why JRE must be resigned.
Approved-by: Mike Hearn
* Exclude old version of Javassist in favour of Hibernate's version from Node. (#320)
* Exclude old version of Javassist in favour of Hibernate's version.
* Comment why we are excluding javassist:javassist, and add TODO for when junit-quickcheck 0.8 is released.
* CORDA-265: Implement "ALL" permission for RPC users. (#306)
* CORDA-265: Implement "ALL" permission for RPC users. Users with this permission in node.conf can use any flow.
* CORDA-265: Ensure that we always close the RPC proxy object after each test.
* CORDA-265: Refactor construction of dummy RPC client into an abstract base class.
* CORDA-265: Document RPC "ALL" permission.
* CORDA-266: Update DemoBench to be compatible with 0.10-SNAPSHOT.
* CORDA-268: Reimplement to work on both JDK8 and JDK9 (for now).
* CORDA-268: Copy java from $JAVA_HOME/bin as this also works on JDK > 8.
* Code review fixes.
* Use SLF4J's version of the commons-logging bindings. Only include SLF4J's Log4J back-end for actual applications, e.g. Node. (#350)
* Update with SLF4J change.
* CORDA-266: Update to latest node.conf format.
* Upgrade to H2 1.4.194. (#389)
- Timezone related fixes.
- A Turkish case canonicalisation bug.
- Fixes for some scary threading related bugs.
2017-03-21 14:24:13 +00:00
|
|
|
include 'tools:explorer:capsule'
|
|
|
|
include 'tools:demobench'
|
2016-10-17 16:50:33 +00:00
|
|
|
include 'tools:loadtest'
|
2017-07-26 13:05:38 +00:00
|
|
|
include 'tools:graphs'
|
2017-12-07 14:48:31 +00:00
|
|
|
include 'tools:bootstrapper'
|
2018-05-24 17:26:55 +00:00
|
|
|
include 'tools:blobinspector'
|
2018-03-07 09:57:32 +00:00
|
|
|
include 'tools:shell'
|
2018-06-21 09:32:36 +00:00
|
|
|
include 'tools:shell-cli'
|
2018-06-12 12:59:27 +00:00
|
|
|
include 'tools:network-bootstrapper'
|
2018-08-22 20:51:25 +00:00
|
|
|
include 'tools:cliutils'
|
2019-02-05 15:29:26 +00:00
|
|
|
include 'tools:worldmap'
|
2017-11-08 12:30:23 +00:00
|
|
|
include 'example-code'
|
|
|
|
project(':example-code').projectDir = file("$settingsDir/docs/source/example-code")
|
2019-01-23 13:26:33 +00:00
|
|
|
include 'samples:attachment-demo:contracts'
|
|
|
|
include 'samples:attachment-demo:workflows'
|
|
|
|
include 'samples:trader-demo:workflows-trader'
|
2016-11-17 11:03:40 +00:00
|
|
|
include 'samples:irs-demo'
|
2019-01-23 13:26:33 +00:00
|
|
|
include 'samples:irs-demo:cordapp:contracts-irs'
|
|
|
|
include 'samples:irs-demo:cordapp:workflows-irs'
|
2017-10-25 15:40:21 +00:00
|
|
|
include 'samples:irs-demo:web'
|
2016-11-22 18:09:56 +00:00
|
|
|
include 'samples:simm-valuation-demo'
|
2018-05-08 15:19:35 +00:00
|
|
|
include 'samples:simm-valuation-demo:flows'
|
|
|
|
include 'samples:simm-valuation-demo:contracts-states'
|
2019-01-23 13:26:33 +00:00
|
|
|
include 'samples:notary-demo:contracts'
|
|
|
|
include 'samples:notary-demo:workflows'
|
2017-09-18 13:19:20 +00:00
|
|
|
include 'samples:bank-of-corda-demo'
|
2019-01-23 13:26:33 +00:00
|
|
|
include 'samples:cordapp-configuration:workflows'
|
|
|
|
include 'samples:network-verifier:contracts'
|
|
|
|
include 'samples:network-verifier:workflows'
|
2018-05-17 15:18:07 +00:00
|
|
|
include 'serialization'
|
2018-07-25 12:45:16 +00:00
|
|
|
|
2018-10-25 15:45:14 +00:00
|
|
|
// Common libraries - start
|
|
|
|
include 'common-validation'
|
|
|
|
project(":common-validation").projectDir = new File("$settingsDir/common/validation")
|
|
|
|
|
|
|
|
include 'common-configuration-parsing'
|
|
|
|
project(":common-configuration-parsing").projectDir = new File("$settingsDir/common/configuration-parsing")
|
2019-04-09 19:14:37 +00:00
|
|
|
|
|
|
|
|
|
|
|
include 'common-logging'
|
|
|
|
project(":common-logging").projectDir = new File("$settingsDir/common/logging")
|
2018-10-25 15:45:14 +00:00
|
|
|
// Common libraries - end
|
|
|
|
|
2018-09-26 12:38:23 +00:00
|
|
|
apply from: 'buildCacheSettings.gradle'
|
|
|
|
|
2018-07-25 12:45:16 +00:00
|
|
|
if (JavaVersion.current() == JavaVersion.VERSION_1_8) {
|
|
|
|
include 'core-deterministic'
|
|
|
|
include 'core-deterministic:testing'
|
|
|
|
include 'core-deterministic:testing:data'
|
2018-09-07 14:07:06 +00:00
|
|
|
include 'core-deterministic:testing:verifier'
|
2018-07-25 12:45:16 +00:00
|
|
|
include 'serialization-deterministic'
|
|
|
|
}
|
2018-10-25 15:45:14 +00:00
|
|
|
|