Commit Graph

159 Commits

Author SHA1 Message Date
Stanisław Drozd 2ea41b8176
[WIP] Pr/drozdziak1/p2w batching/5e704f8b (#877)
* ethereum: p2w contract -> p2w emitter, fill in essential envs

Change-Id: I6fa9364a96738d2cc02ec829a31fedba0586d8e8

commit-id:0a56f1f8

* Add p2w-relay, a p2w-sdk integration test

commit-id:6bfab639

* p2w-sdk: Expand README

Change-Id: I17cb547d6aaddc240588923561c26d11a787df2e

commit-id:6ebd6a22

* p2w-sdk: don't build ETH contracts, only the types

Change-Id: I7cbd18328227700635d7688aa24a9671e8919fcd

commit-id:adf079f7

* p2w: configurability and sane envs

commit-id:f10fd90e

* Solitaire: Implement Option<T> support in structs

commit-id:31aa12d6

* bridge/governance.rs: Stop pestering about EMITTER_ADDRESS

commit-id:d5bd7234

* p2w-attest: price batching

This commit introduces support for multiple Pyth product/price pairs
per call. The initial maximum batch size is 5 and is enforced using a
`P2W_MAX_BATCH_SIZE` constant.

solana/pyth2wormhole/program:
* On-chain batching logic
* Batch message parsing logic

solana/pyth2wormhole/client:
* Off-chain batching logic - divides any number of symbols into
largest possible batches
* Use a multi-symbol config file instead of CLI arguments

third_party/pyth/p2w-sdk:
* Expose batch parsing logic

third_party/pyth/p2w-relay:
* Comment out target chain calls until ETH contract supports batching
* Test the batch parsing function

third_party/pyth/p2w_autoattest.py:
* Generate and use the symbol config file  with pyth2wormhole-client

third_party/pyth/pyth_publisher.py:
* Add a configurable number of mock Pyth symbols
* Adjust HTTP endpoint for multiple symbols

commit-id:73787a61

* p2w-attest: mention attestation size in batch

This commit ensures that no matter the attestation format, a batch
will never contain attestations of different sizes. This guarantee
enables forward compatibility by adding new constant-size fields at
the end of a batch at all times. An older implementation will simply
not consume the remaining newer values while respecting the stated
batch member alignment.

commit-id:210da230

* pyth2wormhole-client: use fresh blockhashes, harden batch errors

This commit makes sure we don't have to deal with expired transactions
due to stale blockhashes. The problem existed with larger symbol
configs as well as on Solana mainnet. Additionally, the attestation logic
now treats transaction errors as non-critical - a failure for a batch
does not prevent attestation attempts for batches farther in the queue

commit-id:5e704f8b
2022-02-23 19:12:16 +01:00
Jeff Schroeder b54b7e1183 node: add fantom support
Only run in testnet until the contracts are deployed to mainnet.
2022-02-15 13:51:11 -05:00
Evan Gray fd62d71f61 feat: tilt labels
fix: terra dependencies
2022-02-14 07:56:38 -05:00
Evan Gray 075defa634 feat: improve bridge_ui tilt
properly cache npm ci in Docker container image
support hotloading outside ci
2022-02-14 07:56:38 -05:00
Evan Gray bb1402367c fix: terra-contracts readiness 2022-02-14 07:56:38 -05:00
lbqds 91af50ee5d Fix devnet terra lcd host 2022-02-09 12:07:38 -05:00
chase-45 28c713a6dd
Tilt tests (#688)
* tests run in tilt / ci

* changed bridge_ui test process

* tests use kube proxy when in ci

* fix: allTests.sh permission

* fix: bridge_ui dockerfile sha for amd64

* fix: bridge_ui should use cra test

* fix: ci tests

Co-authored-by: Evan Gray <battledingo@gmail.com>
2022-02-08 03:55:10 -05:00
jumpsiegel f90ed66ca0
Stub out algorand support in wormhole (#611)
* Stub out algorand support in wormhole

  1) Introduce the algorand chain constant in all the appropriate places
  2) Deploy pyth/hernandc algorand smart contracts into devnet
  3) Fund all the correct contracts for devnet testing

Change-Id: I6e4402b5b21223b32ea89653f8c7606f5c7f2843

* pr/jsiegel/algorand-v1: ALGORAND is not a EVM chain @ gusc1a-ossdev-jsl1

* pr/jsiegel/algorand-v1: fix lint @ gusc1a-ossdev-jsl1

* pr/jsiegel/algorand-v1: put the requirements into the image @ gusc1a-ossdev-jsl1

* jsiegel/algorand: make the watcher hang forever @ gusc1a-ossdev-jsl1

* jsiegel/algorand: comment these out @ gusc1a-ossdev-jsl1

* jsiegel/algorand: put this back in @ gusc1a-ossdev-jsl1

* jsiegel/algorand: fix guardian example @ gusc1a-ossdev-jsl1

* Generate teal source code

commit-id:a537a109

* jsiegel/algorand: it builds @ gusc1a-ossdev-jsl1

* pr/jsiegel/algorand-v1: add Dockerfile.teal @ gusc1a-ossdev-jsl1

* jsiegel/algorand: improve the dependencies @ gusc1a-ossdev-jsl1

* pr/jsiegel/algorand-v1: Fix up build @ gusc1a-ossdev-jsl1

* dead file

* pr/jsiegel/algorand-v1: remove more stuff @ gusc1a-ossdev-jsl1

* pr/jsiegel/algorand-v1: fix build @ gusc1a-ossdev-jsl1

* pr/jsiegel/algorand-v1: freeze the requirements @ gusc1a-ossdev-jsl1

* pr/jsiegel/algorand-v1: Fix teal to use pipenv @ gusc1a-ossdev-jsl1

* pr/jsiegel/algorand-v1: fix miss-merge @ gusc1a-ossdev-jsl1

Co-authored-by: Leo <leo@certus.one>
2021-12-22 11:22:04 -05:00
Leo 3c1ee3bdc3 node: add oasis support
commit-id:31eeeb35
2021-12-20 20:57:11 +01:00
justinschuldt 8931153f7e BigTable: PubSub trigger after decoding payload
Change-Id: Ie46903be7d41c27778babbeb864f3e4adf001825

commit-id:cee21010
2021-12-20 16:56:56 +01:00
justinschuldt f23afd88c0 BigTable: column families for secondary data
Change-Id: I3d9514b21b7cd95ed16c65a2bd3c2e951ae36802

commit-id:5c9a7e93
2021-12-20 16:56:56 +01:00
justinschuldt 024ced81d9 PubSub infra for bigtable data enrichment
Change-Id: Ide08774960ad7e9dee04090bc990be49357c79a2

commit-id:928fad6e
2021-12-20 16:56:56 +01:00
Leo 537d56b37a devnet: avalanche fix
commit-id:3ab70784
2021-12-15 00:16:18 +01:00
justinschuldt fc1e162f3b devnet: simplify cloud function setup
Change-Id: I931501aa5162569785cb078a546dc44a3741de08

commit-id:26e9ff05
2021-12-14 17:47:14 -05:00
Leo 4fef42a5a3 Add experimental e2e browser fixture
commit-id:5e9d35a3
2021-12-13 15:38:17 +01:00
Leo e4802d42d7 devnet: add algorand sandnet
As far as I can tell, both primary and node are happy. We can't use
https://github.com/algorand/sandbox since it makes too many
assumptions about its environment (docker-compose, interactive
development vs. reproducible CI usage).

Instead, use the official mainnet Docker images and ship our own config.

Caveat: "goal network create" is not reproducible and each Docker
build will generate a new set of root keys. We can presumably avoid
this by hardcoding the output of "goal network create"
(using --noimportkeys to avoid having to vendor a SQLite DB.. we'd
just re-import them to kmd at runtime, which is what goal is doing
internally: f51d2d7d5a/netdeploy/networkTemplate.go (L131))

Change-Id: I8c99c6150c9c244c9f12b68a58184c2d5697cee8
2021-12-09 11:54:17 +00:00
Chase Moran 05425a96df examples: native swap
Change-Id: Ia7bf98bac2b4a0daa5541f09a9c9e4b1e2d56bba

examples: rest_relayer, add support for all chains

Change-Id: Idbcf48f4c891383e16a9f1f460d6e02aa3149a48
2021-12-08 14:51:19 +00:00
Leo bc48b1b51d node: add spy service
Change-Id: Ieb04e6d26c7778d8a8afbbeaee79d764d9f2cd31
2021-12-03 02:01:56 +01:00
Stan Drozd 05edb3d14f pyth2wormhole: rename p2w-client service to p2w-attest
Change-Id: I34a53146919c12ab41b958cc8cd57108ee509faa
2021-11-15 15:22:29 +00:00
Evan Gray 71e6fa7f6f bridge_ui: fix testnet build and tilt
Change-Id: Iee2e07e1d85b0da14826ce280833be15d28b62ca
2021-11-05 19:52:43 +00:00
justinschuldt a956e570fb run bridge_ui in devnet
Change-Id: Id48de471bffda421a6ae70d15c66e7c5477fc1d1
2021-10-27 21:16:07 +00:00
Leo c64576cc0b node: add Polygon support
Change-Id: Ia919861879eb6c831d4dd9ccbe1748e7123502e5
2021-10-21 10:11:21 +00:00
justinschuldt 71dbe80aae BigTable historical queries
- Add Cloud Functions:
  - "Recent" gap list, can filter and/or group by chain or address.
  - "Totals" counts 24h, 30d, rolling daily. can filter and group.
  - "Transaction" lookup row by chain-native transaction identifier.

- Pad sequence in rowkey to fixed length, for sequential row order.

- Add Cloud Function deploy instructions.

- Fix #410 Buildpack image cleanup

Change-Id: Ifa3110a3d58e2f94adb48ccb451c27ab3add0611
2021-10-13 16:20:10 +00:00
Evan Gray 4bdb714594 bridge_ui: support multiple evm bridges
Change-Id: I3c416955e3e01707eec29404a483b1c223bffef4
2021-10-06 16:10:40 +00:00
Leo 3ad6ad2cdd devnet: fix grpc-web Tilt route and remove envoy
Change-Id: I8fd49b32b7b0d8ad9724b920d59e64024c183faa
2021-10-06 12:41:58 +02:00
Leo 3738d010c7 node: bump dlv for Go 1.17 compat and expose it via Tilt
Drive-by fix Tiltfile formatting.

Change-Id: I4455db1a5dd8096beae586e119fee119e61a09ba
2021-10-06 12:41:58 +02:00
Reisen 2163f420c9 terra/devnet: update to bombay network
Change-Id: I2169adc1b0df9103b10dc50ba6e7470e38ad8fe9
2021-10-04 16:41:31 +00:00
Leo bd5f957e1b node: remove unused terraChainID command line flag
Change-Id: I5f02faa3f00098725e7242c289f65978c4879c3c
2021-10-03 21:03:43 +02:00
Hendrik Hofstadt 18f3262b89 Add second eth devnet to emulate bsc
Change-Id: Ia28078cdd843540bc6d5d2a3db4787637c752245
2021-09-30 15:00:27 +00:00
Leo ef0cb91ac6 Tiltfile: optional pyth and explorer deployment
This adds the explorer and Pyth as optional components to improve
Tilt startup times, as originally suggested by Justin.

Defaults to true in CI.

Change-Id: Id9fffe5b11311baadc042815c0cc747de037554e
2021-09-13 17:51:47 +00:00
Hendrik Hofstadt 88933d13e2 Build token migration program
Change-Id: I78b10931fb09f5bca457c1fb36095fdbcea9e65f
2021-09-13 14:01:16 +00:00
Hendrik Hofstadt 6ff21f8d01 add ethereum NFT bridge
Change-Id: I5cc8cfe431f5f9b043adc7baf662760ffe9e7a35
2021-09-10 23:43:14 +00:00
Stan Drozd f24f86adf5 pyth2wormhole-client: Run an automated attestation script in Tilt
Change-Id: Id2e6def6c246862601a206084867c5f1b26a6673
2021-09-09 17:24:32 +02:00
Stan Drozd 78cd4ee437 pyth2wormhole: build + deploy program into local devnet
Change-Id: I82acc6755476229d97ad20e73f4ed08b27d98ecf
2021-09-09 14:39:31 +02:00
chase-45 a79ef81721 fixed non-deterministic terra dev environment items
Change-Id: Ie97c43a4f6fb562e9b546793d216a1be2ba302eb
2021-09-07 16:17:30 -04:00
Leo d04e716619 explorer: fix build and re-enable in CI
This adds a readiness probe, such that future breakage would be
detected in CI. It also fixes build caching.

Fixes certusone/wormhole#378

Change-Id: I4e929b491bba62b893eec9975f477256eecde6aa
2021-09-06 19:54:11 +00:00
Leo 4ac19518bd node: remove remaining "bridge" mentions
Ensure there's no core vs. token bridge ambiguity.

Breaking changes to the CLI:

* "guardiand bridge" CLI is now "guardiand node"
* --solanaBridgeAddress is now --solanaContract
* --bridgeKey is now --guardianKey

The Heartbeat proto message had one of its fields renamed from
BridgeAddress to ContractAddress, but this won't break the wire
format and the only consumer appears to be the CLI.

Change includes a "go mod tidy" - it insisted.

Change-Id: Id8b312827737f07f2d5f3944ebce469d946e7f51
2021-08-31 08:58:17 +00:00
Reisen a69d76494c devnet: add terra chain registrations
Change-Id: Icc45674147b42d462e6e4b89c8cd43f9d1ddb49e
2021-08-30 11:11:38 +00:00
justinschuldt 986b4b58f1 Add bigtable to devnet
- Add development BigTable instance

- Devnet Guardians save to local bigtable automatically

- Cloud Functions run in devnet containers

Change-Id: I9fa32a06b24218cf5c9c01cdff6f37c67e8d1e7c
2021-08-25 14:01:31 +00:00
Leo aeb673a164 Add presubmit CI test that runs "tilt ci"
- Use "npm ci" instead of "npm install" in a couple of places.

- Migrate generate-wasm.sh to a Dockerfile so it can be cached.

- Disable namespace creation and explorer build in CI.

Change-Id: I2e6ee806438863ca81ada701e14684f9f4cc0a76
2021-08-24 17:08:36 +02:00
justinschuldt cf980cf290 devnet Guardian fix
Change-Id: I8fbcc60295e42e9bcc947d9e047cde760515785c
2021-08-24 13:10:46 +00:00
Stan Drozd a97a34e174 Add a test pyth instance
Change-Id: Ifa5b50fb80f01f386fc8079eec3a0564df8072e1
2021-08-18 12:54:11 +02:00
Hendrik Hofstadt e59a36663a Initialize spl token metadata for new wrapped assets
Change-Id: Ic42f00a1e07db3a5b073f36c4453bef953a15fe8
2021-08-11 16:10:47 +02:00
Hendrik Hofstadt 597aae7cd7 Automatically register eth and solana token bridges
Change-Id: I35efef8d53f999f85ca2e8c4f58cc6cbf8193b2d
2021-08-06 15:21:27 +00:00
jschuldt 9e16baa040 Devnet arguments for BigTable connection.
Change-Id: Idc893dc87739d1b309ffefcc67d98641f4bccd9a
2021-08-05 12:53:56 +00:00
Leo 8da1eaa6b1 node: add REST proxy for publicRPC service
Bug: certusone/wormhole#282
Change-Id: I2aebd60b8839c59705ad1ab3425462ccaefc7e13
2021-07-31 03:03:37 +02:00
Hendrik Hofstadt dd5388a748 Add CPI proxy
Change-Id: Iba395084fe0cf5ebd4e1cd7bb3515c6c1f7e8756
2021-07-29 17:40:15 +02:00
Hendrik Hofstadt d33738e179 Make the token bridge work
Change-Id: Ic34f87c09dfaa91d7bf5793e83da9f06abd2fa3f
2021-07-29 17:21:17 +02:00
Hendrik Hofstadt 1135fdacd1 Deploy terra FCD and test token
Change-Id: I0027b450c701031929b4aaba4941738d82c4247d
2021-07-29 14:50:04 +00:00
Leo cf9ea6bfde node: add Binance Smart Chain support
BSC is identical to Eth, so we can just re-use our Eth devnet.

Fixes certusone/wormhole#185

Change-Id: Ib96a71b5e5873d7cbd8f26dbb655049c6a64cef9
2021-07-28 16:34:24 +00:00
Leo 7728b47659 devnet: fix Ready state delay by switching to readinessProbe
This works around an apparent k8s bug where startupProbe does not
respect periodSeconds.

Instead, use a readinessProbe.

Change-Id: I43251284db336ea5ade5b1735a867cf294a7b1c4
2021-07-28 14:59:48 +02:00
Leo 818e23ddca devnet: increase eth tests timeout
60s is not enough on my machine, causing deployment to fail.

Change-Id: Iee6d81ab8251d466a6429ea0555306a50deba34b
2021-07-28 13:37:18 +02:00
Hendrik Hofstadt 047e9deabb Deploy test token to devnet
Change-Id: Id5494802cedcb6eb41c04d366e84f051f42c225e
2021-07-28 08:52:41 +00:00
Leo e58730168d node: add no-op required dataDir flag
Change-Id: I8090550bbfb26686dcc5f30c3c3dcd66aae8ec10
2021-07-21 19:52:51 +00:00
Leo abe95522b1 node: remove terra fee payer argument
Forgot this when cleaning up the Terra submitter

Change-Id: Ied5af6570decf68e5e29c0d793da5e02509a2245
2021-07-21 18:41:42 +02:00
Hendrik Hofstadt c0228415f8 Fix devnet
Change-Id: I1d62e6323cc2169cce43581f9aeefb537bc84a76
2021-07-20 23:34:37 +02:00
Leo ce6b39e3be devnet,docs: remove agent build and deployment
Change-Id: I04ab07f6db21918297e891de5475f61d22f58cc5
2021-07-20 23:17:47 +02:00
Leo d509693367 node: remove Solana VAA submitter and agent connection
Change-Id: I6201b00f3cbf9f0fee0cc14ce8fdc8ca8583ce97
2021-07-20 23:17:47 +02:00
Hendrik Hofstadt af4e29978d Add commitment level to VAAs
This allows requesting attestations for various commitment/confirmation levels. This is helpful for low-latency applications like Pyth.

Change-Id: Ib49ace163365106b227613d2f66b787b3e5f5461
2021-07-19 07:11:45 +00:00
Hendrik Hofstadt 0004dd6c2a Reimplement terra bridge in guardian software
Change-Id: Ic57d0ae91355d2415f13657f463e8929212b1c97
2021-07-05 18:02:04 +00:00
Hendrik Hofstadt 3c5deee7ee Fix devnet for new contracts
Change-Id: I5b7536884ce3d1bdf39a21a8b71b6a848ad0380f
2021-07-02 13:02:35 +02:00
Hendrik Hofstadt 22373b9943 Fix eth and solana deployment in tilt devnet
Change-Id: Iee032e92373c56d876e6fc1626b0f1af54046834
2021-06-22 18:17:18 +00:00
jschuldt 0e602ed91d Add explorer web app and web proto codegen
- update buf to latest to support ts-proto plugin

- add NodeJS dev dependency for web-proto codegen

Change-Id: I881f9da7461d5d4ff28a64304a2adc33037598d1
2021-06-02 16:05:16 +00:00
jschuldt a3ed2fbd72 Add gRPC proxy for guardian's publicRPC interface.
Change-Id: Iafdf57536724b2eaaec1c62132717ab9019b177d
2021-05-24 19:23:18 +00:00
jschuldt 16157d339d Add publicrpc endpoint for external clients.
- Distribute raw heartbeats via new proto package publicrpc

- Manage channel subscription on client req/close.

- Expose publicprc endpoint in devnet Service.

Change-Id: Ic96d624733961aa56e00b03c3b5cff6af11523a4
2021-05-24 13:38:58 -05:00
Leopold Schabel cc3482a607
Replace third_party/solana by solana-test-validator (#197)
We no longer need to carry a patch and build Solana, and can use
solana-test-validator (with sleepy PoH!) instead. This significantly reduces
build times and will make downstream testing much easier.

Also remove the remnants of do.sh and the old BPF toolchain.

Test Plan: Ran E2E tests.
2021-04-07 20:16:19 +02:00
Leo b5d8993f44 devnet: Add new command line flags for native Solana poller 2021-01-21 11:40:58 +01:00
Leo 8b10b96362 solana: use clap for command line arguments 2020-12-06 22:45:45 +01:00
Leo 60b5117fbb Enable Terra support in devnet by default 2020-12-03 16:31:53 +01:00
Yuriy Savchenko e8b411107d
Terra contract deployment moved to a separate k8s job (#130)
* Terra contract deployment moved to a separate k8s job

* terra-contracts job moved to the terrad stateful set as a sidecar, terra test addresses added to DEVELOP.md
2020-12-03 14:37:23 +01:00
Yuriy Savchenko cc412605c7
Terra key moved out from env variable, VAA submission on Terra made async (#129)
* Terra fee payer key moved from environment variable into the separate file

* Removed closed issues from the comments, VAA submition made async

* Review comments fixed
2020-11-30 19:24:39 +01:00
Yuriy Savchenko a77f89f646
Terra configuration moved to docker image instead of config maps (#128)
* Terra configuration moved to docker image instead of config maps
2020-11-30 12:34:31 +01:00
Leo c31777d1b3 e2e: add bidirectional end-to-end tests 2020-11-29 17:07:15 +01:00
Leo 45837241ed devnet: add readiness checks to most components 2020-11-29 17:07:15 +01:00
Leo 561852d499 bridge: simple readiness check 2020-11-29 17:07:15 +01:00
Leopold Schabel 8306a83833
solana/agent: listen on UNIX socket (#122)
This allows us to use UNIX filesystem permissions for access control.

Previously, any process in the network namespace could connect to it,
which is insecure for obvious reasons.

Verified that correct permissions are set:

```
# ls -lisa /run/bridge/
total 8
31996269 4 drwxrwxrwx 2 root root 4096 Nov 23 21:58 .
14676759 4 drwxr-xr-x 1 root root 4096 Nov 23 21:58 ..
31996306 0 srwx------ 1 root root    0 Nov 23 21:58 agent.sock
```

Fixes #119
2020-11-24 09:48:44 +01:00
Yuriy Savchenko ee5d07c929
Fixes to VAA submission to Terra smart contract (#115)
* Terra smart contract binary interface changed from vector to base64 string

* Added initial guardian set submission to Terra
2020-11-19 20:05:05 +01:00
Leo 7545d2b803 terra: disable in production mode
ghstack-source-id: c22885f121
Pull Request resolved: https://github.com/certusone/wormhole/pull/103
2020-11-19 12:57:21 +01:00
Leo d9f8174d76 bridge: implement bridge key serialization
ghstack-source-id: f218021514
Pull Request resolved: https://github.com/certusone/wormhole/pull/90
2020-11-19 12:57:21 +01:00
Leo da768a09c4 ethereum: mine ganache blocks in the background
Fixes #75.
2020-11-18 13:56:56 +01:00
Leo 3264f7622d terra: split and clean up k8s configs 2020-11-16 17:45:17 +01:00
Yuriy Savchenko 1ca2e29916
Terra support added (#79)
This commit adds initial support for the Terra blockchain.
2020-11-16 13:28:07 +01:00
Leo db63c3efbc web: integrate with Tilt deployment 2020-11-10 19:39:32 +01:00
Leo a4058512d5 bridge: migrate cmd/ to cobra
Reviewer note: Does not touch any of the business logic. Avoided
renaming files whereever possible to make it easier to spot differences.

Verbatim migration, in a future CL, we could replace some of the
flag validation code with cobra features and eliminate the global vars.

Moved the dlv tool definition out of the way for the top-level wrapper.

tools/bin/cobra is a helper utility that generates boilerplate
(we slightly deviate from their default scheme by having guardiand
in a separate package, rather than stuffing everything into cmd/)

ghstack-source-id: caec9a38a6
Pull Request resolved: https://github.com/certusone/wormhole/pull/67
2020-10-28 22:47:12 +01:00
Leo 509d9c3d73 bridge: use mlockall(2) to prevent pages from being swapped out
The extra capability is harmless and is, at worst, a DoS risk.

ghstack-source-id: d30b50dbca
Pull Request resolved: https://github.com/certusone/wormhole/pull/55
2020-10-22 16:51:56 +02:00
Leo d877e975fc devnet: disable dlv by default 2020-10-22 12:55:24 +02:00
Leo 174003f879 devnet: fix dlv command line 2020-10-22 12:39:07 +02:00
Leo c698d4e3b9 bridge: in-place debugging using dlv
Optional support for in-place debugging using an external
IDE debugger. Disabled by default.

The dlv binary is always compiled in the Dockerfile -
this is cheap due to it only depending on go.mod.

ghstack-source-id: 58532e3017
Pull Request resolved: https://github.com/certusone/wormhole/pull/44
2020-10-22 12:20:11 +02:00
Leo c65d221ab3 Run devnet_setup.sh as solana-devnet sidecar 2020-08-22 10:52:51 +02:00
Leo 86ccc1c617 Solana devnet fixtures and lockup generator 2020-08-21 20:48:58 +02:00
Hendrik Hofstadt 549f7ad69c solana: track time on lockups 2020-08-21 19:51:45 +02:00
Hendrik Hofstadt a8d2f36a12 agent: inject static account key 2020-08-21 18:10:54 +02:00
Hendrik Hofstadt dfa8f64de0 devnet: set correct bridge id 2020-08-21 12:47:53 +02:00
Leo 9bb44eb0f5 Enable VAA submission to Solana 2020-08-21 00:06:38 +02:00
Leo f1f2d0c8b8 Solana VAA submission stub 2020-08-20 21:48:58 +02:00
Leo d1c86a0eaa bridge: use new eth devnet addresses and keygen 2020-08-19 17:38:55 +02:00
Leo d6ef9c932c bridge: listen to eth lockups and aggregate signatures from all nodes
Improved devnet setup to generate deterministic node and guardian keys.

Devnet setup routine that configures a dynamic guardian set on Ethereum.

Configurable number of nodes in Tiltfile.
2020-08-19 14:24:38 +02:00
Leo c44dcb24c9 Tiltfile: disable broken agent build 2020-08-19 11:58:00 +02:00
Leo 955bcc93fe bridge: devnet guardian key generation 2020-08-17 18:20:28 +02:00
Leo e548bbbee3 devnet: add send-lockups.js truffle script to generate test lockups 2020-08-17 16:31:48 +02:00