Skip to content

Commit

Permalink
feat: add invoke write method to proxy (#3667)
Browse files Browse the repository at this point in the history
Description
---
Adds the ability for a validator node to proxy `invoke_write_method` requests from GRPC and send them to a node in the committee for that asset.

Motivation and Context
---
This allows a user using a local validator node to invoke methods on any asset that is registered on the base layer as long as the committee is still running and connectable.
  • Loading branch information
stringhandler committed Dec 19, 2021
1 parent f090887 commit 28f5864
Show file tree
Hide file tree
Showing 49 changed files with 808 additions and 8,048 deletions.
6 changes: 6 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@ commands:
- run:
name: Build stratum_transcoder
command: cargo build --release --bin tari_stratum_transcoder
- run:
name: Build validator node
command: cargo build --release --bin tari_validator_node
- run:
name: Run cucumber scenarios
no_output_timeout: 20m
Expand Down Expand Up @@ -82,6 +85,9 @@ commands:
- run:
name: Build stratum_transcoder
command: cargo build --release --bin tari_stratum_transcoder
- run:
name: Build validator node
command: cargo build --release --bin tari_validator_node
# Below step requires NodeJS v12 to run correctly, see explanation in WalletFFI.feature
- run:
name: Run FFI wallet library cucumber scenarios
Expand Down
66 changes: 37 additions & 29 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@ on:
- development
- main
- ci-*
- validator-node
pull_request:
types: [opened, reopened]
types:
- opened
- reopened
- synchronize

name: CI

Expand All @@ -16,25 +18,33 @@ env:
toolchain: nightly-2021-09-18

jobs:
fmt:
name: fmt
clippy:
name: clippy
runs-on: ubuntu-18.04
steps:
- name: ubuntu dependencies
run: |
sudo apt-get update && \
sudo apt-get -y install \
libssl-dev \
openssl \
libsqlite3-dev \
pkg-config \
git \
cmake \
zip \
libc++-dev \
libc++abi-dev \
libprotobuf-dev \
protobuf-compiler
libssl-dev \
openssl \
libsqlite3-dev \
pkg-config \
git \
cmake \
zip \
libc++-dev \
libc++abi-dev \
libprotobuf-dev \
protobuf-compiler \
libwebkit2gtk-4.0-dev \
build-essential \
curl \
wget \
libgtk-3-dev \
libappindicator3-dev \
patchelf \
librsvg2-dev
- name: checkout
uses: actions/checkout@v2
- name: toolchain
Expand Down Expand Up @@ -69,10 +79,18 @@ jobs:
run: |
sudo apt-get update && \
sudo apt-get -y install \
build-essential \
libgtk-3-dev \
libwebkit2gtk-4.0-dev \
libsoup2.4-dev
build-essential \
libgtk-3-dev \
libwebkit2gtk-4.0-dev \
libsoup2.4-dev \
curl \
wget \
libgtk-3-dev \
libappindicator3-dev \
patchelf \
librsvg2-dev \
libprotobuf-dev \
protobuf-compiler
- name: checkout
uses: actions/checkout@v2
- name: Caching
Expand All @@ -83,22 +101,12 @@ jobs:
~/.cargo/git
target
key: ${{ runner.os }}-${{ runner.cpu-model }}-${{ env.toolchain }}-${{ hashFiles('**/Cargo.lock') }}
- name: ubuntu dependencies
run: |
sudo apt-get update && \
sudo apt-get -y install \
build-essential \
libgtk-3-dev \
libwebkit2gtk-4.0-dev \
libsoup2.4-dev
- name: toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.toolchain }}
components: clippy, rustfmt
override: true

- name: cargo test
uses: actions-rs/cargo@v1
with:
Expand Down
Loading

0 comments on commit 28f5864

Please sign in to comment.