Commit Graph

597 Commits

Author SHA1 Message Date
Connel McGovern
648f4cf397
INFRA-1735 Teams notification's for C4 (#7110)
* INFRA-1728 set correct java version for JDK 11 base image
2022-03-15 15:56:48 +01:00
Connel McGovern
8dce286a2f
INFRA-1735 Teams notification's for C4 (#7107)
* INFRA-1728 set correct java version for JDK 11 base image
2022-03-15 08:58:58 +01:00
Connel McGovern
8da0e718a5
INFRA-1735 Teams notification's for C4 (#7108)
* INFRA-1728 set correct java version for JDK 11 base image
2022-03-15 08:58:36 +01:00
Connel McGovern
8a240e2859
INFRA-1735 Teams notification's for C4 (#7109)
* INFRA-1728 set correct java version for JDK 11 base image
2022-03-15 08:58:21 +01:00
Connel McGovern
a84c174aad
INFRA-1735 Teams notification's for C4 (#7111)
* INFRA-1728 set correct java version for JDK 11 base image
2022-03-15 08:57:57 +01:00
Connel McGovern
4844614314
INFRA-1735 Teams notification's for C4 (#7106) 2022-03-15 08:57:41 +01:00
Connel McGovern
4ca2927dd3
INFRA-1735 Teams notification's for C4 (#7105)
* INFRA-1728 set correct java version for JDK 11 base image
2022-03-15 08:57:04 +01:00
Ronan Browne
f933d23d26
INFRA-1728 set correct java version for JDK 11 base image (#7101)
Use Specific JDK version not the latest Java 11 base image
2022-03-10 17:59:25 +00:00
Ronan Browne
787d0cde99
INFRA-1728 set correct java version for JDK 11 base image (#7102)
Use Specific JDK version not the latest Java 11 base image
2022-03-10 15:38:41 +00:00
Ronan Browne
ee8eac4516 NOTICK: release support optionally exclude shell dependency 2022-03-08 10:50:59 +00:00
Ronan Browne
e1746e068c
NOTICK: add flag to ensure API docs are published as part of release process (#7103) 2022-03-07 18:00:10 +01:00
Rick Parker
1e227fdfc4
ENT-6711 - Fix for upgrade to Jackson 2.12 and beyond (actual upgrade to 2.13.1) (#7096)
* NOTICK - Don't know what the JIRA is but wanted to share.

* Updates to resolve bukld issues

* NOTICK: Fixed JDK11 version to prevent capsule version error

* ENT-6711: Added comment for use of jackson_kotlin_version.

* ENT-6711: Avoid deprecation warning, switched to the default method.

Co-authored-by: Chris Cochrane <chris.cochrane@r3.com>
Co-authored-by: Adel El-Beik <adel.el-beik@r3.com>
2022-03-07 11:08:06 +00:00
Ronan Browne
387cb30e2e
ENT-6609 update docker images so repo for community edition is corda/community (#7088) 2022-02-24 11:36:40 +01:00
Ronan Browne
38988527b9
ENT-6609 update docker images so repo for community edition is corda/community (#7089) 2022-02-24 11:36:06 +01:00
Ronan Browne
7658c5a413
INFRA-1720: remove dockerhub publishing nightly (#7079) 2022-02-22 09:37:15 +01:00
Ronan Browne
beaed61028
INFRA-1720: remove dockerhub publishing nightly (#7081) 2022-02-22 09:36:33 +01:00
Ronan Browne
a624e863fa
INFRA-1720: remove dockerhub publishing nightly (#7080) 2022-02-22 09:36:01 +01:00
Ronan Browne
e00bd93478
INFRA-1386 - remove nightly publish to dockerhub (#6908) (#7078)
* INFRA-1386 - remove nightly publish to dockerhub.

* Remove entirely.

Co-authored-by: Dries Samyn <dries.samyn@r3.com>
2022-02-22 09:35:17 +01:00
Ronan Browne
f25317ddf0 INFRA-1697 minor tidy up 2022-02-21 20:57:56 +00:00
Ronan Browne
f304eeded0
INFRA-1697: fix white space 2022-02-14 17:06:31 +00:00
Ronan Browne
a21292d03f INFRA-1697: remove authentication details from gradlew wrapper download and add helper to add them in when ran on CI 2022-02-14 17:04:47 +00:00
Ronan Browne
ce211000cd
ENT-6426: update docker tagging (#7047)
* ENT-6426: update docker tahhing inline with our policies

old
corda/corda-zulu-java1.8-4.8.5:latest

new
corda/corda:4.8.5-zulu-1.8

based on pattern
{repo}:{version}-{base-Image}

* ENT-6426: update docker tahhing inline with our policies

old
corda/corda-zulu-java1.8-4.8.5:latest

new
corda/corda:4.8.5-zulu-openjdk8

based on pattern
{repo}:{version}-{base-Image}

Remove some redundant code

* ENT-6426 update corda repo tagging

* ENT-6426 update corda repo tagging

* ENt-6426 update corda tagging in line with feedback
2022-01-26 13:32:18 +00:00
Ronan Browne
2d2289b3bf
ENT-6426: update docker tagging inline with our dockerhub policies (#7027)
* ENT-6426: update docker tahhing inline with our policies

old
corda/corda-zulu-java1.8-4.8.5:latest

new
corda/corda:4.8.5-zulu-1.8

based on pattern
{repo}:{version}-{base-Image}

* ENT-6426: update docker tahhing inline with our policies

old
corda/corda-zulu-java1.8-4.8.5:latest

new
corda/corda:4.8.5-zulu-openjdk8

based on pattern
{repo}:{version}-{base-Image}

Remove some redundant code

* ENT-6426 update corda repo tagging
2022-01-19 10:34:35 +00:00
Ryan Fowler
857b8aa286
ENT-6542: Add Community Edition string for R3 builds (#7026) 2022-01-18 11:12:32 +00:00
Waldemar Zurowski
00ba7b3447 Merge branch 'release/os/4.7' into wz/merge-os-47-48-2022-01-12 2022-01-12 09:52:52 +01:00
Waldemar Zurowski
46a358965e Merge branch 'release/os/4.6' into wz/merge-os-46-47-2022-01-12 2022-01-12 07:34:32 +01:00
Waldemar Żurowski
5de343ecf0
NOTICK: Merging forward updates from OS 4.5 to OS 4.6 (2022-01-11) (#7014)
* ENT-6494: Upgraded log4j to 2.17.0 (#6996)

* NOTICK: Merging forward updates from OS 4.4 to OS 4.5 (2022-01-07) (#7007)

* backported from emergency releases for log4j updates
* adds a build parameter, which control if tests should be run or not, default is `true`

* ENT-6494: Upgraded log4j to 2.17.1

Co-authored-by: Adel El-Beik <48713346+adelel1@users.noreply.github.com>
Co-authored-by: Adel El-Beik <adel.el-beik@r3.com>
2022-01-11 12:44:42 +01:00
Waldemar Żurowski
99403e9d18
NOTICK: Merging forward updates from OS 4.4 to OS 4.5 (2022-01-07) (#7007)
* backported from emergency releases for log4j updates
* adds a build parameter, which control if tests should be run or not, default is `true`
2022-01-08 22:10:27 +01:00
Waldemar Zurowski
525df323a6 Merge branch 'release/os/4.3' into wz/merge-os-43-44-2022-01-04
Conflicts:
	build.gradle
2022-01-04 12:13:57 +01:00
Waldemar Żurowski
9a7308f954
NOTICK: allow to skip executing all tests for a release (#7001)
* backported from emergency releases for log4j updates
* adds a build parameter, which control if tests should be run or not, default is `true`
2022-01-04 11:50:24 +01:00
Waldemar Zurowski
761532926b Merge branch 'release/os/4.7' into wz/merge-os-47-48-2021-06-25 2021-06-25 10:24:56 +02:00
Waldemar Zurowski
ad077b5263 Merge branch 'release/os/4.6' into wz/merge-os-46-47-2021-06-25 2021-06-25 10:22:33 +02:00
Waldemar Zurowski
b0d17c4a38 Merge branch 'release/os/4.5' into wz/merge-os-45-46-2021-06-25 2021-06-25 10:20:21 +02:00
Waldemar Zurowski
ac8ae8ad92 Merge branch 'release/os/4.4' into wz/merge-os-44-45-2021-06-25 2021-06-25 10:17:32 +02:00
Waldemar Zurowski
78549404f0 Merge branch 'release/os/4.3' into wz/merge-os-43-44-2021-06-25 2021-06-25 10:13:15 +02:00
Waldemar Żurowski
dcfcc43412
INFRA-1299: remove non-existed task (#6919)
* sneaked in from Corda Enterprise
2021-06-25 10:09:59 +02:00
Waldemar Zurowski
1f2b18c02a NOTICK: Merging forward updates from OS 4.7 to OS 4.8 (2021-06-07) 2021-06-07 20:17:41 +02:00
Waldemar Zurowski
8a1223aefe NOTICK: Merging forward updates from OS 4.6 to OS 4.7 (2021-06-07) 2021-06-07 14:51:19 +02:00
Waldemar Zurowski
c762ff6778 NOTICK: Merging forward updates from OS 4.5 to OS 4.6 (2021-06-07)
Conflicts:
	.ci/dev/compatibility/JenkinsfileJDK11Azul
2021-06-07 11:06:29 +02:00
Waldemar Żurowski
3cc8d93e3f
INFRA-1299: retire parallel builds for JDK11 releases (#6913) 2021-06-07 10:05:18 +02:00
Waldemar Zurowski
813c8a72d4 NOTICK: Merging forward updates from OS 4.4 to OS 4.5
Conflicts:
	.ci/dev/nightly-regression/Jenkinsfile
	Jenkinsfile
2021-06-03 12:10:34 +02:00
Waldemar Żurowski
863d6b0c28
Merge pull request #6910 from corda/wz/merge-os-43-44-2021-06-02
NOTICK: Merging forward updates from OS 4.3 to OS 4.4 (2021-06-02)
2021-06-03 08:37:03 +02:00
Waldemar Żurowski
286873a4e4
INFRA-1299: switch from Azure Jenkins agents to AWS (#6911)
* JDK11 compatibility - simply switch to AWS Jenkins agent
* Corda preview - simply switch from Azure agent to AWS agent
* part of retiring `k8s` agent used for parallel builds
2021-06-02 14:23:30 +02:00
Waldemar Zurowski
993f0e78f5 NOTICK: Merging forward updates from OS 4.3 to OS 4.4 (2021-06-02)
Conflicts:
	.ci/dev/nightly-regression/Jenkinsfile
	Jenkinsfile
2021-06-02 08:57:01 +02:00
Waldemar Zurowski
8d994283c6 INFRA-1299: switching from AKS to linear builds on two Jenkins agents
* removed `.ci/dev/unit/Jenkinsfile` and
`.ci/dev/integration/Jenkinsfile` - they don't seem to be used anywhere
* switched mandatory tests to linear build - modeled after Corda
  Enterprise
* switched nightly regression tests to linear build - modeled after
  Corda Enterprise
2021-06-01 16:21:22 +02:00
Dries Samyn
acde7cc364
INFRA-1386 - remove nightly publish to dockerhub (#6908)
* INFRA-1386 - remove nightly publish to dockerhub.

* Remove entirely.
2021-05-26 10:47:39 +02:00
Adel El-Beik
9cd02dc62d Merge remote-tracking branch 'origin/release/os/4.4' into adel/merge-from-4.4-19-Feb-21 2021-02-19 13:55:04 +00:00
Adel El-Beik
360b3f8d0c
CORDA-4125: Backport AttachmentClassLoader updates to 4.4 to enable ENT-6152 backport (#6878)
* CORDA-3755: Switched attachments map to a WeakHashMap (#6214)

* Bump OS release version 4.6

* CORDA-3755: Switched attachments map to a WeakHashMap

* CORDA-3755: Added explicit strong references to map key.

* CORDA-3755: Keeping detekt happy.

* CORDA-3755: Test a gc in verify.

* CORDA-3755: Making detekt happy.

* CORDA-3755: Suppress warnings for weak reference test.

* CORDA-3755: Fixing build failure with attachments.

* CORDA-3755: Rewrite based on Ricks input - now handles attachment already existing in map!

* CORDA-3755: Refactor WeakReference behaviour into AttachmentsHolderImpl and provide alternate version of this class for core-deterministic.

* CORDA-3755: Added more tests for WeakHashMap.

* CORDA-3755: Ignore the tests using System.gc keep for local testing only

* CORDA-3755: Adding comment to explain the ignored tests.

* Make AttachmentsHolderImpl package-private inside core-deterministic, just like it is inside core.

* CORDA-3755: Update assertions following review comments.

* CORDA-3755: Removing import

* CORDA-3755: Removed unused var.

* CORDA-3755: Reverting files that somehow got changed in rebase.

Co-authored-by: nargas-ritu <ritu.gupta@r3.com>
Co-authored-by: Chris Rankin <chris.rankin@r3.com>

* CORDA-3769: Switched attachments class loader cache to use caffeine (#6326)

* CORDA-3769: Switched attachments class loader cache to use caffeine with original implementation used by determinstic core.

* CORDA-3769: Removed default ctor arguments.

* CORDA-3769: Switched mapping function to Function type to avoid synthetic method being generated.

* CORDA-3769: Now using a cache created from NamedCacheFactory for the attachments class loader cache.

* CORDA-3769: Making detekt happy.

* CORDA-3769: The finality tests now check for UntrustedAttachmentsException which will actually happen in reality.

* CORDA-3769: Refactored after review comments.

* CORDA-3769: Removed the AttachmentsClassLoaderSimpleCacheImpl as DJVM does not need it. Also updated due to review comments.

* CORDA-3769: Removed the generic parameters from AttachmentsClassLoader.

* CORDA-3769: Removed unused imports.

* CORDA-3769: Updates from review comments.

* CORDA-3769: Updated following review comments. MigrationServicesForResolution now uses cache factory. Ctor updated for AttachmentsClassLoaderSimpleCacheImpl.

* CORDA-3769: Reduced max class loader cache size

* CORDA-3769: Fixed the attachments class loader cache size to a fixed default

* CORDA-3769: Switched attachments class loader size to be reduced by fixed value.

* CORDA-4125: Parameter has been added to a private ctor.

Co-authored-by: nargas-ritu <ritu.gupta@r3.com>
Co-authored-by: Chris Rankin <chris.rankin@r3.com>
2021-02-19 13:38:22 +00:00
William Vigor
20dbbf008d
CORDA-4103 Feature Branch: Serialization injection for transaction building (#6867)
* CORDA-4105 Add public API to allow custom serialization schemes (#6848)

* CORDA-4105 Add public API to allow custom serialization schemes

* Fix Detekt

* Suppress warning

* Fix usused import

* Improve API to use generics

This does not break Java support (only Intelij gets confused).

* Add more detailed documentation to public interfaces

* Change internal variable name after rename public API

* Update Public API to use ByteSquence instead of SerializedBytes

* Remove unused import

* Fix whitespace.

* Add added public API to .ci/api-current.txt

* Improve public interfaces

Rename CustomSchemeContext to SerializationSchemeContext to improve
clarity and move to it's own file. Improve kdoc to make things less
confusing.

* Update API current with changed API

* CORDA-4104 Implement custom serialization scheme discovery mechanism (#6854)

* CORDA-4104 Implement CustomSerializationScheme Discovery Mechanism

Discovers a single CustomSerializationScheme implementation inside
the drivers dir using a system property.

* Started MockNetwork test

* Add driver test of Custom Serialization Scheme

* Fix detekt and minor style error

* Respond to review comments

Allow non-single arg constructors (there must be one no args
constructor), move code from SerializationEnviroment into its
own file, improve exceptions to be more user friendly.

* Fix minor bug in Scheme finding code  + improve error messages

* CORDA-4104 Improve test coverage of custom serialization scheme discovery (#6855)

* CORDA-4104 Add test of classloader scanning for CustomSerializationSchemes

* Fix Detekt

* NOTICK Clarify KDOC on SerializationSchemeContext (#6865)

* CORDA-4111 Change Component Group Serialization to use contex when the lazy map is constructed (#6856)

Currently the component group will recheck the thread local (global)
serialization context when component groups are serialized lazily.
Instead store the serialization context when the lazy map is constructed
and use that latter when doing serialization lazily.

* CORDA-4106 Test wire transaction can still be written to the ledger (#6860)

* Add test that writes transaction to the Database

* Improve test check serialization scheme in test body

* CORDA-4119 Minor changes to serialisation injection for transaction building (#6868)

* CORDA-4119 Minor changes to serialisation injection for transaction building

Scan the CorDapp classloader instead of the drivers classloader.
Add properties map to CustomSerialiaztionContext (copied from SerializationContext).
Change API to let a user pass in the serialization context in TransactionBuilder.toLedgerTransaction

* Improve KDOC + fix shawdowing issue in CordaUtils

* Pass only the properties map into theTransactionBuilder.toWireTransaction

Not the entire serializationContext

* Revert change to CordaUtils

* Improve KDOC explain pitfalls of setting properties
2021-02-11 15:27:03 +00:00
Edoardo Ierina
d7c9f20019
CORDA-4100: Updates to DigestAlgorithm interface (#6849)
Updated DigestAlgorithm interface to separate componentHash and computeNonce hashing functions.
2021-02-01 10:52:47 +00:00
Ross Nicoll
62fe4bc65a
NOTICK Publish to correct Docker repository (#6831) 2020-12-03 21:42:57 +00:00
Ross Nicoll
534bccc88d
INFRA-1038 Publish RC/HC builds to internal repo (#6830)
Publish RC/HC builds to internal repo instead of DockerHub.
2020-12-02 16:26:15 +00:00
Ross Nicoll
dce0e581e7
INFRA-1033 Publish RCs to DockerHub (#6829) 2020-11-30 22:30:29 +00:00
Ross Nicoll
d9e3220577
NOTICK Switch published Docker image to official (#6824) 2020-11-26 13:47:35 +00:00
Ross Nicoll
86aa0c4252
INFRA-1009 Remove undefined COMMON_GRADLE_PARAMS (#6819) 2020-11-26 10:31:50 +00:00
Ross Nicoll
a8ae7fdd6a
INFRA-1009 Update Docker publication tasks (#6818) 2020-11-24 17:36:53 +00:00
Waldemar Żurowski
700cb51091
INFRA-965: forward merge from 4.6 2020 11 15 (#6807)
* CORDA-4045 Disable flaky test (#6792)

Disable `Restart does not set senderUUID` as it is unstable.

* INFRA-965: forward merge from 4.5 (2020-11-15) (#6806)

* EG-4168 Updating contributors.md list for OS 4.5 release branch (#6784)

* INFRA-965: forward merge from 4.4 (2020-11-14) (#6805)

* EG-4168 Updating contributors.md list for OS 4.4 release branch (#6785)

* INFRA-965: forward merge from 4.3 (2020-11-13) (#6803)

* INFRA-965: Jenkins/NexusIQ integration should target patches (#6802)

as well as major/minor releases

* Updated nightly builds to match changes for release branch builds

* Updated JDK11 builds to match changes for release branch builds

Co-authored-by: ivanterziev <61829352+ivanterziev-r3@users.noreply.github.com>

* Backporting updates for check-pr-title workflow

Co-authored-by: ivanterziev <61829352+ivanterziev-r3@users.noreply.github.com>

Co-authored-by: Ross Nicoll <ross.nicoll@r3.com>
Co-authored-by: ivanterziev <61829352+ivanterziev-r3@users.noreply.github.com>
2020-11-16 07:18:22 +00:00
Waldemar Żurowski
b421f0daa0
INFRA-965: forward merge from 4.5 (2020-11-15) (#6806)
* EG-4168 Updating contributors.md list for OS 4.5 release branch (#6784)

* INFRA-965: forward merge from 4.4 (2020-11-14) (#6805)

* EG-4168 Updating contributors.md list for OS 4.4 release branch (#6785)

* INFRA-965: forward merge from 4.3 (2020-11-13) (#6803)

* INFRA-965: Jenkins/NexusIQ integration should target patches (#6802)

as well as major/minor releases

* Updated nightly builds to match changes for release branch builds

* Updated JDK11 builds to match changes for release branch builds

Co-authored-by: ivanterziev <61829352+ivanterziev-r3@users.noreply.github.com>

* Backporting updates for check-pr-title workflow

Co-authored-by: ivanterziev <61829352+ivanterziev-r3@users.noreply.github.com>
2020-11-15 20:36:25 +00:00
Waldemar Żurowski
bb8fcfe6be
INFRA-965: forward merge from 4.4 (2020-11-14) (#6805)
* EG-4168 Updating contributors.md list for OS 4.4 release branch (#6785)

* INFRA-965: forward merge from 4.3 (2020-11-13) (#6803)

* INFRA-965: Jenkins/NexusIQ integration should target patches (#6802)

as well as major/minor releases

* Updated nightly builds to match changes for release branch builds

* Updated JDK11 builds to match changes for release branch builds

Co-authored-by: ivanterziev <61829352+ivanterziev-r3@users.noreply.github.com>
2020-11-14 20:56:32 +00:00
Waldemar Żurowski
90238f22a0
INFRA-965: forward merge from 4.3 (2020-11-13) (#6803)
* INFRA-965: Jenkins/NexusIQ integration should target patches (#6802)

as well as major/minor releases

* Updated nightly builds to match changes for release branch builds
2020-11-14 10:18:51 +00:00
Waldemar Żurowski
19274751d9
INFRA-965: Jenkins/NexusIQ integration should target patches (#6802)
as well as major/minor releases
2020-11-13 17:03:33 +00:00
Edoardo Ierina
82a114a329
[DRAFT] feat/CORDA-3823-hash-agility-qa-ready (#6789)
* wip

* wip

* wip (need to review IEE comments)

* wip

* wip

* Small refactoring, fixed network-verifier's TestNotaryFlow

* Added command line option to explicitly enable hash agility support

* wip-do-not-push

* wip

* wip

* wip

* aligned merkletree/transaction hash algorithms

* wip

* Added mixed algorithm support for nodes vs leaves and corrected mixed algorithm tests

* moved global computeNonce and componentHash to DigestService

* added comment for failing test to fix

* wip

* Minor cleanups, added deprecated componentHash/computeNonce

* restored exploratory changes to failing SignedTransaction test

* cleaned up and minor rafactoring

* Fixed some tests with hardcoded hash algorithm

* some changes and cleanups following code review

* WIP commit before large change

* WIP Fixed 3 tests

* WIP removed direct references to randomSHA256() and sha256()

* Updated/added liquibase migrations to support larger hash algorithms

* Reviewed, cleanups, comments, fixes

* removing direct references to sha256()

* WIP verifying obligations test errors

* reviewing obligation/attachment issues with sha3_256

* Full review before PR - intermediate commits

* Reviewed and cleaned up

* Futher cleanup

* Fixed partial tree backward compatible json and cleanups

* all tests passing

* Removed couple of unused imports

* Reworked global componentHash function to avoid deprecated warnings

* replaced SHA3s with some alternate SHA2s

* Removed SHA3-256 and SHA3-512 references

* fixed some tests using non ubiquitous hash algorithms

* Fixed ABI compatibility (not for TransactionBuilder)

* Fixed ABI compatibility to TransactionBuilder

* couple of fixes

* fixed DigestService's randomHash

* Removed constructor with loosely typed args for private constructor of LedgerTransaction class (API removal)

* re-introduced LedgerTransaction deprecated ctor for deserialization

* Add possibility to load CustomMessageDigest bypassing JCA (#6798)

* Change api-current for DigestAlgorithm

* disable flaky tests

Co-authored-by: Denis Rekalov <denis.rekalov@r3.com>
2020-11-05 22:05:29 +00:00
Dan Newton
6b5e76f87a Merge branch 'release/os/4.6' into dan/os-4.6-to-4.7-merge-2020-10-30 2020-10-30 16:08:15 +00:00
Ross Nicoll
d5790a6251
INFRA-826 Add publishing steps (#6780) 2020-10-21 11:58:54 +01:00
Adel El-Beik
e7df5818e4
INFRA-424 CORDA-4058: Disable flaky tests on openj9 (#6774) 2020-10-16 13:03:25 +01:00
Ryan Fowler
ed9f6f0ce1 Merge branch 'release/os/4.6' into rfowler-os-4.6-ent-4.6-20200922 2020-09-22 11:42:00 +01:00
Waldemar Żurowski
b6cd4fa997
NOTICK: Fix JDK11 regression build (#6733)
* Sync JDK11 regression build with JDK8 parallel regression build
2020-09-19 09:08:14 +01:00
Waldemar Zurowski
f27f6e307f Merge branch 'release/os/4.5' into INFRA-683-os-46-linear-builds-parallel-stages 2020-09-18 11:07:10 +02:00
Waldemar Zurowski
a56a93553b Refactoring of regression Jenkins configuration
* removed archiving of Gradle JUnit HTML reports
* collection of JUnit tests moved to stage in parallel branch
2020-09-18 10:57:54 +02:00
Waldemar Zurowski
c90eb8c805 Switching linear regression build on two agents 2020-09-18 08:46:08 +02:00
Waldemar Zurowski
c8216be92c Refactoring of regression Jenkins configuration
* removed archiving of Gradle JUnit HTML reports
* collection of JUnit tests moved to stage in parallel branch
2020-09-18 08:14:26 +02:00
Waldemar Zurowski
1d43471709 Refactoring of regression Jenkins configuration
* removed archiving of Gradle JUnit HTML reports
* collection of JUnit tests moved to stage in parallel branch
2020-09-18 08:09:20 +02:00
Ross Nicoll
2064a572ba
CORDA-4034 ENT-5679 CORDA-3845 Correct instability of linear builds (#6722)
* CORDA-4034 Reduce forkEvery to 15 to attempt to mitigate memory leak.
* ENT-5679 Disable test which triggers OOM
* Run tests on two Jenkins agents
* Fixed processing JUnit test results by Allure
* Add timeouts to VaultObserverExceptionTest
* Revert "CORDA-3845: Update BC, log4j, slf4j (#6699)" to eliminate introduced memory leaks

Co-authored-by: Waldemar Zurowski <waldemar.zurowski@r3.com>
2020-09-18 00:23:16 +01:00
Waldemar Zurowski
6ab9557061 Use safe navigation operator for correct field
when checking the time of previous build.
Handles an edge case when there is the very first build for the branch
2020-09-16 14:54:57 +02:00
Waldemar Zurowski
c387c2cb95 Synchronised changes with OS 4.4 branch 2020-09-16 10:23:11 +02:00
Waldemar Zurowski
bcfbe22d1a Synchronised changes with OS 4.3 branch 2020-09-16 10:22:36 +02:00
Waldemar Zurowski
99841dcaeb Merge branch 'release/os/4.4' into INFRA-683-os-45-linear-builds 2020-09-15 14:27:34 +02:00
Ross Nicoll
bcce0e9519
INFRA-683 Move OS 4.4 release branch builds to linear (#6705)
* Do not use Security.addProvider(BouncyCastleProvider()) in tests, to avoid disruptions of other tests.
* Forcibly register security providers before starting Jimfs, to resolve a sequencing problem where Jimfs triggers loading of the SFTP filesystem provider, which in turn registers the standard BouncyCastle provider rather than the patched version Corda needs.
* INFRA-683 Move Corda OS release branch builds to serial (#6703)

Co-authored-by: Waldemar Zurowski <waldemar.zurowski@r3.com>
Co-authored-by: Denis Rekalov <denis.rekalov@r3.com>
Co-authored-by: Waldemar Zurowski <waldemar.zurowski@r3.com>
2020-09-15 13:18:46 +01:00
Waldemar Żurowski
80bac915ee
INFRA-683: manual sync with enterprise 43 (#6709)
* Add support for handling release candidate for Docker publishing
* Re-enabled Sonatype check
* Artifactory build name includes branch / tag name
* Environment variables sorted alphabetically
2020-09-15 12:10:06 +01:00
Ross Nicoll
b3d9d1291f
INFRA-683 Move Corda OS release branch builds to serial (#6703)
Co-authored-by: Waldemar Zurowski <waldemar.zurowski@r3.com>
2020-09-14 11:29:42 +01:00
Ross Nicoll
0c16957622 Merge remote-tracking branch 'origin/release/os/4.6' into rni/notick/46-47-merge-2020-09-04 2020-09-04 14:15:47 +01:00
Joseph Zuniga-Daly
02b2b35bc4
CORDA-3908: Update corda-4.7 .ci/api-current.txt to match the previous release (corda-4.6) (#6681)
* CORDA-3908: Update corda-4.7 .ci/api-current.txt to match the previous release (corda-4.6)

* Reapply changes from PR 6644

* NodeParameters gained a property in PR 6644

* Remove duplicate class from bad merge
2020-09-03 17:13:44 +01:00
Adel El-Beik
9962c9085d
INFRA-424: Merge openj9 updates into 4.6 (#6683)
* INFRA-424 linux1 jenkinsfile

* INFRA-424 full run

* INFRA-424 bigger heap size

* Upgraded DJVM to handle BC - latest version of BC is a multirelease JAR.
When reading JKS keystore if a BC EdDSAPrivateKey is returned then swap for a net.i2p EdDSA private key.

* Temporary downgrade of BC

* Removed the BC EdDSA conversion

* INFRA-424 bigger heap size

* Upgrading Quasar to handle openJ9 different fields.

* INFRA-424: Handle lack of SUPPRESSED_SENTINEL in openj9.

* INFRA-424: If BCEdDSA public or private key is generated convert to net.i2p EdDSA form.

* INFRA-424 bigger heap size

* INFRA-424: On openJ9 only getting upto milli resolution.

* INFRA-424: Handle keystore returning a BCEdDSAPrivateKey.

* INFRA-424: Disable test on JDK11, as it requires the custom cordapp to generate JDK8 contract code, which we now check for.

* INFRA-424: Truncated time test to resolution of millis for openj9.

* INFRA-424 disabling log intensive tests until a fix is developed

* INFRA-424 one more test disabled

* INFRA-424: Disabled a couple of tests failing on openj9.

* INFRA-424: Disabling failing openj9 tests.

* INFRA-424: Disabling test failing on openj9.

* INFRA-424: Ignoring another flaky sleep test on openj9.

* INFRA-424 run integrationTests

* INFRA-424 set timeout to 4 hours

* INFRA-424: Cope with exception message from openj9.

* INFRA-424: Handle the coloured text characters openj9 adds.

* INFRA-424: Disabling test as it is generating JDK11 contract code under JDK11. Currently on JDK8 contract code allowed.

* INFRA-424: Commenting test out for openj9. Output of the processs thats read by the test is sometimes garbled.

* INFRA-424 switching to smoke tests

* INFRA-424 switching to slow integration tests

* INFRA-424 full run

* INFRA-424 moving jenkinsfile

* INFRA-424 removing references

* INFRA-424: Created common IS_OPENJ9 func for ignoring tests.

Co-authored-by: Schife <razvan.codreanu@r3.com>
2020-09-02 14:35:30 +01:00
Joseph Zuniga-Daly
3890064095
CORDA-3908: Update corda-4.6 .ci/api-current.txt to match the previous release (corda-4.5) (#6504)
* CORDA-3908: Update corda-4.6 .ci/api-current.txt to match the previous release (corda-4.5)

* Reapply changes from PR 6392

* Apply change introduced by PR #6326

* Apply change introduced by PR #6280
2020-08-26 17:41:18 +01:00
Joseph Zuniga-Daly
8fd4fd1bf8 Merge OS 4.6 into OS 4.7 2020-08-26 11:09:02 +01:00
Joseph Zuniga-Daly
df7e3ca184
CORDA-3908: Update corda-4.5 .ci/api-current.txt to match the previous release (corda-4.4) (#6648)
* CORDA-3908: Update corda-4.5 .ci/api-current.txt to match the previous release (corda-4.4)

* Reapply changes from PR 5998
https://github.com/corda/corda/pull/5998
2020-08-24 14:32:10 +01:00
Razvan Codreanu
b2cb0cc51a
INFRA-608 Split out regression test stage (#6619)
Split out regression test stage to reduce fragility
2020-08-21 11:18:54 +01:00
Viktor Kolomeyko
9fc896beb3
CORDA-3960: Port MultiRPCClient to OS (#6644)
* CORDA-3960: Port MultiRPCClient to OS

* CORDA-3960: Carefully restore serialisation environment in `MultiRpcClientTest` to eliminate side effects on other tests

* CORDA-3960: Move ThreadDumpUtils.kt to `core-utils`
2020-08-18 10:35:19 +01:00
Waldemar Zurowski
affd9ebad6 Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-08-07 2020-08-07 12:24:13 +02:00
Waldemar Zurowski
8e368a2b76 Synched JDK11 Azul builds configuration with regression build
* carries over INFRA-541 and INFRA-542
2020-08-07 11:44:14 +02:00
Waldemar Zurowski
805e9e9f9f NOTICK: Merging forward updates from OS 4.4 to OS 4.5 2020-08-07 06:16:53 +02:00
Waldemar Zurowski
56b574c66e Fixed missing elements 2020-08-07 06:07:29 +02:00
Waldemar Żurowski
e524f41738
INFRA-542: Allow change of the default Nexus IQ stage parameter (#6586)
* adds a parameter to a build
* default value of the parameter is the same as original stage parameter
2020-08-06 20:20:19 +01:00
Waldemar Żurowski
d19c6dddaf
INFRA-541: Remove obsolete jenkins prefix from Nexus AppID (#6585) 2020-08-06 20:17:15 +01:00
Joseph Zuniga-Daly
dbfea9015d
CORDA-3908: Update corda-4.4 .ci/api-current.txt to match the previous release (corda-4.3) (#6502)
* CORDA-3908: Update .ci/api-current.txt to match the previous release (corda-4.3)

* Reapply changes from PR 5633
https://github.com/corda/corda/pull/5633

* Reapply changes from PR 5711
https://github.com/corda/corda/pull/5711

* Reapply changes from PR 5800
https://github.com/corda/corda/pull/5800

* Reapply changes from PR 5846
https://github.com/corda/corda/pull/5846

* Reapply changes from PR 5833
https://github.com/corda/corda/pull/5833

* Swap order of implemented interfaces - No API change

* Add missing change from PR 5711

* A new parameter was added to MaxRpcRetryException in PR 5869

* LedgerTransaction gained 5 new parameters in PR 5633
2020-08-04 17:09:05 +01:00
Jonathan Locke
530c5eadf8
INFRA-549: Commented out Sonatype checks during regression builds for now. (#6528)
Commented out Sonatype checks during regression builds for now.
2020-07-30 11:27:45 +01:00
Waldemar Zurowski
02990b9dc0 Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-30 2020-07-30 05:37:46 +01:00
Waldemar Żurowski
a81e871356
NOTICK: Reverted use of Artifactory cache mechanism (#6526) 2020-07-30 05:25:01 +01:00
Waldemar Zurowski
e95ff388da Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-28 2020-07-28 14:14:43 +01:00
Waldemar Zurowski
7f94f6cb39 Added missing buildDiscarder to docs API publisher Jenkins configuration
* updated regex for recognised tag to match JenkinsUI configuration
2020-07-28 09:36:11 +01:00
Ross Nicoll
13073c300f
NOTICK: OS 4.3 to OS 4.4 merge (#6506)
* CORDA-3917 Update to Jackson 2.9.8 (#6493)

* Update to Jackson 2.9.8 to address multiple security issues, and update warning note about
updates to clarify that it refers to 2.10+. When the note was added 2.9.7 as the highest
available version in the 2.9.x series.
* Add PR code checks Jenkinsfile

* CORDA-3916 Update to BouncyCastle 1.61 (#6492)

Update to BouncyCastle 1.61. Updating one version at a time to mitigate risk of a complex breaking change being introduced.

* Added missing collection of JUnit tests and logs

Co-authored-by: Waldemar Zurowski <waldemar.zurowski@r3.com>
2020-07-23 16:59:42 +01:00
Waldemar Zurowski
0b1ccb48d0 Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-23 2020-07-23 11:31:43 +01:00
Waldemar Zurowski
2e6bd97fe9 Updates
* INFRA-508: NexusIQ stage for GA releases updated to `release`
* do not truncate stdio when collecting JUnit tests
2020-07-23 10:46:32 +01:00
Waldemar Zurowski
49c86af354 Merge branch 'release/os/4.4' into wz/merge-os-44-45-2020-07-23 2020-07-23 10:39:12 +01:00
Waldemar Żurowski
14279a30cc
INFRA-508: NexusIQ stage for GA releases updated to release (#6508) 2020-07-23 10:36:48 +01:00
Waldemar Zurowski
4e0ebefbcc Merge branch 'release/os/4.5' into release/os/4.6 2020-07-22 19:56:07 +01:00
Waldemar Zurowski
136743ae61 Merge branch 'release/os/4.4' into release/os/4.5 2020-07-22 19:55:12 +01:00
Waldemar Zurowski
f60f06a85f INFRA-508: Change appID in sonatype stage for Corda and Corda Enterprise 2020-07-22 19:54:41 +01:00
Waldemar Zurowski
4d03bcb7ed Merge branch 'release/os/4.4' into release/os/4.5 2020-07-22 19:44:21 +01:00
Waldemar Zurowski
0842ea26b7 NOTICK: Backport Jenkins configuration for nightly builds to release 4.4 2020-07-22 19:43:08 +01:00
Waldemar Zurowski
b1571cc241 Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-22 2020-07-22 19:35:49 +01:00
Joseph Zuniga-Daly
c33720c73d
CORDA-3717: Apply custom serializers to checkpoints (#6392)
* CORDA-3717: Apply custom serializers to checkpoints

* Remove try/catch to fix TooGenericExceptionCaught detekt rule

* Rename exception

* Extract method

* Put calls to the userSerializer on their own lines to improve readability

* Remove unused constructors from exception

* Remove unused proxyType field

* Give field a descriptive name

* Explain why we are looking for two type parameters when we only use one

* Tidy up the fetching of types

* Use 0 seconds when forcing a flow checkpoint inside test

* Add test to check references are restored correctly

* Add CheckpointCustomSerializer interface

* Wire up the new CheckpointCustomSerializer interface

* Use kryo default for abstract classes

* Remove unused imports

* Remove need for external library in tests

* Make file match original to remove from diff

* Remove maySkipCheckpoint from calls to sleep

* Add newline to end of file

* Test custom serializers mapped to interfaces

* Test serializer configured with abstract class

* Move test into its own package

* Rename test

* Move flows and serializers into their own source file

* Move broken map into its own source file

* Delete comment now source file is simpler

* Rename class to have a shorter name

* Add tests that run the checkpoint serializer directly

* Check serialization of final classes

* Register as default unless the target class is final

* Test PublicKey serializer has not been overridden

* Add a broken serializer for EdDSAPublicKey to make test more robust

* Split serializer registration into default and non-default registrations. Run registrations at the right time to preserve Cordas own custom serializers.

* Check for duplicate custom checkpoint serializers

* Add doc comments

* Add doc comments to CustomSerializerCheckpointAdaptor

* Add test to check duplicate serializers are logged

* Do not log the duplicate serializer warning when the duplicate is the same class

* Update doc comment for CheckpointCustomSerializer

* Sort serializers by classname so we are not registering in an unknown or random order

* Add test to serialize a class that references itself

* Store custom serializer type in the Kryo stream so we can spot when a different serializer is being used to deserialize

* Testing has shown that registering custom serializers as default is more robust when adding new cordapps

* Remove new line character

* Remove unused imports

* Add interface net.corda.core.serialization.CheckpointCustomSerializer to api-current.txt

* Remove comment

* Update comment on exception

* Make CustomSerializerCheckpointAdaptor internal

* Revert "Add interface net.corda.core.serialization.CheckpointCustomSerializer to api-current.txt"

This reverts commit b835de79bd.

* Restore "Add interface net.corda.core.serialization.CheckpointCustomSerializer to api-current.txt""

This reverts commit 718873a4e9.

* Pass the class loader instead of the context

* Do less work in test setup

* Make the serialization context unique for CustomCheckpointSerializerTest so we get a new Kryo pool for the test

* Rebuild the Kryo pool for the given context when we change custom serializers

* Rebuild all Kryo pools on serializer change to keep serializer list consistent

* Move the custom serializer list into CheckpointSerializationContext to reduce scope from global to a serialization context

* Remove unused imports

* Make the new checkpointCustomSerializers property default to the empty list

* Delegate implementation using kotlin language feature
2020-07-22 17:31:59 +01:00
Waldemar Żurowski
d810067ab6
NOTICK: Fixed for JDK11 builds (#6501)
* NexusIQ every build related to Corda X.Y (GA, RC, HC, patch or
  snapshot) uses the same NexusIQ application
* NexusIQ application application has to exist before a build starts
* Fixed repository name for publishing, use OS instead of Ent one
2020-07-22 14:43:14 +01:00
Waldemar Zurowski
8ee070953a Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-22 2020-07-22 13:00:42 +01:00
Waldemar Zurowski
6413873f68 Merge branch 'release/os/4.4' into wz/merge-os-44-45-2020-07-22 2020-07-22 12:57:45 +01:00
Waldemar Żurowski
05532c0419
NexusIQ updates (#6499)
* every build related to Corda X.Y (GA, RC, HC, patch or snapshot) uses
  the same NexusIQ application
* NexusIQ application application *has* to exist before a build starts
2020-07-22 12:41:22 +01:00
Waldemar Żurowski
ca37b9b737
PR Code Checks use standard Jenkins agent (#6496) 2020-07-22 09:26:39 +01:00
Ross Nicoll
cd4626d8c2
CORDA-3917 Update to Jackson 2.9.8 (#6493)
* Update to Jackson 2.9.8 to address multiple security issues, and update warning note about
updates to clarify that it refers to 2.10+. When the note was added 2.9.7 as the highest
available version in the 2.9.x series.
* Add PR code checks Jenkinsfile
2020-07-22 09:08:49 +01:00
Waldemar Zurowski
a90197ed81 Merge branch 'release/os/4.5' into wz/merge-45-46-2020-07-21 2020-07-21 15:59:07 +01:00
Waldemar Zurowski
5ee2626530 Empty JUnit results are not allowed 2020-07-21 15:55:56 +01:00
Waldemar Zurowski
35d0d5c510 Merge branch 'release/os/4.4' into wz/merge-44-45-2020-07-21 2020-07-21 15:53:59 +01:00
Waldemar Zurowski
7437630d56 Empty JUnit results are not allowed 2020-07-21 15:50:21 +01:00
Waldemar Zurowski
969ee34b0a Merge branch 'release/os/4.3' into wz/merge-43-44-2020-07-21 2020-07-21 15:47:01 +01:00
Waldemar Żurowski
50c51d3e6f
Empty JUnit results are not allowed (#6488) 2020-07-21 15:42:57 +01:00
Viktor Kolomeyko
3e9a8cdfcd Merge remote-tracking branch 'origin/release/os/4.5' into vkolomeyko/os-4.5-os-4.6-merge 2020-07-20 15:16:33 +01:00
Viktor Kolomeyko
4491abd7ba Merge remote-tracking branch 'origin/release/os/4.4' into vkolomeyko/os-4.4-os-4.5-merge 2020-07-20 11:51:08 +01:00
Waldemar Żurowski
309d2ec69f
INFRA-330 Use Artifactory as cache for all dependencies (#6253)
* Use a virtual repo (corda-remotes) containing all Corda repositories with dependencies
* activated when CORDA_USE_CACHE environment variable is set
* Update Jenkins configuration to use new functionality
* it does *not* affect local builds as long as environment variable is not set!
2020-07-17 09:39:45 +01:00
Razvan Codreanu
9b77f9a170
INFRA-435 Don't publish internal releases to Docker (#6475) 2020-07-16 16:46:10 +01:00
Euan Cairncross
1660e7674b
INFRA-270 Publish archived API docs to Artifactory when tagged (#6309)
* Reintroduce `build.gradle` from 4.4
* Add Jenkins publication logic

Co-authored-by: Waldemar Zurowski <waldemar.zurowski@r3.com>
Co-authored-by: Ross Nicoll <ross.nicoll@r3.com>
2020-07-16 10:46:42 +01:00
Waldemar Zurowski
36d70a6d9b Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-15 2020-07-15 21:36:49 +01:00
Waldemar Zurowski
44b5fd1678 Merge branch 'release/os/4.4' into wz/merge-os-44-45-2020-07-15 2020-07-15 21:35:07 +01:00
Waldemar Zurowski
b58609daba Correct name of Artifactory repository for publishing releases 2020-07-15 21:33:49 +01:00
Waldemar Zurowski
c8ca7cc579 Merge branch 'release/os/4.4' into wz/merge-45-46-2020-07-15 2020-07-15 12:12:29 +01:00
Waldemar Zurowski
f3d8d0d57d Merge branch 'release/os/4.4' into wz/merge-44-45-2020-07-15 2020-07-15 10:24:45 +01:00
Waldemar Żurowski
ef9934ed4e
Added build discarder settings back (#6465)
builds are expired only after 14 days
2020-07-15 10:17:58 +01:00
Waldemar Żurowski
75bade2f92
Added NexusIQ scan to nightly snapshot build (#6461)
* also build on standard agent, no K8S requirements
2020-07-15 07:46:26 +01:00
LankyDan
fdae04fc28 Merge branch 'release/os/4.5' into dan/os-4.5-to-4.6-merge-2020-07-08 2020-07-08 10:44:47 +01:00
LankyDan
c06830d851 Merge branch 'release/os/4.4' into dan/os-4.4-to-4.5-merge-2020-07-01
# Conflicts:
#	core/src/main/kotlin/net/corda/core/node/ServiceHub.kt
#	node/src/integration-test-slow/kotlin/net/corda/node/services/statemachine/StatemachineGeneralErrorHandlingTest.kt
#	node/src/integration-test-slow/kotlin/net/corda/node/services/statemachine/StatemachineKillFlowErrorHandlingTest.kt
#	node/src/integration-test/kotlin/net/corda/node/flows/FlowEntityManagerTest.kt
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/services/statemachine/TransitionExecutorImpl.kt
#	node/src/main/kotlin/net/corda/node/services/statemachine/interceptors/HospitalisingInterceptor.kt
2020-07-01 17:32:36 +01:00
Razvan Codreanu
33cfa27f0b
INFRA-357 adding nexusIQ stage to JDK 11 regression job (#6421) 2020-06-30 20:13:58 +01:00
Razvan Codreanu
bf4d733336
INFRA-371 publish nightly and publish tag to docker hub steps (#6399) 2020-06-30 20:12:27 +01:00
Denis Rekalov
e75dc9e415 Merge branch 'release/os/4.5' into denis/CORDA-3856-amqp-header-os-4.6 2020-06-29 13:13:48 +01:00
Denis Rekalov
7686ca2944 Merge branch 'release/os/4.4' into denis/CORDA-3856-amqp-header-os-4.5 2020-06-29 12:35:05 +01:00
Ryan Fowler
31a1ee8803 Merge branch 'release/os/4.5' into NOTICK-rfowler-merge-OS4.5-OS4.6-20200626 2020-06-26 12:14:56 +01:00
Waldemar Żurowski
b21a3c33cd
Added Sonatype check for regression builds (#6401) 2020-06-26 10:48:47 +01:00
Ryan Fowler
881d8d687c Merge branch 'release/os/4.4' into NOTICK-rfowler-merge-OS4.4-OS4.5-20200626 2020-06-26 09:52:16 +01:00
Waldemar Zurowski
3377df2212 Switched to CMD for Windows Server
* when using shell there are huge performance penalty
2020-06-20 17:26:57 +01:00
Waldemar Żurowski
1a7e302d5f
Merge pull request #6385 from corda/release/os/4.5
NOTICK Merge OS 4.5 -> OS 4.6
2020-06-20 16:44:14 +01:00
Schife
84583d2a1c INFRA-357 Re adding JDK 11 regression build file that was removed in the 4.4 to 4.5 merge 2020-06-20 11:25:20 +01:00
Schife
6a12cf34ad Merge branch 'release/os/4.4' of https://github.com/corda/corda into INFRA-357
 Conflicts:
	testing/DockerfileJDK11Azul
2020-06-20 11:22:30 +01:00
Razvan Codreanu
e021022d0d
INFRA-357 Publish build tag (#6375) 2020-06-20 11:08:52 +01:00
Waldemar Zurowski
a7644dab8b Cosmetic change for Windows Server builds 2020-06-19 22:09:02 +01:00
Waldemar Żurowski
ac0e35c854
Trying to ignore push events for Windows Server builds (#6383) 2020-06-19 22:03:09 +01:00
Waldemar Zurowski
1a4efbac7f Merge branch 'release/os/4.5' into merge-45-to-46 2020-06-19 19:48:08 +01:00
Waldemar Zurowski
f1fcce4247 Merge branch 'release/os/4.4' into merge-44-to-45 2020-06-19 19:42:19 +01:00
Waldemar Zurowski
f7b38f0b6d Merge branch 'release/os/4.3' into merge-43-to-44 2020-06-19 19:32:55 +01:00
Waldemar Żurowski
23f81e73a6
Remove obsolete Jenkins configration for smoke tests (#6379) 2020-06-19 19:30:11 +01:00
Razvan Codreanu
618f7211bb
NOTICK fix regression jenkinsfile typo (#6376) 2020-06-19 18:25:08 +01:00
Razvan Codreanu
ad21e381dc
INFRA-357 Adding JDK 11 Regression and Build tag jenkinsfile (#6374) 2020-06-19 14:10:31 +01:00
Waldemar Zurowski
68771cf430 Merge branch 'release/os/4.4' into merge-44-45 2020-06-19 11:02:34 +01:00
Euan Cairncross
4bfb595e57
INFRA-357 - Add release tag Jenkins build for OS 4.4 (#6362) 2020-06-18 23:46:29 +01:00
Waldemar Żurowski
494073590b
INFRA-347: Corda builds for Windows Servers (#6356) 2020-06-18 23:19:06 +01:00
Razvan Codreanu
813e9dd242
INFRA-394 enable full junit log to avoid truncation (#6368) 2020-06-18 12:52:33 +01:00
Schife
c47c586955 Merge branches 'release/os/4.5' and 'release/os/4.6' of https://github.com/corda/corda into raz/os45to46
 Conflicts:
	Jenkinsfile
2020-06-12 17:28:40 +01:00
Schife
b39aaacd3a Merge branch 'release/os/4.4' of https://github.com/corda/corda into raz/os44to45 2020-06-12 15:35:33 +01:00
Razvan Codreanu
2b7c220522
INFRA-387 preallocation and deployNodes migration to Code Checks (#6339)
* preallocate for slow integration tests as well
2020-06-12 15:30:15 +01:00
Ramzi El-Yafi
b43b34a94b Merge remote-tracking branch 'origin/release/os/4.5' into ramzi/45-46-merge 2020-06-08 09:37:50 +01:00
Ramzi El-Yafi
40a29869c2 Merge remote-tracking branch 'origin/release/os/4.4' into ramzi/44-45-merge 2020-06-05 15:27:34 +01:00
Razvan Codreanu
cf8cd8e004
INFRA-348 JDK 11 Compatibility job migration (#6311) 2020-06-05 15:20:03 +01:00
Schife
5f6f36712f INFRA-381 correctly merged jenkinsfile 2020-06-05 07:56:37 +01:00
Schife
fb184839f4 Merge branch 'release/os/4.5' of https://github.com/corda/corda into razvan-os-4.5-to-4.6-merge 2020-06-05 07:55:48 +01:00
Razvan Codreanu
f27240b1ad
INFRA-381 Removing sonarqube (#6312) 2020-06-04 15:06:36 +01:00
Ramzi El-Yafi
6ab6099075
[INFRA-368] Add deployNodes and install gradle tasks (#6302) 2020-06-03 14:05:12 +01:00
Ramzi El-Yafi
a9b8751ce7
[INFRA-351] Jenkinsfile for code check jobs (#6294) 2020-05-29 13:08:00 +01:00
Ramzi El-Yafi
ef3270e32c
[INFRA-352] Artifactory publication in Jenkins (#6276) (#6290)
* [INFRA-352] Artifactory publication in Jenkins

* Address review comments
2020-05-28 22:34:37 +01:00
Chris Rankin
6e156bc0ea Merge commit '6ebc6e9b16575a7afbb781b0d93a8f04b3affba5' into chrisr3-45-merge 2020-05-27 10:40:36 +01:00
Ramzi El-Yafi
4ed57506c8
[INFRA-352] Artifactory publication in Jenkins (#6276)
* [INFRA-352] Artifactory publication in Jenkins

* Address review comments
2020-05-26 15:26:55 +01:00
Ramzi El-Yafi
e34930f9a8
[INFRA-351] Jenkinsfile for code check jobs (#6272) 2020-05-20 22:07:04 +01:00
Razvan Codreanu
5d481523bf
INFRA-350 add suffix to the jdk 11 image to avoid overwrite (#6269) 2020-05-19 18:47:54 +01:00
Ramzi El-Yafi
d65568db86
[NOTICK] Remove obsolete on-demand smoke test Jenkins configuration (#6265) 2020-05-19 18:46:23 +01:00
Razvan Codreanu
ed9b0ff228
INFRA-350 add suffix to the jdk 11 image to avoid overwrite (#6268) 2020-05-19 18:33:54 +01:00
Waldemar Żurowski
5db44790d7
disableConcurrentBuilds 2020-05-13 17:10:46 +01:00
Stefano Franz
4edf618442 remove throttling 2020-05-13 16:39:55 +01:00
Razvan Codreanu
7309949abf
INFRA-311 new jdk11 jenkinsfile (#6194) 2020-04-30 09:59:35 +01:00
Razvan Codreanu
f4c1119727
INFRA-284 switching from local k8s label (#6156) 2020-04-17 15:53:10 +01:00
Razvan Codreanu
4210c0d81f
INFRA-284 switching from local k8s label (#6157) 2020-04-17 15:52:47 +01:00
Razvan Codreanu
e5d554571f
INFRA-284 switching label (#6153) 2020-04-17 00:01:55 +01:00
Adel El-Beik
27ea570fbb
CORDA-3696: JDK 11 Testing branch (#6131)
* CORDA-3696: Temporary update to enable JDK11 build and test. Will eventually be switchable.

* CORDA-3696: Filter out the Nashorn warning.

* CORDA-3696: Add JDK11 classifier.

* CORDA-3696: Updated match string to cope with JDK11.

* CORDA-3696: Filtering out SPHINCS256_SHA256 where failing due to JDK11.

* CORDA-3696: Now remove SPHINCS256_SHA256 only if JDK11.

* CORDA-3696: Fix test failure - switch to regex matching.

* CORDA-3696: Hide the illegal access warnings.

* CORDA-3696: Check for Java11 when disabling Java11 warnings.

* CORDA-3696: Fix unneccessary non null check.

* CORDA-3696: Reverting build env to JDK8

* CORDA-3696: Revert hiding of illegal access warnings via Unsafe class.

* CORDA-3696: Remove internal access warnings and new JDK11 version checker.

* CORDA-3696: Updated build file for OS

* CORDA-3696: Removed typo

* CORDA-3696: Fixed space typo.

* CORDA-3696: Open modules to remove the illegal access warnings.

Co-authored-by: Adel El-Beik <adelel-beik@19LDN-MAC108.local>
2020-04-16 10:20:30 +01:00
Razvan Codreanu
2ad996c0bd
INFRA-284 Testing out new aks template (#6150)
* INFRA-284 Testing out new aks template
* INFRA-284 switching back to k8s on all files
2020-04-16 07:56:39 +01:00
Dimitris Gounaris
3dc60aa83f
Make sonarqube step resilient to errors (#6128)
Co-authored-by: Dimitris Gounaris <dimitrisgounaris@20LDN-MAC257.local>
2020-04-03 15:14:03 +01:00
Dimitris Gounaris
76cf4e6e66
TM-213: Add sonarqube configuration in gradle and jenkinsfile (#6060)
* Add sonarqube for regression builds

* Remove duplicated script tag

* Add detekt support to sonarqube

Co-authored-by: Dimitris Gounaris <dimitrisgounaris@20LDN-MAC257.local>
2020-04-01 11:03:01 +01:00
Chris Rankin
ffa2caed32 Merge branch 'release/os/4.4' into chrisr3-44-merge 2020-03-04 16:27:44 +00:00
Christian Sailer
e38cd9ec63
ENT-5043 separate out test utils (#5998)
* Remove unused dependencies from test-common

* Explicit imports and formatting

* Add core-test-utils project

* Add dependency

* Move Kryo serialization context to node-api (not serialization as we do not want to pull kryo into the serialization lib)

* Move AMQP server serialization scheme to node api

* Move serialization tests to node-api

* Move internal test helpers without further dependencies.

* Move out some types from RPCClientProxyHandler to node-api in preparation for moving the AMQP scheme

* Move client AMQP context to node-api so we can move the test serialization rule out.

* Move InternalSerializationTestHelpers to core-test-utils

* Moved testing.core to core-test-utils

* Make detekt happy

* Add api-scanner to core-test-utils

* Remove inlined package names introduced by IntelliJ refactoring

* Update api-current.txt to account for reordering.

* Add core-test-utils to list of published artifacts.

* Add missing import

* Location of things in api text has moved again (publish name of artefact?)

* Revert all additions to the API, leaving just the reordering

* Code review: fix up core-test-utils build.gradle and introduce kryo version constant.

* Remove OpenSsl flag from ssl config stub (can't be used from node-api)

* Suppress detekt warning

* Move core test util tests to the right module

* Expose kotlin test as a transient dependency - projects have come to rely on that.

* Fix typo in package name
2020-03-03 15:55:17 +00:00
Razvan Codreanu
bd197b5229
TM-204 Modifying regression builds to prevent bad dependency graphs (#6013)
* TM-204 attempting to fix regression builds

* TM-204 attempting to fix regression builds

* TM-204 reverting spring boot version and only removing missing dependency

* TM-204 reverting to original build.gradle

* TM-204 re applying dependency

* TM-204 consolidating dependencies

* TM-204 setting spring boot dependency

* TM-204 reverting and upgrading dependency management plugin version in parent gradle file

* TM-204 apply dependency plugin differently

* TM-204 new gradle files

* TM-204 try and fix corda rpc evaluation

* TM-204 try and fix corda rpc evaluation

* TM-204 separate slow integration and smoke test

* TM-204 modifying regression builds to separate slow integration tests and smoke tests as they sometimes result in a bad gradle dependency graph

* TM-204 separating slow integration tests from the rest

* TM-204 change to allow ci03 to run this jenkinsfile

* TM-204 switching to aks label to allow testing on ci03

* TM-204 now that test was successful, switching back to correct prod label
2020-03-03 11:16:37 +00:00
Razvan Codreanu
30167fd2e8
TM-204 Fixing regression builds (#6009)
* TM-204 attempting to fix regression builds

* TM-204 attempting to fix regression builds

* TM-204 reverting spring boot version and only removing missing dependency

* TM-204 reverting to original build.gradle

* TM-204 re applying dependency

* TM-204 consolidating dependencies

* TM-204 setting spring boot dependency

* TM-204 reverting and upgrading dependency management plugin version in parent gradle file

* TM-204 apply dependency plugin differently

* TM-204 new gradle files

* TM-204 try and fix corda rpc evaluation

* TM-204 try and fix corda rpc evaluation

* TM-204 separate slow integration and smoke test
2020-03-02 14:50:01 +00:00
Razvan Codreanu
c6ab07d92c
TM-197 Fix failing test caused by regression and ignoring flaky DistributedServiceTests (#5934)
* TM-197 Setting bouncy castle provider in order for the test to pass

* TM-197 setting timeout for all builds at 3 hours

* TM-197 ignoring unstable tests
2020-02-12 14:26:06 +00:00
Razvan Codreanu
42eca48a02
TM-197 Build stability changes (#5947)
* TM-197 switching 4.3 to use local k8s instances and also make the maximum duration of builds 3 hours, fix 1 test and ignore 2 flaky ones

* update to use local-k8s version of the plugin

Co-authored-by: Stefano Franz <roastario@gmail.com>
2020-02-12 13:58:30 +00:00
Stefano Franz
b23af5f0d2
add timeouts to all tests (#5875) 2020-02-11 10:14:05 +00:00
Stefano Franz
1d0918cdde
NOTICK - Speed up regression tests (#5918)
* speed up regression tests

* move to local-k8s for all Jenkins builds
2020-01-31 16:47:24 +00:00
Stefano Franz
d95c3e2b8b Use a local instance of k8s instead of remote cluster for parallel testing (#5897)
* switch to new version of plugin

* change plugin version to force refresh

* try using pre-populated cache

* do not preallocate

* no daemon

* reduce cores per fork to increase parallelism

* even more aggresive cpu allocation
2020-01-27 14:58:21 +00:00
Ramzi El-Yafi
ac8a4fc08c TM-170 Generic on-demand-test configuration (#5863)
* Generic on-demand test configuration

* Rename library "magic" string from existing-build-control to
corda-shared-build-pipeline-steps
2020-01-24 11:26:52 +00:00
Ramzi El-Yafi
fe52a415fb Manual fix of mergr for PR-5797 (#5856) 2020-01-24 11:26:52 +00:00
Ramzi El-Yafi
2809c0484d TM-137 Daily email report for release branch regression tests (#5797)
* Daily email report for release branch regression tests

* Manual merge fix
2020-01-24 11:26:52 +00:00
Ramzi El-Yafi
9ae60a934c Strategic fix for allure report generation memory issues (#5845) 2020-01-24 11:26:52 +00:00
Ramzi El-Yafi
ffe75db464 TM-170 Generic on-demand-test configuration (#5863)
* Generic on-demand test configuration

* Rename library "magic" string from existing-build-control to
corda-shared-build-pipeline-steps
2020-01-24 10:39:23 +00:00
Dan Newton
4bae045a58 ENT-4601 Public API to run external operations from a flow (#5833)
Deprecate FlowAsyncOperation and reimplement public versions FlowExternalOperation and FlowExternalAsyncOperation.

await added to FlowLogic to allow easy calling from both Java and Kotlin. There are two overrides of await (one for FlowExternalOperation and FlowExternalAsyncOperation).

Implementations of FlowExternalOperation return a result (written as blocking code) from their execute function. This operation will then be executed using a thread provided by the externalOperationExecutor.

Implementations of FlowExternalAsyncOperation return a future from their execute function. This operation must be executed on a newly spawned thread or one provided by a thread pool. It is up to developers to handle threading in this scenario.

The default thread pool (externalOperationExecutor) can be configured through the flowExternalOperationThreadPoolSize node config.

The current implementation leaves FlowAsyncOperation alone, meaning that any developers that have used it (even though it is internal) won't need to change their apps. If this was not concern I would delete it completely and replumb the state machine code. Instead, it has been marked with @DoNotImplement and executeAsync is annotated with @Deprecated
2020-01-22 09:27:17 +00:00
Viktor Kolomeyko
0978500a9a CORDA-2942: Node lifecycle events (#5846)
* CORDA-2942: Port minimal set of changes to make lifecycle events work

... and make codebase compile.

* CORDA-2942: Undo some changes which are not strictly speaking necessary

* CORDA-2942: Make `NodeServicesContext` leaner and delete `extensions-api` module

* CORDA-2942: Reduce even more number of files affected

* CORDA-2942: Integration test fix

* CORDA-2942: Make events `AfterStart` and `BeforeStop` generic w.r.t. `NodeServicesContext`

* CORDA-2942: `NodeLifecycleObserverService` and a set of integration tests.

Public API violations are expected as well as integration tests failing.

* CORDA-2942: Re-work to introduce `ServiceLifecycleObserver`

* CORDA-2942: Explicitly mention a type of exception that may be thrown for some events.

* CORDA-2942: Register `ServiceLifecycleObserver` through `AppServiceHub`

* CORDA-2942: Fix integration test + KDocs update

* CORDA-2942: Detekt and `api-current` update

* CORDA-2942: Improvement to `CordaServiceLifecycleFatalTests`

... or else it has side effects on other tests.

* CORDA-2942: Add an integration test for new API use in Java

Driver test is written in Kotlin, but services definition is written in Java.

Also KDocs improvements.

* CORDA-2942: Documentation and release notes update

* CORDA-2942: First set of changes following review by @mnesbit

* CORDA-2942: Second set of changes following review by @mnesbit

* CORDA-2942: Added multi-threaded test

* CORDA-2942: Fixes

* CORDA-2942: Undo changes to `api-current.txt`

* CORDA-2942: Bare mimimum change to `api-current.txt` for CI gate to pass.

* CORDA-2942: Address review feedback from @rick-r3

* CORDA-2942: Detekt update

* CORDA-2942: Delete `ServiceLifecycleObserverPriority` and replace it with `Int` after discussion with @mnesbit

* CORDA-2942: Introduce more `NodeLifecycleEvent` and switch services to listen for those events

* CORDA-2942: Few more changes after input from @rick-r3

* First stub on integration test
Unfinished - hang on issue and pay

* CORDA-2942: Switch to use out-of-process nodes for the inetgration test

Currently Alice and Notary stuck waiting to hear from each other.

* CORDA-2942: Extra log lines during event distribution

* CORDA-2942: Asynchronously distribute lifecycle events

* CORDA-2942: Await for complete P2P client start-up

Next step: Add vault query to integration test

* CORDA-2942: Asynchronously distribute lifecycle events

Next step: Improve integration test

* CORDA-2942: Fix test broken by recent changes and improve logging

* CORDA-2942: Improvement of the test to be able to monitor actions performed by @CordaService in the remote process

* CORDA-2942: Add node re-start step to the integration test

* CORDA-2942: Remove `CORDAPP_STOPPED` event for now

* CORDA-2942: s/CORDAPP_STARTED/STATE_MACHINE_STARTED/

* CORDA-2942: Inverse the meaning of `priority` as requested by @rick-r3

* CORDA-2942: Register `AppServiceHubImpl` for lifecycle events and put a warning when SMM is not ready.
2020-01-21 13:38:02 +00:00
Ramzi El-Yafi
b195e4f703 Manual fix of mergr for PR-5797 (#5856) 2020-01-16 11:55:01 +00:00
Ramzi El-Yafi
86347abe79 TM-137 Daily email report for release branch regression tests (#5797)
* Daily email report for release branch regression tests

* Manual merge fix
2020-01-14 11:52:04 +00:00
Ramzi El-Yafi
38fb51b74b Strategic fix for allure report generation memory issues (#5845) 2020-01-14 11:10:42 +00:00
Ramzi El-Yafi
edd1205db1 OS 4.3 -> OS 4.4 Merge (#5819)
* Prevent on-demand tests re-triggering from branch indexing

* Mark integration test tasks with "big" node taint

* Jenkins file for nightly regression tests (#5786)

* Jenkins file for nightly regression tests

* Use k8s instead of gke cluster

* DOCS: Update UAT.md (#5602)

* Fix report generation against regression builds (#5818)

* Prevent on-demand tests re-triggering from branch indexing

* Mark integration test tasks with "big" node taint

* Jenkins file for nightly regression tests (#5786)

* Jenkins file for nightly regression tests

* Use k8s instead of gke cluster

Co-authored-by: Stefano Franz <roastario@gmail.com>
Co-authored-by: carolynequinn <44175553+carolynequinn@users.noreply.github.com>
2019-12-20 14:44:45 +00:00
Ramzi El-Yafi
bd436e640d Fix report generation against regression builds (#5818) 2019-12-20 10:11:26 +00:00
Stefano Franz
af30e40397 CORDA-3485 Restore CollectSignaturesFlow.kt to allow multiple collections from Well Known sessions (#5800)
* modify CollectSignaturesFlow.kt to allow multiple collections from wellKnown party initiated sessions

* detekt fixes

* review comments

* move require lambdas back outside of the function definition of requires

* address review comments

* fix detekt

* fix api scanner
2019-12-17 16:26:09 +00:00
Ramzi El-Yafi
5458f11998 Jenkins file for nightly regression tests (#5786)
* Jenkins file for nightly regression tests

* Use k8s instead of gke cluster
2019-12-17 13:02:56 +00:00
Ramzi El-Yafi
2851534ae7 Prevent on-demand tests re-triggering from branch indexing 2019-12-11 08:29:37 +00:00
Ramzi El-Yafi
74c4bd6a3d Merge remote-tracking branch 'origin/release/os/4.3' into ramzi/43-44-merge 2019-12-09 13:37:50 +00:00
Ramzi El-Yafi
3fc916fb6c Add Allure report generation (#5776)
* Add Allure report generation

* change test artifact path for allure
2019-12-04 14:49:44 +00:00
Ed Prosser
e692ec292a Merge branch 'release/os/4.3' of https://github.com/corda/corda into EdP/CORDA-3446-4.4 2019-11-20 10:36:38 +00:00
Stefano Franz
698909a1ac
disable preallocation on regression builds (#5743) 2019-11-19 17:38:38 +00:00
Stefano Franz
138a2f114d
Refresh token by invoking KubeCTL before each Kuberenetes API invocation (#5732)
* fix merge issue with sidecar image work

* add logic to refresh token in GKE

* set streaming to true

* set streaming to true

* set streaming to false, and increment number of workers for regression test as approaching 1h limit

* set PR build to run unit and integration tests

* try method distribution to see if faster

* rename test stage to reflect the fact it runs unit tests

* remove commented out parallel unit test code
2019-11-19 15:01:42 +00:00
stefano
4e7c8a6b1b revert api-current to 4.4 2019-11-18 14:04:06 +00:00
stefano
b11fd02f6e Merge remote-tracking branch 'origin/release/os/4.3' into my_merge_branch 2019-11-15 15:44:45 +00:00
Stefano Franz
01c1e4bc17
attempt to make preAllocation job deletion more certain (#5708)
fix issue with deallocate during build phase

fix test report URL
2019-11-15 15:14:01 +00:00
Jonathan Locke
6104d114c8 NOTICK: Update API after release of 4.3
Update the api-current.txt file after the release of Corda 4.3
2019-11-14 15:11:02 +00:00
Jonathan Locke
7d5c59e9cc
Merge OS 4.3 to OS 4.4 (#5713)
Merge OS 4.3 to OS 4.4 (#5713)
2019-11-14 13:07:09 +00:00
Chris Rankin
cc7d15bf52 CORDA-3414: Upgrade to Corda Gradle plugins 5.0.6. (#5711) 2019-11-14 12:11:30 +00:00
Jonathan Locke
c31cddaffc Fixed merge conflicts 2019-11-14 10:40:12 +00:00
Stefano Franz
7fb404bd85
limit number of builds kept within jenkins history for regression builds (#5693) 2019-11-09 08:57:19 +00:00
stefano
6a3a9eded3 Merge remote-tracking branch 'origin/release/os/4.3' into my_merge_branch
# Conflicts:
#	core/src/main/kotlin/net/corda/core/internal/TransactionVerifierServiceInternal.kt
#	node/src/integration-test/kotlin/net/corda/node/services/rpc/RpcExceptionHandlingTest.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/DriverDSLImpl.kt
2019-11-05 17:19:18 +00:00
Stefano Franz
ed50016ed0
Merge pull request #5668 from corda/add_publishing_tests_to_regression_builds
add smoke tests via comment trigger build
2019-11-05 15:29:33 +00:00
Chris Rankin
f226ddc4f2 CORDA-2876: Integrate the DJVM with the Corda Node. (#5633)
* * CORDA-2876: Migrate DJVM serialization modules into Corda.
* Pre-generate Corda classes for DJVM sandbox when node boots in production mode.
* Ensure that all DJVM test contract CorDapps are signed.
* Test examining attachments within DJVM sandbox.
* Test Contract.verify() using cryptographic verify function.
* Add test cases for more non-determinism in Contract.verify().
* Update node-driver to support testing nodes with DJVM support.
* Modify Node to allow alternative DJVM configurations for testing.
* Refactor DeterministicVerifierFactoryService for default use-case.
* Small whitespace and code-style refactors.
* Create and activate a DJVM execution profile for the Node.
* Revert making Verifier implement AutoCloseable.
* Allow the node to cache sandboxed Corda byte-code for reuse.
* Use updated Quasar agent that knows not to touch DJVM classloaders.
* Fix Quasar's package exclusions globs for DJVM.
* Deserialise LedgerTransaction into the sandbox for Contract.verify().
* Add the DJVM's serialisation modules to the Corda node.
* Update the node for the latest DJVM API, and preserve the ConstructorForDeserialization annotation on user contract classes.
* Add corda-dev to repositories while DJVM is SNAPSHOT.
* Migrate DJVM specialisation into AbstractNode's ServiceHubInternalImpl.
* Exclude sandbox.** and shaded djvm.** classes from Quasar agent.
* Add the corda-dev repository to :node for the deterministic runtime.
* Turn Verifier into an abstract base class that is specialised by BasicVerifier and DeterministicVerifier.
* Add the Corda deterministic libraries to the Node, and split the DJVM sandbox across two SandboxClassLoader instances.
* Add DJVM to contract verification path inside Corda Node.
* Minor lambda simplifications and removing unused import.
* CORDA-2871: Remove @CordaSerializable from LedgerTransaction.
* CORDA-2871: Add a callback to ServicesForResolution to allow the Node to modify a LedgerTransaction object.
* CORDA-2871: Refactor the contract verification code into a separate class,
 and allow LedgerTransaction to choose different Verifier objects.
* Update DJVM to use Corda 4.4-SNAPSHOT. (#95)
* CORDA-3330: Allow DJVM to preload / pregenerate classes from selected jars. (#92)
* Add support for SourceClassLoader.getResources() to DJVM.
* Allow a SandboxConfiguration to preload sandbox byte-code for all classes inside jars containing META-INF/DJVM-preload.
* CORDA-3309: Remove explicit try-catch in favour of UncaughtExceptionHandler. (#91)
* CORDA-3309: Install UncaughtExceptionHandler for DJVM tasks. (#88)
* Fix tests broken by Windows line endings. (#82)
* CORDA-3292: Reimplement ExecutionProfile as a data class. (#80)
* CORDA-2877: Refactor how we create child SandboxConfiguration objects. (#76)
* CORDA-2877: Load bytecode from a persistent cache to prevent repeated rewriting. (#75)
* Refactor byte-code cache to SandboxConfiguration instead of AnalysisConfiguration. We cannot "mix and match" byte-code generated by different sets of rules.
* CORDA-3137: Enhance annotation handling so that we can allow some annotations to be mapped into the sandbox without also needing to be stitched. (#72)
* CORDA-2871: Minor cosmetic fixes. (#69)
* CORDA-3218: Align DJVM with internal Corda Serialisation API. (#68)
* Ensure we get the latest SNAPSHOT of the serialisation code.
* CORDA-2871: Refactor SourceClassLoader to define source classes. (#66)
* Rewrite SourceClassLoader to support parent/child relationships.
* Revert catching TypNotPresebtException - it was a symptom of a bigger problem.
* Remove AutoCloseable from AnalysisConfiguration and SourceClassLoader.
* SourceClassLoader.getResource() must delegate to its parent first.
* CORDA-2871: Ensure ClassLoader.loadClass() throws ClassNotFoundException for all cases where the class cannot be found. (#64)
* CORDA-2871: Modify sandbox tasks to implement both java.Function and sandbox.Function (#62)
* Make TaskExecutors implement BiFunction to make them composable.
* Create ImportTask to wrap a java.Function inside a sandbox.Function.
* Add createExecutor() and createRawExecutor() APIs to SandboxClassLoader.
* Update serialization to use SandboxClassLoader.toSandboxClass().
* Remove a layer of lambdas from the serialisation code.
* Update SandboxExecutor and SandboxRawExecutor.
* Rename Executor to TaskFactory.
* Rename dangling executor -> taskFactory.
* CORDA-2871: Sanity fixes! (#63)
* Improve message for SandboxClassLoadingException.
* Fix serialisation API for using sandboxed environment.
* CORDA-3174: Extend serialisation to include InputStream and OpaqueBytesSubSequence. (#60)
* Update DJVM Example project for serialisation.
* Add serializers for InputStream and OpaqueBytesSubSequence.
* Support ZIP Inflater and CRC32 inside the sandbox.
* Allow the DJVM to wrap java.io.InputStream as sandbox.java.io.InputStream.
* Configure tests also to preserve @DeprecatedConstructorForDeserialization.
* CORDA-3174: Implement Corda serialization modules. (#59)
* Create DJVM serialization modules.
* Create test cases for Array<T>, List<T> and List<Array<T>>.
* Refactor SandboxPrimiveSerializer for all primitive types.
* Implement SandboxCollectionSerializer to support Collection types.
* Implement SandboxMapSerializer to support Map types.
* Attempt to fix infinite loop when computing Collection and Map fingerprints.
* Apply special handling when deserialising sandbox.java.lang.Character.
* Remap Java primitive types to sandbox Java object types to deter evolution.
* Use Class.getPackage().getName() to determine sandbox package name.
* Implement SandboxEnumSerializer to support Enum types.
* Implement SandboxPublicKeySerializer to support Java security keys.
* Add serialization projects to the composite example project.
* Implement serializers for BigInteger, BigDecimal, Currency and StringBuffer.
* Test that deserialising does not instantiate the untrusted user classes.
* Implement serializers for java.time.* types.
* Add serialiser for BitSet - currently disabled until BitSet itself is supported.
* Add serialisers for EnumSet and Class.
* Include support for EnumMap in the SandboxMapSerializer.
* Ensure the DJVM Example project's tests preserve @CordaSerializable.
* Add support for UUID as a primitive type.
* Use common abortReadOnly() method for declaring serialization as unsupported.
* Streamline the API for deserialising into the sandbox.
* Add preliminary support for deserialising X.509 certificates.
* Implement serializer for java.util.Optional.
* Refactor configuration of the sandbox serialization scheme.
* Add tests for deserialising arrays of basic types.
* Include method annotations in annotation stitching. This ensures that `@ConstructorForDeserialization` is not dropped.
* Enable test for SandboxBitSetSerializer.
* Enable tests for X.509 serializers.
* Implement serializers for ProtonJ primitive types.
* Serialize java.util.Date as a primitive type.
* Add the bintray Gradle plugin to the serialisation modules.
* Do not publish serialisation modules - they will become part of Corda itself.

* CORDA-2876: Only apply DJVM sources to Node Driver when devMode=true.

* Resolve DeteKT warnings.

* Require Node's JVM to set -Dnet.corda.djvm=true in order to enable DJVM.

* Enable DJVM for DemoBench nodes.

* Disable Quasar instrumentation verification for DemoBench nodes.

* Upgrade to DJVM 1.0-RC01.

* Try to modify DriverParameters in a more "ABI friendly" way.

* Refactor and simplify sandbox deserialisation of primitive objects.

* Review fixes.

* Update EvolutionSerializerFactory to handle sandboxed primitive boxed types.
2019-11-05 13:44:18 +00:00
Dimos Raptis
485feb2d6c CORDA-3350: Increase size of constraints column (#5639)
* CORDA-3350: Increase size of constraints column (#5639)

* Detekt

* Update api file with new threshold

* Add check in transaction builder

* Revert "Add check in transaction builder"

This reverts commit ca3128f44c.

* Add check for max number of keys

* Update api file

* Address Tudor's comments

* Remove check for pre-5 and add test for EC keys

* fix typo and rename liquibase script

* updated docs with measurement numbers for composite keys

* Make detekt happy again
2019-11-05 11:00:26 +00:00
stefano
2dab35c362 tidy up environment within pipeline 2019-11-04 17:00:38 +00:00
stefano
62002e0b3c surround post steps with check if comment build 2019-11-04 16:28:52 +00:00
stefano
f858827757 trigger is not null when comment caused build 2019-11-04 16:24:14 +00:00
stefano
6ae082f67f fix pipeline syntax errors 2019-11-04 16:19:55 +00:00
stefano
bf792c63d5 redesign Jenkinsfile for smoketests to determine if current build is a comment triggered build 2019-11-04 16:18:31 +00:00
stefano
35def14b1f add ability to tigger smoke tests on arbitrary PR 2019-11-04 16:03:12 +00:00
Stefano Franz
5a0b8c7992
add extra whitespace in jenkins regression build command (#5665) 2019-11-04 13:26:43 +00:00
Stefano Franz
e09cd84339
add test time publishing to regression test build (#5664) 2019-11-04 13:05:13 +00:00
stefano
d54f2ddd87 fix Library import 2019-11-01 15:57:08 +00:00
stefano
e7e7de1d05 add regression test jenkins file 2019-11-01 15:53:05 +00:00
Razvan Codreanu
d5462a2afe Re enabling persistent volume claims (#5628)
* TM-68 reenabling persistent volume claims using azure files

* TM-68 jenkins stackstracee

* TM-68 removing duplicate volume

* TM-68 pushing storage class yaml file

* TM-68 writing all results to the new persistent volume

* TM-68 fix wrong directory

* TM-68 fix wrong directory

* reapply lost merge commit

* investigate missing POD from test results

* more investigations around pods not executing their tests

* make Pod command line more strict with regards to sub command failure

* make logs an artifact within jenkins

* tidy up command line
2019-10-29 16:23:22 +00:00
Stefano Franz
f9890a5359
PreAllocate pod resources during image build phase (#5587)
* use zulu for jdk
add some parallel groups

* port kubesTest to Java
remove asterix from tests listed by ListTests, instead add after allocation

* attempt to setup unit test builds with correct github integrations

# Conflicts:
#	.ci/dev/unit/Jenkinsfile

* fix issue with github context

* add credentials block

* start pre-allocating pods for builds

* test

* add blocks for reporting build stages

* add logic to preallocate pods during image building

* tidy up Jenkinsfile for unit tests

* add magic command line flag to enable preallocation of pods

* make docker tag deterministic

* fix issue concatenating docker tag inputs

* add build type specific Jenkinsfile

* try new preallocation approach

* make pre-allocation prefix group specific

* force deAllocator to wait for pods to be actually deleted

* revert jenkinsfiles in .ci

* use smarter waiting logic to address review comments

* add --stacktrace to builds to help debugging

* fix issue with closed stream

* add some logging around preallocation

* tidy up by refactoring (de)allocate task generation into method

* change default from 20 pods to 5 pods

* fix issue where docker tag was unstable between building and running tests

* more documentation

* add some infrastructure around setting the log level for a given build

* change preallocation pod duration to 5min

* see if fast enough if using combined unit and integration tests

* disable unit tests

* print out test summaries

* try and make the kubes client a per-use object, rather than a long lived object. This is step one of making GKE use possible

* add log line about what command is executed in the pod
2019-10-28 11:48:04 +00:00
Stefano Franz
970f60c625 NOTICK: Fix Initiate Flow with Anonymous party (#5579)
* delete buildSrc block configuring multiple plugins

* remove outer stage block

* fix issues around initiateFlow with anonymous party

* code checks

* disable unit tests

* fix flowframeworktest

* undo some extraneous changes
2019-10-14 11:32:22 +01:00
Nick Dunstone
7a929f177c CORDA-3043 RPC Invocation fails when calling classes with defaulted constructors O/S (#5569)
* Fix for defaulted constructor arguments

* Code changes from 4.3 applied to O/S

* Detekt and code review
2019-10-11 11:00:40 +01:00
Stefano Franz
298c91ce82
Webook test branch (#5528)
* add ability to index by class OR method

* disable unit tests again

* pending commit

* stream output of build for debugging

* remove git from the base image

* re-enable NodeRPCTests

* add ability to distribute tests based on TeamCity CSV output for test times

* try enabling unit tests again after test distribution has been fixed

* refactor BucketingAllocator to be a class, which bucketingAllocatorTask delegates to.

* finishing touches for improved test distribution

* create new pipelines for builds
2019-10-08 16:33:24 +02:00
Stefano Franz
cd0d5c7724 Ensure that ServiceHub.WithEntityManager has a database transaction available (#5413)
* tidy up withEntityManager

* address rick review comment

* api break
2019-08-30 15:58:50 +01:00
Chris Rankin
d1289ec379 CORDA-2871: Restore CompositeKey support to core-deterministic. (#5333)
* CORDA-2871: Restore CompositeKey support to core-deterministic.

* Delete empty CordaSecurityProviderKt class from api-current.
2019-07-30 17:53:33 +01:00
Shams Asari
76eec9aa8b
CORDA-3033: Introducing Destination interface for initiating flows with (#5242)
Party and AnonymousParty have been retrofitted to implement this interface and are currently the only supported types. A new FlowLogic.initiateFlow(Destination) method overload to easily support the addition of new destination types in future versions.
2019-06-21 16:39:56 +01:00
Dominic Fox
17e7cd3abc ENT-3121 - restrict custom serializers (#1852)
* Tests for custom registry restrictions

* ENT-3121 restrict custom serialisation

* Remove redundant code

* Only count declared annotations

* Check annotation on superclasses, remove annotation from ByteArray

* Forbid custom serialization of primitive types

* Remove @CordaSerializable from another class that is always handled by custom serialisation

* Add log warnings to aid diagnosis of custom serialization issues

* Remove another annotation

* Remove another annotation

* Remove another annotation

* Remove another annotation

* Fixup api-current

* Fixup api-current

* KDocs on exceptions
2019-03-29 14:48:07 +00:00