Commit Graph

131 Commits

Author SHA1 Message Date
Evan Gray 090a8e0c74 relayer: fix ci 2022-10-27 14:04:38 -04:00
Evan Gray 9623ca7321 ci: quieter node 2022-10-27 07:52:24 -04:00
Evan Gray 7ee3f6bcbc tilt: move wormchain guardian flags to tiltfile 2022-10-27 07:52:24 -04:00
Evan Gray 043d4511a1 tilt: default to minimal tilt 2022-10-26 08:06:59 -04:00
Evan Gray 3e20790349 tilt: make wormchain optional and add missing dep 2022-10-26 08:06:59 -04:00
Evan Gray dc119e2b3a ci: earlier sdk build 2022-10-26 08:06:59 -04:00
Evan Gray c834938f09 ci: remove e2e since there is no UI to test 2022-10-25 18:31:45 -04:00
Conor Patrick 91bd9a5c36 rename all wormholechain and wormhole-chain references 2022-10-24 17:59:52 -04:00
Csongor Kiss 12b855f3b1 tilt: add aptos 2022-10-15 15:17:36 +01:00
Justin Schuldt 0f73bb3b32 Tiltfile - add "spy" resource_dep 2022-10-07 00:52:02 -05:00
Chirantan Ekbote bad2b6c5c6 wormchain: Copy sdk directory into docker image
We want wormchain to use the vaa package from the sdk directory so copy
that into the image when building.  Also move the dockerfile into the
parent directory to be consistent with what we do for the other
dockerfiles that use the root directory as the context.
2022-10-03 17:34:42 +09:00
Chirantan Ekbote 7f4b0d1a09 Wormhole chain integration
This is a squashed commit of all the changes needed to integrate
wormhole chain into the main repo.
2022-10-03 17:34:42 +09:00
kev1n-peters c5d2f9d54d
sdk/js: Near refactor, added integration tests (#1648)
* near-sdk-refactor: Fix attest
                 : Fix missing function calls
                 : make near on near
                 : renamed tryHexToNativeStringNear

* near-sdk-refactor: bumped near-sdk-js version

Co-authored-by: Josh Siegel <jsiegel@jumptrading.com>
2022-09-28 08:53:15 -05:00
Jeff Schroeder 239e27ca91
Remove solana and pythnet websocket flags (#1649)
They're both unused since the solana watcher uses http and not a
websocket for getting info.
2022-09-26 14:56:39 +01:00
Chirantan Ekbote 9d7e56bbfc Don't run solana CI in Tilt
Now that we have a github action to run the solana checks we no longer
need to run it in Tilt.
2022-09-20 23:00:47 +09:00
Chirantan Ekbote 2d8ec345cd Move node Dockerfile to parent directory
The node package needs access to the sdk directory so move the
Dockerfile up one level so that both directories can be added to the
build.
2022-09-15 14:35:46 +01:00
justinschuldt 266eabcf6e Tiltfile - add guardian to ci-test's resources_deps 2022-09-09 12:05:27 -05:00
justinschuldt 5a55183837 Tiltfile - add algorand to guardian resource_depends 2022-09-09 12:05:27 -05:00
Christine Eun 2d2a4b63ac bridge_ui: remove 2022-08-25 16:57:57 -04:00
Josh Siegel 4fe9841810 near: initial commit 2022-08-24 15:11:05 -04:00
kev1n-peters 4f08f315f1
bridge_ui: Chain Governor support (#1421) 2022-08-15 09:18:01 -05:00
justinschuldt 2c52f86546 add Prometheus + Grafana for Guardian metrics 2022-08-04 16:03:56 -04:00
Evan Gray c2db111629 tilt: split out ci test containers 2022-07-15 14:36:46 -04:00
Evan Gray 90fe03012a tilt: build ci earlier 2022-07-15 14:36:46 -04:00
Evan Gray 061244dc17 sdk/js: publish separate wasm package 2022-07-13 10:04:23 -04:00
Evan Gray 37c20b547a sdk/js: publish separate proto packages 2022-07-13 10:04:23 -04:00
Evan Gray 59fd0d36c7 node: optional chains in tilt 2022-07-11 10:35:00 -04:00
Csongor Kiss f856240792
node: Prepare development binary release (#1332)
* node: Shrink final docker image size

* Tiltfile: guardiand should run the build stage

* node: allow building without -race

* node: Support development builds

A development build must use the --unsafeDevMode flag.

* CI: build docker image

Co-authored-by: Csongor Kiss <ckiss@jumptrading.com>
2022-07-06 19:27:49 +01:00
Evan Gray c3e7b33388 explorer: rm 2022-06-26 23:15:28 -04:00
Evan Gray db0fc219aa cosmwasm: terra2 support
Co-authored-by: Csongor Kiss <ckiss@jumptrading.com>
2022-06-21 10:03:57 -04:00
Evan Gray c7d8075555 cosmwasm: initialize 2022-06-21 10:03:57 -04:00
Chirantan Ekbote 66f031c51b Run token-bridge tests in CI
Update the dockerfile, tiltfile, and makefile so that the token-bridge
tests are included when running in CI.
2022-05-10 00:58:43 +09:00
Chirantan Ekbote efdc560976 Run solana tests in Tilt
Refactor the solana Dockerfile so that the solana release installation
is a separate stage and have the builder stage derive from it.  Add a
new "ci_tests" stage that also derives from the solana stage but runs
the integration tests instead.

Invoke the solana ci_tests stage from the Tiltfile when ci_tests are
enabled.
2022-05-10 00:58:43 +09:00
Evan Gray cc72c2a644 algo: contracts 2022-04-29 20:56:17 -04:00
Evan Gray 50bb184522
Spy relayer fixes (#1095)
* try catch pullAllEVMTokens

* remove some logs from walletMonitor

* redundant check fix, init s/f metrics

* fix unwrap for realz

* confirmed and rollback metrics

* fix terra balance fetching

* relayer: split out wallet monitor

* relayer: update tilt for wallet-monitor

* relayer: evm print tx hash before wait

* relayer: split out redis queue by source/target

* Update spy relayer example mainnet config files

* Includes Aurora bits in the emitter addresses, supported tokens,
  and supported chains.

Co-authored-by: Jeff Schroeder <jeffschroeder@computer.org>
2022-04-20 19:51:12 -04:00
justinschuldt 0a7168c107 move guardian-set-init.sh to docker/tilt 2022-04-12 20:37:52 -05:00
justinschuldt 648a5faa54 fixes for tilt ci 2022-04-12 20:37:52 -05:00
justinschuldt cd04836c4b add guardian-set-init.sh for tilt up --num=* 2022-04-12 20:37:52 -05:00
Csongor Kiss 4227dde53b Improve and document deployment&verification workflow 2022-04-11 21:29:39 -04:00
Jeff Schroeder 349fa42c58
Spy relayer cleanup (#1015)
* initial spy-relayer

* Update spy_relayer Dockerfile

* added example mainnet config files

* split out private keys into its own ENV variable

* Update spy relayer supportedChains.json

To remove the `walletPrivateKey` entries. All of the private keys have
been split out into their own json file.

* fixed evm private key env parse

* missing solana accounts report 0 balance, rather than error

* wallet address is logged in debug

* spy_relayer: enabled prometheus default metrics

Also set a prefix of `relayer_`

* spy_relayer: updates to the prometheus bits

* Use a single metric registry
* Use a simpler metric name and add labels for individual wallets

* spy_relayer: human readable app mode in the metrics

[ listener | relayer | both ]

* spy_relayer: unify metrics

* remove the collection of default metrics
* hardcode the `spy_relayer_` prefix on all custom metrics

* fixed dep arrays, nullable terra token/balance info

* attempt stack debug

* debug pullTerraBalance

* provider http or ws

* update sdk

* logging for tokenAddress is 0

* fix foreign address calc

* fix calcLocalAddressesTerra

* relayer/spy_relayer: update prometheus helpers

Add / url handler for the ingress-gce stupid load balancer that
doesn't support custom url healthchecks unless you make a BackendConfig
custom resource definition.

* logging refinement

* use chain name in prometheus

* adjust retry timeout calculation

* spy_relayer: update prometheus bits

* improved error handling

* relayer ui improvements

* prep sdk release

* use latest sdk, manual redeem button

* relaying ux improvements

* gas price fix

* shortened terra success log

* use gh base relayer list

* fix prometheus urls

* Update prometheus metric name

* only show TPS warning on mainnet

* show relayer fee in source preview

* fix unwrap check

* add native bool to balance metric

* logging improvements

* add feeRecipientAddress to redeemOnSolana

* gather solana fees

* remove relayer ws support

* add nativeCurrencySymbol to ChainConfigInfo

* fix solana native symbol

* demoteWorking option, logger contexts

* scoped logging

* bridge_ui: unwrap native

* add evm wallet monitor test

* solana vaa parsing fix

* add monitorRedis

* make Jeff's brain happy

* log demoting keys

* register redisQueue metric

* human readable redisQueue metric

* fix timestamp inconsistency

* use scopedLogger for the first level of workers

* pull wallet balances in parallel

* more scoped logging

* pick a solana fee

* moving keys log improvement

* update eth gas calculations based on recent txs

* use postVaaSolanaWithRetry

* split success and failures by chain

* fix using terraCoin

* check prom every 10s

* batch getting evm token balances

* batch calcLocalAddressesEVM

* debug worker logging

* log retry number

* support Polygon?

* reset status on demotion

* enhance!

* update avax fee

Co-authored-by: Chase Moran <chasemoran45@gmail.com>
Co-authored-by: Kevin Peters <kpeters@jumptrading.com>
Co-authored-by: Evan Gray <battledingo@gmail.com>
2022-03-28 23:39:08 -04:00
Justin Schuldt 42284a25e3 remote devnet config - GCP VM 2022-03-18 10:49:34 -05:00
justinschuldt 90489cc299 add guardian set updates to devnet
commit-id:a540b698
2022-03-18 10:49:34 -05:00
justinschuldt cff49549db cloud function housekeeping 2022-03-10 14:26:41 -06:00
Evan Gray a3272dce4a remove pyth2wormhole 2022-03-07 10:23:34 -05:00
Leopold Schabel f4f6589352
devnet: add --guardiand_debug flag (#890) 2022-03-03 21:17:47 +01:00
Evan Gray 695dcac26c support custom root ca 2022-03-01 12:35:27 -05:00
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
Leo b7ab34a1ee Tiltfile: remove outdated generate-protos.sh mention
commit-id:155067a3
2022-02-16 15:41:37 +01:00
Evan Gray fce0708e11 feat: use sdk in js client 2022-02-14 07:56:38 -05:00
Evan Gray fd62d71f61 feat: tilt labels
fix: terra dependencies
2022-02-14 07:56:38 -05:00