Commit Graph

70 Commits

Author SHA1 Message Date
Leo 2e0a225c23 scripts: add tilt-gcp-up.sh
Change-Id: Ifa4818f437ba00de3f11f5c468d6e7d9b552a24a
2021-12-02 19:04:08 +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
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
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
Hendrik Hofstadt 18f3262b89 Add second eth devnet to emulate bsc
Change-Id: Ia28078cdd843540bc6d5d2a3db4787637c752245
2021-09-30 15:00:27 +00:00
Stan Drozd 3e96438f4e pyth2wormhole: initial SDK skeleton
Change-Id: I8697ced892a1bf69f948c9743741d32a442a402f
2021-09-16 13:15:13 +00:00
Leo 9b106fb7be Tiltfile: default to just one guardian
Devnet doesn't currently work with multiple guardians.

Change-Id: I1500cc95e2c8002149fa78be94cf8e5b94770d1b
2021-09-13 18:20:33 +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
Stan Drozd f24f86adf5 pyth2wormhole-client: Run an automated attestation script in Tilt
Change-Id: Id2e6def6c246862601a206084867c5f1b26a6673
2021-09-09 17:24:32 +02: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 c00eef279b Tiltfile: disable explorer in CI
Pod appears to be stuck in a restart loop and lacks a readiness probe.

Change-Id: If051841625b02537f8a13a0d78cdd0ccd69f27e3
2021-08-31 08:58:17 +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
Leo 4f0759b8f2 Tiltfile: replace shell scripts by direct commands
This removes all locally ran shell scripts, which should hopefully
enable the Tiltfile to run without changes on Windows.

We lose the invariant of clearing the output directories, which
seems like a reasonable sacrifice for banishing bash.

Change-Id: I756928a25cada1b613ed9fda145809a414a46466
2021-08-26 12:59:20 +02:00
Leo 68be226c9d Containerize protobuf generation and remove node build dep
The Go dependency is still required to build the pack binary.

Use "tilt docker" to use Minikube's Docker instance, if available,
removing the local Docker dependency for Minikube users.

The Makefile continues to not require Docker and runs buf locally.

Remove broken Powershell scripts (can't test on Windows). These scripts
should now be substantially easier to write.

Change-Id: Ie80bf68e0e468a747861bea36fa5b353d9de110d
2021-08-26 12:41:22 +02:00
Leo e98463cfe3 node: rename bridge/ to node/
Calling guardiand a bridge dates back to v1 and no longer makes sense.

Change-Id: I27d24a5d7a64c3e37d6a5ce9c402c6248ad9c59e
2021-08-26 11:36:36 +02:00
justinschuldt cf36c9bfe0 explorer: lookup BigTable data
- Explorer page fetch data from hosted Cloud Functions.

- Network page use GetLastHeartbeats rather than gRPC stream.

Change-Id: I57dce2ee0b84c4b31fcf7308855668a139ffe20e
2021-08-25 14:01:31 +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
Stan Drozd a97a34e174 Add a test pyth instance
Change-Id: Ifa5b50fb80f01f386fc8079eec3a0564df8072e1
2021-08-18 12:54:11 +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
Leo 9c9c48ef3b Migrate proto generation to buf
Bug: certusone/wormhole#282
Change-Id: Ib20d8b9bcf19a26b12a586532281d83e95f0653e
2021-07-31 03:03:36 +02:00
Hendrik Hofstadt 1135fdacd1 Deploy terra FCD and test token
Change-Id: I0027b450c701031929b4aaba4941738d82c4247d
2021-07-29 14:50:04 +00:00
Leo 5ad3814575 devnet: split up proto generation in web and non-web
This avoids requiring npm for "make bridge"

Change-Id: I10de809a5d7064b53986acd39e52129db195a235
2021-07-21 19:04:04 +02:00
Leo ce6b39e3be devnet,docs: remove agent build and deployment
Change-Id: I04ab07f6db21918297e891de5475f61d22f58cc5
2021-07-20 23:17:47 +02:00
Leo 95473e1eb0 Tiltfile: remove fancy dependency graph
Too annoying to keep up to date

Change-Id: Idddb20168b009d3cb359f8e08e9e42f923471d3c
2021-07-20 23:17:47 +02:00
Leo 64c7ad9adc Tiltfile: reformat according to Bazel IntelliJ plugin
Change-Id: I3ce9f19411a68bc0866d87092c0a5e604fbe0b31
2021-07-20 23:17:47 +02:00
Leo aa417344c1 web: remove v1 web interface
Change-Id: Icaebf7f320f6460b65ee1cb62f854833c8f05cf1
2021-07-19 18:41:05 +02: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
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
Stanisław Drozd 6de425a990
BPF SDK hotfix and devnet startup improvement (#196)
* Tiltfile: Make the guardian k8s_resource depend on solana-devnet

This makes guardian network convergence faster as the guardian pods
don't have to suffer from increasing redeploy back-off delays. This
should impact performance neglibibly as solana-devnet is still the
heaviest build we perform (at the time of this writing saturating a
32-thread Ryzen 9 CPU on my build machine.)

* hotfix bpf-sdk: bump bpf-sdk; use cargo-build-bpf
2021-04-07 15:13:01 +02:00
Leo 14441680d0 bridge: add initial set of basic Prometheus metrics 2021-01-25 20:17:58 +01:00
Leo 594592e2f6 devnet: use wormhole namespace by default 2020-12-05 16:32:37 +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 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 fddbd01f9d solana: update Rust and Solana to latest stable releases
Unfortunately, the new release has a much chattier message_processor,
but we cannot do anything about that without losing value debug info.
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
Leo 36a025b088 Update to Go 1.15.5 to account for CVE-2020-28362 2020-11-27 19:20:07 +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 30f56e08ba Tiltfile: graph of build dependencies 2020-10-31 12:46:16 +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