Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

version update #1

Open
wants to merge 93 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
93 commits
Select commit Hold shift + click to select a range
a391b18
Remove prefix when signing
mkrielza Jun 18, 2020
8405a84
Alpha version 1.0.3
mkrielza Jun 22, 2020
5121271
Initial commit
mkrielza Jun 22, 2020
cda7d09
Some fixes
mkrielza Jun 22, 2020
9ce5896
Licenses
mkrielza Jun 23, 2020
55937a9
Merge pull request #2 from Adhara-Tech/adhara-2227-hsm-support
mkrielza Jun 23, 2020
932a591
Adapt pipeline to Adhara repos
fllaca Jun 30, 2020
4ae75c3
Merge pull request #3 from Adhara-Tech/ci
fllaca Jun 30, 2020
3394fff
Manually add cloudhsm jar
mkrielza Jul 1, 2020
23e75f7
Better option
mkrielza Jul 1, 2020
811410b
Merge pull request #5 from Adhara-Tech/fix/build-dependencies
fllaca Jul 2, 2020
c0fe8c9
Added multi-dockerfile builds and cloudhsm Dockerfile
fllaca Jun 30, 2020
dc39200
"which" is required by ethsigner start script
fllaca Jul 1, 2020
335dc46
Disable slack notifications
fllaca Jul 2, 2020
cea250d
Remove cloudhsm dockerImage tests
fllaca Jul 2, 2020
7db0bf0
Merge pull request #4 from Adhara-Tech/cloudhsm_docker
fllaca Jul 2, 2020
c8e5873
Remove bintray publish CI step as not needed
fllaca Jul 2, 2020
a46ef85
Merge pull request #6 from Adhara-Tech/no_publish_bintray
fllaca Jul 2, 2020
c66340c
Amend cloudhsm entrypoint
mkrielza Jul 21, 2020
de71e85
Sync with upstream
mkrielza Jul 21, 2020
5cb1c8d
Merge pull request #9 from Adhara-Tech/asp-147
mkrielza Jul 22, 2020
bede604
Working
mkrielza Aug 6, 2020
bbdbca9
Backwards compatibility
mkrielza Aug 7, 2020
bca25c3
Stick to eth json-rpc standards
mkrielza Aug 7, 2020
356e34f
PR Updates
mkrielza Aug 12, 2020
4462949
Add test
mkrielza Aug 12, 2020
d324477
Remove debug provider
mkrielza Aug 12, 2020
79a476d
Merge pull request #10 from Adhara-Tech/asp-387
mkrielza Aug 13, 2020
135f666
Merge pull request #8 from Adhara-Tech/platform-596-fix
mkrielza Aug 13, 2020
ab844d0
Sync with upstream
mkrielza Aug 13, 2020
6c1f78f
Switch
mkrielza Aug 14, 2020
8a277b6
Upgrades
mkrielza Aug 14, 2020
8c6545d
Sync with upstream
mkrielza Aug 19, 2020
f612c14
Changelog
mkrielza Aug 19, 2020
866af32
Cleanup
mkrielza Aug 20, 2020
fa18bf7
Merge pull request #11 from Adhara-Tech/pegasys-refactor
mkrielza Aug 24, 2020
867c95d
Upgrade version
mkrielza Aug 31, 2020
13c9bb9
Merge pull request #12 from Adhara-Tech/version-upgrade
mkrielza Aug 31, 2020
833f6ef
update docker image (#326)
joshuafernandes Sep 6, 2020
50d119e
Debug logging
mkrielza Sep 8, 2020
2eb9aa5
Update links, emails and PegaSys references (#325)
timbeiko Sep 8, 2020
636ed1b
Merge pull request #13 from Adhara-Tech/sender-logs
mkrielza Sep 8, 2020
03008cc
Upgrade signers library version
mkrielza Sep 10, 2020
d9c3db9
metrics endpoint (#328)
jframe Sep 11, 2020
7e282b4
Run blocking handlers in parallel
mkrielza Sep 11, 2020
a355c0b
Spotless fix
mkrielza Sep 11, 2020
7342ee9
Merge pull request #14 from Adhara-Tech/upgrade-signers-version
mkrielza Sep 11, 2020
418b106
Ensure txns are handled in parallel (#331)
rain-on Sep 11, 2020
81337e8
Validate nonce when not optional
mkrielza Sep 16, 2020
b89eb27
Merge remote-tracking branch 'upstream/master' into validate-nonce
mkrielza Sep 16, 2020
080cc4e
Upgrade signers library
mkrielza Sep 16, 2020
15efa4b
Merge pull request #15 from Adhara-Tech/validate-nonce
mkrielza Sep 17, 2020
6d01caa
Moved publish repo
marcdk Sep 21, 2020
b16faa2
Merge pull request #16 from Adhara-Tech/move-publish
marcdk Sep 21, 2020
76dc4e1
Remove access-control-allow-origin header from web3provider response …
rain-on Sep 22, 2020
7d55dba
Merge remote-tracking branch 'upstream/master' into sync-2020-09-29
mkrielza Sep 30, 2020
2520d45
Sync with upstream
mkrielza Sep 30, 2020
419e559
Add eth_signTransaction endpoint (#336)
mkrielza Oct 1, 2020
32fdf4c
Some fixes
mkrielza Oct 5, 2020
f4c57f9
adding in quorumengineering as the new namespace and pegasyseng as th…
joshuafernandes Oct 6, 2020
7f2e975
updates for circle (#339)
joshuafernandes Oct 8, 2020
17e0eb2
adding in docker contexts (#340)
joshuafernandes Oct 12, 2020
701a89e
Merge pull request #17 from Adhara-Tech/sync-2020-09-29
mkrielza Oct 12, 2020
2825600
fixed typo (#341)
macfarla Oct 15, 2020
b1e00be
Maintenance
mkrielza Oct 15, 2020
94eb3c2
Merge pull request #18 from Adhara-Tech/maintainance
mkrielza Oct 15, 2020
0d8690d
updating docker namespace (#342)
joshuafernandes Oct 22, 2020
694af4b
Update changelog for 20.10.0 (#343)
rain-on Oct 22, 2020
29b640d
20.10.0 release (#344)
rain-on Oct 22, 2020
4a55878
Update version to 20.10.1-SNAPSHOT (#345)
rain-on Oct 22, 2020
c7853ca
Sync with upstream
mkrielza Oct 26, 2020
5d5e602
Merge pull request #19 from Adhara-Tech/sync-2020-10-26
mkrielza Oct 29, 2020
caf7603
Improve error message if the http server fails to start (#347)
jframe Jan 8, 2021
1557a2b
Merge branch 'master' of github.com:PegaSysEng/ethsigner
mkrielza Jan 8, 2021
1732e41
Sync with upstream
mkrielza Jan 8, 2021
f75beed
Merge pull request #20 from Adhara-Tech/sync-2021-01-08
mkrielza Jan 11, 2021
8b9414d
update links to consensys.net (#348)
macfarla Jan 27, 2021
d13f083
added GoQuorum private transaction type (#349)
macfarla Feb 16, 2021
329af9a
added changelog for 21.1 (#350)
macfarla Feb 16, 2021
59d943f
Added GoQuorum private transaction serializer (#352)
macfarla Feb 19, 2021
8409aef
Updating CI and gradle build to upload to cloudsmith (#353)
usmansaleem Feb 22, 2021
2b45667
Update changelog for 21.2.0 (#354)
usmansaleem Feb 23, 2021
c9070bb
Fixing version in CHANGELOG for release 21.1.0 (#355)
usmansaleem Feb 23, 2021
6e30f44
21.1.0 release (#356)
usmansaleem Feb 23, 2021
87644e1
Prepare for version 21.1.1-SNAPSHOT (#357)
usmansaleem Feb 23, 2021
0dd7d1e
Resolve and publish to cloudsmith (#359)
usmansaleem Mar 8, 2021
53e6ec5
Upgrade besu metrics library (#360)
usmansaleem Mar 9, 2021
2c78c84
Support git tag based release (#363)
usmansaleem Mar 11, 2021
866cf3a
Updating latest Besu release to use with AT (#361)
usmansaleem Mar 12, 2021
3645eba
Enable tag build in circleci config (#364)
usmansaleem Mar 13, 2021
42e0242
Minimal diffs
mkrielza Mar 15, 2021
237c738
Sync with upstream
mkrielza Mar 15, 2021
3de456f
Merge pull request #21 from Adhara-Tech/azure-fix-and-sync-2021-03-09
mkrielza Mar 16, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
122 changes: 76 additions & 46 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,10 @@ orbs:
executors:
executor_med: # 2cpu, 4G ram
docker:
- image: circleci/openjdk:11.0.4-jdk-stretch
- image: circleci/openjdk:11.0.8-jdk-buster
auth:
username: $DOCKER_USER_RO
password: $DOCKER_PASSWORD_RO
resource_class: medium
working_directory: ~/project
environment:
Expand All @@ -16,7 +19,10 @@ executors:

executor_large: # 4cpu, 8G ram
docker:
- image: circleci/openjdk:11.0.4-jdk-stretch
- image: circleci/openjdk:11.0.8-jdk-buster
auth:
username: $DOCKER_USER_RO
password: $DOCKER_PASSWORD_RO
resource_class: large
working_directory: ~/project
environment:
Expand All @@ -25,7 +31,7 @@ executors:

executor_machine: # 2cpu , 8G ram
machine:
image: ubuntu-1604:201903-01 #Ubuntu 16.04, docker 18.09.3, docker-compose 1.23.1
image: ubuntu-2004:202008-01 #Ubuntu 20.04, docker 19.03, docker-compose 1.27.4
docker_layer_caching: true
working_directory: ~/project
environment:
Expand Down Expand Up @@ -90,7 +96,7 @@ commands:

jobs:
build:
executor: executor_large
executor: executor_med
steps:
- prepare
- run:
Expand All @@ -107,7 +113,7 @@ jobs:
no_output_timeout: 20m
command: |
./gradlew --no-daemon --parallel integrationTest --info
- notify
# - notify
- capture_test_results
- capture_test_reports
- save_cache:
Expand All @@ -121,18 +127,18 @@ jobs:
paths:
- ./

acceptanceTests:
executor: executor_large
steps:
- prepare
- run:
name: Acceptance Test
no_output_timeout: 20m
command: |
./gradlew --no-daemon --parallel acceptanceTest
- notify
- capture_test_results
- capture_test_reports
# acceptanceTests:
# executor: executor_large
# steps:
# - prepare
# - run:
# name: Acceptance Test
# no_output_timeout: 20m
# command: |
# ./gradlew --no-daemon --parallel acceptanceTest
# - notify
# - capture_test_results
# - capture_test_reports

buildDocker:
executor: executor_med
Expand All @@ -154,7 +160,11 @@ jobs:
command: |
mkdir -p docker/reports
./gradlew --no-daemon testDocker
- notify
- run:
name: build image - cloudhsm
command: |
./gradlew --no-daemon distDocker -Pdockerfile=cloudhsm
# - notify

publish:
executor: executor_med
Expand All @@ -166,7 +176,7 @@ jobs:
name: Publish
command: |
./gradlew --no-daemon --parallel bintrayUpload
- notify
# - notify

publishDocker:
executor: executor_med
Expand All @@ -180,41 +190,59 @@ jobs:
command: |
docker login --username "${DOCKER_USER}" --password "${DOCKER_PASSWORD}"
./gradlew --no-daemon --parallel "-Pbranch=${CIRCLE_BRANCH}" dockerUpload
- notify
- run:
name: Publish Docker - cloudhsm
command: |
docker login --username "${DOCKER_USER}" --password "${DOCKER_PASSWORD}"
./gradlew --no-daemon --parallel "-Pbranch=${CIRCLE_BRANCH}" dockerUpload -Pdockerfile=cloudhsm
# - notify

workflows:
version: 2
nightly:
triggers:
- schedule:
cron: "0 11 * * *"
filters:
branches:
only:
- master
jobs:
- build
- acceptanceTests:
requires:
- build
# nightly:
# triggers:
# - schedule:
# cron: "0 11 * * *"
# filters:
# branches:
# only:
# - master
# jobs:
# - build:
# context:
# - dockerhub-quorumengineering-ro
# - acceptanceTests:
# requires:
# - build
# context:
# - dockerhub-quorumengineering-ro
default:
jobs:
- build
- acceptanceTests:
requires:
- build
# context:
# - dockerhub-quorumengineering-ro
# - acceptanceTests:
# requires:
# - build
# context:
# - dockerhub-quorumengineering-ro
- buildDocker:
requires:
- build
- publish:
filters:
branches:
only:
- master
- /^release-.*/
requires:
- build
- acceptanceTests
# context:
# - dockerhub-quorumengineering-ro
# - publish:
# filters:
# branches:
# only:
# - master
# - /^release-.*/
# requires:
# - build
# - acceptanceTests
# context:
# - dockerhub-quorumengineering-ro
# - quorum-gradle
- publishDocker:
filters:
branches:
Expand All @@ -223,5 +251,7 @@ workflows:
- /^release-.*/
requires:
- build
- acceptanceTests
# - acceptanceTests
- buildDocker
# context:
# - dockerhub-quorumengineering-rw
33 changes: 33 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,31 @@
# Changelog

## 21.3.0

### Features Added
- Upgraded besu-metrics library
- Publish ethsigner module jars to cloudsmith maven repo
- Update Besu latest version for Acceptance Tests
- Add gzip compression support

## 21.1.0

### Features Added
- Publish artifacts to [cloudsmith](https://cloudsmith.io/~consensys/repos/ethsigner).
- Added support for sending GoQuorum private transactions via "eth_sendTransaction" JSON-RPC
- Improve error message if HTTP server fails to start

## 20.10.0

### Features Added
- Added "eth_signTransaction" JSON-RPC
- Docker namespace updated to reflect "consensys/quorum-ethsigner"
- Strip ACCESS_CONTROL_ALLOW_ORIGIN header from responses received from the web3provider
- Added a Prometheus metrics endpoint, reporting basic application metrics

### Bugs Fixed
- Transactions were not being handled in parallel, triggering poor performance under load

## 0.7.1

### Features Added
Expand All @@ -12,6 +38,13 @@
- Prevent multiple transmission exceptions propagation upwards [#312](https://github.com/PegaSysEng/ethsigner/pull/312)
- Resolve failures in the application of CORS headers [#286](https://github.com/PegaSysEng/ethsigner/pull/286)

## 0.7.1-ADHARA

### Features Added
- Added "eth_signTransaction" JSON RPC
- Added AWS CloudHSM signer
- Added Generic PKCS11 signer

## 0.7.0

### Features Added
Expand Down
8 changes: 4 additions & 4 deletions CLA.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
Sign the CLA
=============

This page is the step-by-step guide to signing the Consensys AG
Individual Contributor License Agreement.
This page is the step-by-step guide to signing the Consensys Software Inc.
Individual Contributor License Agreement.

1. First and foremost, read [the current version of the CLA].
1. First and foremost, read [the current version of the CLA].
It is written to be as close to plain English as possible.

2. Make an account on [GitHub] if you don't already have one.
Expand All @@ -13,7 +13,7 @@ Individual Contributor License Agreement.
pre-requisite requiring to you read and sign the CLA.

If you have any questions, you can reach us on [Discord].

[GitHub]: https://github.com/
[the current version of the CLA]: https://gist.github.com/rojotek/978b48a5e8b68836856a8961d6887992
[Discord]: https://discord.gg/5U9Jwp7
4 changes: 2 additions & 2 deletions CODE-OF-CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ further defined and clarified by project maintainers.
## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at [private@pegasys.tech]. All
reported by contacting the project team at [private-quorum@consensys.net]. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Expand All @@ -71,4 +71,4 @@ This Code of Conduct is adapted from the [Contributor Covenant], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

[Contributor Covenant]: https://www.contributor-covenant.org
[private@pegasys.tech]: mailto:private@pegasys.tech
[private-quorum@consensys.net]: mailto:private-quorum@consensys.net
2 changes: 1 addition & 1 deletion CODING-CONVENTIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ EthSigner embraces typical Java idioms including using an Object Oriented approa
- Don't pass lambdas into executors because it makes it harder to identify the threading interactions. The lambda makes the code shorter but not clearer. Instead use a separate class or extract a method.
* For good examples, refer to the APIs the JDK itself exposes.

>**Note** If you're not sure what idiomatic Java looks like, start by following the typical patterns and naming used in this or other PegaSys codebases.
>**Note** If you're not sure what idiomatic Java looks like, start by following the typical patterns and naming used in this or other ConsenSys codebases.

## 2.3 You Ain't Gonna Need It (YAGNI)

Expand Down
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ and feel free to propose changes to this document in a pull request.
## Code of Conduct

This project and everyone participating in it is governed by the [EthSigner Code of Conduct](CODE-OF-CONDUCT.md).
By participating, you are expected to uphold this code. Please report unacceptable behavior to [private@pegasys.tech].
By participating, you are expected to uphold this code. Please report unacceptable behavior to [private-quorum@consensys.net].

## I just have a quick question

Expand Down Expand Up @@ -242,10 +242,10 @@ These are not strictly enforced during the build, but should be adhered to and c
| [`requires-changes`][search-label-requires-changes] | Pull requests which need to be updated based on review comments and then reviewed again. |
| [`needs engineering approval`][search-label-needs-engineering-approval] | Pull requests which need to be approved from a technical person, mainly documentation PRs. |

[private@pegasys.tech]: mailto:private@pegasys.tech
[private-quorum@consensys.net]: mailto:private-quorum@consensys.net
[Discord]: https://discord.gg/5U9Jwp7
[Github issues]: https://github.com/PegaSysEng/ethsigner/issues
[EthSigner documentation]: https://docs.ethsigner.pegasys.tech/
[GitHub issues]: https://github.com/ConsenSys/ethsigner/issues
[EthSigner documentation]: https://docs.ethsigner.consensys.net/
[CLA.md]: /CLA.md
[Code Reviews]: /community/code-reviews.md
[MkDocs]: https://www.mkdocs.org/
Expand Down
2 changes: 1 addition & 1 deletion GOVERNANCE.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Overview
This project is led by a benevolent dictator (PegaSys) and managed by the community. That is, the
This project is led by a benevolent dictator (ConsenSys) and managed by the community. That is, the
community actively contributes to the day-to-day maintenance of the project, but the general
strategic line is drawn by the benevolent dictator. In case of disagreement, they have the last word.
It is the benevolent dictator’s job to resolve disputes within the community and to ensure that the
Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# EthSigner

A transaction signing application to be used with a web3 provider. All questions, queries and other discussion can be found on [Discord].
A transaction signing application to be used with a web3 provider. All questions, queries and other discussion can be found on [Discord].

## Issues

Expand All @@ -11,6 +11,9 @@ See our [contribution guidelines](CONTRIBUTING.md) for more detail on searching
## Users
* [User documentation](https://docs.ethsigner.pegasys.tech/)

## Chat
* [Discord]

## Developers
* [Contribution Guidelines](CONTRIBUTING.md)
* [Coding Conventions](CODING-CONVENTIONS.md)
Expand All @@ -19,4 +22,4 @@ See our [contribution guidelines](CONTRIBUTING.md) for more detail on searching
* [Release Notes](CHANGELOG.md)

[Discord]: https://discord.gg/5U9Jwp7
[Github issues]: https://github.com/PegaSysEng/ethsigner/issues
[GitHub issues]: https://github.com/ConsenSys/ethsigner/issues
4 changes: 3 additions & 1 deletion acceptance-tests/build.gradle
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import groovy.text.SimpleTemplateEngine

/*
* Copyright 2019 ConsenSys AG.
* Copyright 2020 ConsenSys AG.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down Expand Up @@ -29,6 +29,8 @@ dependencies {
testImplementation project(':ethsigner:app')
testImplementation (group: 'tech.pegasys.signers.internal', name: 'signing-secp256k1-impl', classifier: 'test-fixtures')
testImplementation (group: 'tech.pegasys.signers.internal', name: 'keystorage-hashicorp', classifier: 'test-fixtures')
testImplementation (group: 'tech.pegasys.signers.internal', name: 'keystorage-hsm', classifier: 'test-fixtures')
testImplementation (group: 'tech.pegasys.signers.internal', name: 'keystorage-cavium', classifier: 'test-fixtures')

testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'io.vertx:vertx-core'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public void sendDisabledApiReturnsBadRequest() {
final SignerResponse<JsonRpcErrorResponse> response =
ethSigner().rawJsonRpcRequests().exceptionalRequest("ibft_getPendingVotes");

assertThat(response.status()).isEqualTo(HttpResponseStatus.BAD_REQUEST);
assertThat(response.status()).isEqualTo(HttpResponseStatus.OK);
assertThat(response.jsonRpc().getError()).isEqualTo(JsonRpcError.METHOD_NOT_ENABLED);
}

Expand All @@ -37,7 +37,7 @@ public void unknownJsonRpcMethodReturnsBadRequest() {
final SignerResponse<JsonRpcErrorResponse> response =
ethSigner().rawJsonRpcRequests().exceptionalRequest("invalidJsonRpcMethod");

assertThat(response.status()).isEqualTo(HttpResponseStatus.BAD_REQUEST);
assertThat(response.status()).isEqualTo(HttpResponseStatus.OK);
assertThat(response.jsonRpc().getError()).isEqualTo(JsonRpcError.METHOD_NOT_FOUND);
}
}
Loading