Commit Graph

180 Commits

Author SHA1 Message Date
josecoll
4762569200
CORDA-822 - JMX Jolokia instrumentation (#2197)
* JMX Jolokia instrumentation WIP (driverDSL, webserver, cordformation, hibernate statistics, access policy config file hardening)

* Cordformation changes to support jolokia agent instrumentation at JVM startup.

* Minor updates to reflect usage of Jolokia 1.3.7 (which uses slightly different .war naming)

* Use relative path reference in -javaagent to prevent problem with long path names with spaces.

* Fixed incorrect regex pattern and added assertion to test.

* Enable JMX monitoring.

* Reporting of Hibernate JMX statistics is configurable (by default, only switched on in devMode)

* Make Artemis JMX enablement configurable.

* Re-instate banning of java serialization.

* Improve JUnit.

* Fixes following rebase from master.

* Re-instated correct regex for picking up Jolokia agent jar.

* Fixed broken integration test.

* Updated documentation

* Updated following PR review feedback.

* Fixed compilation error caused by change in DriverDSL argument type.

* Fixed compilation error caused by change in DriverDSL argument type.

* Fail fast if jolokia-agent-jvm.jar is not located.

* Applied changes in cordformation following review feedback from CA.
2017-12-08 16:27:12 +00:00
Clinton
1375084936
CORDA-840: Gradle plugins are now able to be published to artifactory. (#2203)
Gradle plugins are now able to be published to artifactory.
2017-12-07 17:22:22 +00:00
Shams Asari
5c53a91785 Overhaul of the Bank of Corda demo to fix two problems it had:
1. The runRPCCashIssue and runWebCashIssue gradle tasks didn't work because they were using the wrong ports
2. Notary lookup was failing because the lookup name didn't include the correct CN for the notary name (this slipped through when reverting the network parameters)

The ports change occurred in #1922 which was attempting the fix the runIssuer gradle task. This is actually a misleading and redundant task as all it does is start up the nodes, which is what the documented deployNodes already does. The ports runIssuer allocated to the nodes were different to the ones specified in deployNodes.

To make sure we have integration tests which closely match deployNodes, the BoC demo has been updated to make use of CordformDefinition. This keeps the node definitions in one place, removing the need to have disparate files in sync. runIssuer has been removed.
2017-11-29 14:48:05 +00:00
Maksymilian Pawlak
e63b6d1386
CORDA-311 Shell via SSH server (#2087)
* SSH server integration
2017-11-20 17:41:38 +00:00
Clinton
dcaac91691
Cordformation now allows addresses to be used for non-database addresses. (#1917)
Cordformation now allows addresses to be used for non-database addresses.
2017-10-31 20:48:57 +00:00
Clinton
6a5f8a2362
Upgraded to gradle 4.3 (#1960)
* Upgraded to gradle 4.3
* Replaced a null check with an elvis expression
2017-10-31 16:44:13 +00:00
Chris Rankin
7f96205b99
Allow Gradle to set dependency between Jar and ScanApi tasks. (#1962) 2017-10-31 14:14:33 +00:00
Mat Rizzo
cc03804701 CORDA-742 PR #1951 Fixed compilation error 2017-10-26 17:26:30 +01:00
Mat Rizzo
ee3106fd5a CORDA-742 PR #1951 Moved extension methods back. 2017-10-26 17:26:30 +01:00
Mat Rizzo
92bbce711b CORDA-742 PR #1951 Moved extension methods into node. 2017-10-26 17:26:30 +01:00
Mat Rizzo
a3c553d44a CORDA-742 Added constant for cache directory. 2017-10-26 17:26:30 +01:00
Mat Rizzo
8021cdd364 CORDA-742 Refactors 2017-10-26 17:26:30 +01:00
Mat Rizzo
788d8ef65f CORDA-742 Minor refactor 2017-10-26 17:26:30 +01:00
Mat Rizzo
ac1dfec1ff CORDA-742 Refactored back to more parallel execution 2017-10-26 17:26:30 +01:00
Mat Rizzo
f5a8e11411 CORDA-742 Test capsule cache directory 2017-10-26 17:26:30 +01:00
Mat Rizzo
127c862982 CORDA-742 Test capsule cache directory 2017-10-26 17:26:30 +01:00
Mat Rizzo
e10ed1bdcf CORDA-742 Test capsule cache directory 2017-10-26 17:26:30 +01:00
Mat Rizzo
3bcf526f47 CORDA-742 Test capsule cache directory 2017-10-26 17:26:30 +01:00
Mat Rizzo
4e07add161 CORDA-742 Change capsule cache directory for testing purposes 2017-10-26 17:26:30 +01:00
Mat Rizzo
91bba5e263 CORDA-741 changed formatted to true 2017-10-26 15:26:50 +01:00
Mat Rizzo
75ba471238 CORDA-728 Turning on capsule debug 2017-10-26 15:26:50 +01:00
Mat Rizzo
59fe7a196b CORDA-728 fixed the issue with node runner on mac. Also did a tiny bit of readability refactoring.
CORDA-728 clinton's requested changes to move all property getters onto one line

CORDA-728 fixed the issue with node runner on mac. Also did a tiny bit of readability refactoring.

CORDA-728 clinton's requested changes to move all property getters onto one line

CORDA-728 Tiny bit of readability refactoring, change of flow control around error occuring on TC, renaming of log file to work with Rick's TC change.

CORDA-728 clinton's requested changes to move all property getters onto one line

CORDA-728 clinton's requested changes to move all property getters onto one line

CORDA-728 Fixing some simple compilation errors.

CORDA-728 deparallelizing in attempt to fix capsule error
2017-10-26 15:26:50 +01:00
Maksymilian Pawlak
931ab120fc Merge pull request #1544 from corda/m4ksio_gradle_no_o_fix
Avoid ArrayOutOfBound exception in Gradle
2017-10-23 13:24:31 +01:00
Chris Rankin
2c84d07e8e CORDA-704: Implement @DoNotImplement annotation (#1903)
* Enhance the API Scanner plugin to monitor class annotations.
* Implement @DoNotImplement annotation, and apply it.
* Update API definition.
* Update API change detection to handle @DoNotImplement.
* Document the `@DoNotImplement` annotation.
2017-10-19 17:18:35 +01:00
Maksymilian Pawlak
651bbdcf83 Kotlin migration 2017-10-19 16:13:33 +01:00
Clinton
3dd09fd69b Cordformation in Kotlin (#1873)
Cordformation rewritten in kotlin.
2017-10-19 15:41:25 +01:00
Clinton
2680361696 Renamed "plugins" dir to "cordapps" (#1644)
* Renamed plugins dir to cordapps dir while maintaining backwards compatibility with the plugins dir.
Bumped gradle plugins to 2.0.4
2017-10-13 15:01:24 +01:00
Clinton
15d29d7982 Fixed the dozens of artifactory warnings at gradle initialisation. (#1862)
* Fixed the dozens of artifactory warnings at gradle initialisation.
2017-10-11 12:41:11 +01:00
Alberto Arri
3bee830604 [CORDA-442] Removed the NetworkMap option from Cordform, changed all the examples… (#1827)
[CORDA-442]
Removed the option for Cordformation to specify a networkMap.

All the samples have been migrated to not specify a networkMap.
2017-10-10 15:45:42 +01:00
szymonsztuka
8c9045bd73 deployNodes Gradle task appends properties from an optional file to node.conf (#1444)
* deployNodes Gradle task appends properties from an optional file to node.conf
2017-10-10 15:03:05 +01:00
Shams Asari
bd53a22efa Removed extraAdvertisedServiceIds config
The remaining use for it was the finance CorDapp for permissioning CCY issuers. Instead this is now taken from a custom config in node.conf.
2017-10-10 13:47:37 +01:00
Clinton
484cf75420 CORDA-686 - Split Cordapp gradle plugin from cordformation (#1817)
Added CorDapp gradle plugin written in Kotlin and bumped the version of gradle plugins to 2.0.0 to reflect that this backwards incompatible change is a part of the on going stabilisation of the Corda gradle plugin suite.
2017-10-09 20:08:08 +01:00
Shams Asari
727cd0e55c Cleaned up notary configuration by introducing a notary config option.
extraAdvertisedServiceIds is no longer used for this.
2017-10-07 12:52:37 +01:00
Chris Rankin
d761d52c16 Fix filterAnnotationsFor() to return MethodInfo. 2017-10-06 14:55:30 +01:00
Chris Rankin
d9f086cf91 Modify the API Scanner plugin to filter method annotations. 2017-10-06 12:11:42 +01:00
Alberto Arri
eb0e2535ed [CORDA-442] Make cordformation serialize NodeInfos to disk during deployment. (#1546)
Initial PR for https://r3-cev.atlassian.net/projects/CORDA/issues/CORDA-442

Allow for cordformation not to specify which node is the network map.
When that happens Cordformation will start each node and make it serialize its NodeInfo to disk.
This make 'depolyNodes' slower. On my machine for the traderDemo it's ~25s

PersistentNetworkMapCache will load files from disk at startup.
Additionally nodeinfos are loaded in the networkMapCache only if they're newer than the currently known version.
2017-10-03 15:43:50 +01:00
Chris Rankin
4d4027947b Annotate Gradle task inputs correctly. (#1752) 2017-09-30 21:55:51 +01:00
Chris Rankin
1e12aebe0a Gradle API Scanner plugin (#1669)
* Skeleton plugin.
* Implement Gradle api-scanner plugin, and apply it.
* Generate API documentation for any jar without a classifier.
* Fix usage of smokeTests classifier.
* Tweak Gradle API usage.
* Upgrade to fast-classpath-scanner 2.7.0
* Include interfaces and more modifiers in the class description.
* Allow system classes to be supertypes and implemented interfaces.
* Make API Scanner plugin configuration tweakable via build.gradle.
* Add a miserable amount of unit testing.
* Sort methods and fields using their natural comparators. Way easier!
* Add README for api-scanner plugin.
* Add @OutputFiles to ScanApiTask.
* Rename ScanApiTask to ScanApi.
* Allow the ScanApi task to be disabled.
* WIP: Create a top-level GenerateApi task to collate the ScanApi output.
* Exclude package-private classes, as well as bridge/synthetic methods.
* Replace "End of Class" delimiter with '##'.
* Don't scan modules whose API is still "in flux".
* Include constructors in the API definitions.
* Finish implementation of GenerateApi task.
* Update README to include GenerateApi task.
* Filter out Kotlin's "internal" methods.
* Assign "fatjar" classifier to the fat jar artifact.
* Enhance README for GenerateApi.
* Explain effect of api-scanner plugin, and link to Corda's API strategy.
* Tweak README
* Exclude synthetic Kotlin classes by analysing @Metadata.
* Allow us to exclude some classes explicitly from the API.
2017-09-29 16:55:26 +01:00
Chris Rankin
0e3005518e Exclude kotlin-reflect artifact from any CorDapp. (#1555) 2017-09-19 15:05:54 +01:00
Chris Rankin
5eab71caae Filter for Open Source and Enterprise modules. (#1514) 2017-09-15 09:01:50 +01:00
Ross Nicoll
ae2183c8a1 Reduce use of X500Name bridges (#1483)
* Change to using strings in CordformContext; X500Name is an external API dependency we're trying to avoid, X500Principal rearranges the order of the elements in a way we don't want, and trying to put CordaX500Name into Groovy in the time available is impractical. As such having pre-formatted strings used in the Cordform plugin makes most sense right now.
* Remove uses of CordaX500Name.x500
* Remove old X.500 parsing tools
* Move CordaX500Name.x500 into X500NameUtils
* Move X500NameUtils into internal
2017-09-14 11:56:14 +01:00
Clinton
8415a01a47 Cordform common is now a part of the gradle plugin suite (#1474)
Cordform common is now a full gradle plugin and all related gradle hacks are removed.
2017-09-12 19:18:09 +01:00
cburlinchon
10c4d46b97 Add delay to macos script startup (#1462) 2017-09-11 15:23:03 +01:00
Maksymilian Pawlak
069e31d006 Don't start Corda webserver if no webAddress has been defined for a node (#1434)
Don't start Corda webserver if no webAddress has been defined for a node
2017-09-08 15:25:20 +01:00
Patrick Kuo
57412d4498 Enforce X500Name format defined in design doc (#1427)
* Standardise X500Name format - WIP

* address PR issues

* failing test fix and replace X500Name with getX500Name

* gradle plugin fix

* Added country code validation
2017-09-07 14:47:42 +01:00
Clinton Alexander
40146cdbc0 Fixed a crash in cordformation when trying to build nodes for a project with a file as a dependency and any other dependencies without a group 2017-09-04 15:20:44 +01:00
Chris Rankin
66c35bbffa Demote quasar-core to a runtime dependency, and capsule to "compileOnly". (#1381) 2017-09-01 11:12:04 +01:00
Clinton Alexander
8756f337db Added a flag to denote debug mode for capsule in cordformation. 2017-08-24 15:57:11 +01:00
Clinton Alexander
1b61f94bb8 Improved logging message for including cordapp dependencies. 2017-08-16 18:04:41 +01:00
Matthew Nesbit
ca5ea1e25d Fix a bug where when using a groovy string a cordapp will not be included
because of a string and GString equality failure.
2017-08-16 18:02:20 +01:00