-
Notifications
You must be signed in to change notification settings - Fork 286
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(cactus-plugin-ledger-connector-ethereum): add new connector plugin
Add new plugin for connecting with Ethereum ledgers. New connector is based on already existing quorum connector. The main reason for introducing yet another plugin is a need for web3js upgrade (to 4.X) which is imposible in current quorum / besu connectors due to dependency to `web3js-quorum` which requires web3js 1.X. We have plans to make web3js library pluggable and reduce code duplication among other connectors in the future, but it will be delivered later on in a separate PR. Changes: - Add new plugin based on quorum connector. - Removed private transaction and other quorum related functionalities. - Update web3js to 1.10 - will be updated to 4.X in a separate commit. - Add missing `web3-eth-contract` dependencies to besu and xdai connectors. - Add new connector to cactus-verifier-client - Add integration tests in `cactus-test-plugin-ledger-connector-ethereum` (based on similar ones for quorum connector.) - Add new connector to CI. - Add `web3*` 1.5.2 dependencies to root `package.json` because they are already required in a root level (by `typings/web3js-quorum`). Ideally this could be put into another package (quorum connector?) and have the dependencies there, but for now I think it's important to be explicit about it since it's easy to mess up if wrong web3js library is hoisted up from any monorepo package. - Sort main `package.json` - Remove tap test scripts from the root `package.json` - they don't use `.taprc` and cause bunch of errors when they try to execute jest tests. This is confusing for the users because of all false negative errors printed. - Reorganize jest config and taprc to keep tests from quorum and ethereum conenctors grouped. Closes: #2534 Signed-off-by: Michal Bajer <[email protected]>
- Loading branch information
Showing
80 changed files
with
14,499 additions
and
53 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -970,6 +970,35 @@ jobs: | |
restore-keys: | | ||
${{ runner.os }}-yarn- | ||
- run: ./tools/ci.sh | ||
cactus-plugin-ledger-connector-ethereum: | ||
continue-on-error: false | ||
env: | ||
FULL_BUILD_DISABLED: true | ||
JEST_TEST_PATTERN: packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/(unit|integration|benchmark)/.*/*.test.ts | ||
JEST_TEST_RUNNER_DISABLED: false | ||
TAPE_TEST_PATTERN: >- | ||
--files={./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/openapi/openapi-validation-no-keychain.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/openapi/openapi-validation.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/v2.3.0-deploy-contract-from-json-json-object-endpoints.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/v2.3.0-deploy-contract-from-json-json-object.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/v2.3.0-invoke-contract-json-object-endpoints.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/v2.3.0-invoke-contract-json-object.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/v21.4.1-deploy-contract-from-json-json-object-endpoints.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/v21.4.1-deploy-contract-from-json-json-object.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/v21.4.1-invoke-contract-json-object-endpoints.test.ts,./packages/cactus-plugin-ledger-connector-ethereum/src/test/typescript/integration/plugin-ledger-connector-ethereum/deploy-contract/v21.4.1-invoke-contract-json-object.test.ts} | ||
TAPE_TEST_RUNNER_DISABLED: false | ||
needs: build-dev | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Use Node.js v16.14.2 | ||
uses: actions/[email protected] | ||
with: | ||
node-version: v16.14.2 | ||
- uses: actions/[email protected] | ||
- id: yarn-cache-dir-path | ||
name: Get yarn cache directory path | ||
run: echo "::set-output name=dir::$(yarn cache dir)" | ||
- id: yarn-cache | ||
name: Restore Yarn Cache | ||
uses: actions/[email protected] | ||
with: | ||
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
path: ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
restore-keys: | | ||
${{ runner.os }}-yarn- | ||
- run: ./tools/ci.sh | ||
cactus-plugin-ledger-connector-quorum: | ||
continue-on-error: false | ||
env: | ||
|
@@ -1371,6 +1400,33 @@ jobs: | |
restore-keys: | | ||
${{ runner.os }}-yarn- | ||
- run: ./tools/ci.sh | ||
cactus-test-plugin-ledger-connector-ethereum: | ||
continue-on-error: false | ||
env: | ||
FULL_BUILD_DISABLED: true | ||
JEST_TEST_PATTERN: packages/cactus-test-plugin-ledger-connector-ethereum/src/test/typescript/(unit|integration|benchmark)/.*/*.test.ts | ||
JEST_TEST_RUNNER_DISABLED: false | ||
TAPE_TEST_RUNNER_DISABLED: true | ||
needs: build-dev | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Use Node.js v16.14.2 | ||
uses: actions/[email protected] | ||
with: | ||
node-version: v16.14.2 | ||
- uses: actions/[email protected] | ||
- id: yarn-cache-dir-path | ||
name: Get yarn cache directory path | ||
run: echo "::set-output name=dir::$(yarn cache dir)" | ||
- id: yarn-cache | ||
name: Restore Yarn Cache | ||
uses: actions/[email protected] | ||
with: | ||
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
path: ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
restore-keys: | | ||
${{ runner.os }}-yarn- | ||
- run: ./tools/ci.sh | ||
cactus-test-tooling: | ||
continue-on-error: false | ||
env: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.