* 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>
* initial commit
* cleanup, spacing fixes
* update copy
* responsive footer
* logo link
* router link active underline
* fix side-by-side padding
* app card links
* initial network table
* sort guardians
* network selector
* add envs to unbreak deployment
* 404
* wip explorer
* recent messages list
* fix activeNetwork context init
* add Oasis and Avalanche utils
* add title to RecentMessages
* add explorer ChainOverviewCard
* add explorer PastWeekCard
* save exact versions of npm packages
* add explorer search functionality
* mvp
* remove dupe page
* add basic social images
* add social sharing metadata
* update development siteUrl
* test with example prod url
* fix social card name
* update number of chains
* decode payload with WASM
* updated copy
* fix index portal link
* prod .env variables
* show more recent messages for chain or contract
* fix decodePayload summary
* delete explorer v1
* fix explorer dockerfile
* fix explorer serve settings for devent
* remove proto-gen-web for explorer
* rm proto-gen-web for explorer
Co-authored-by: Evan Gray <battledingo@gmail.com>
Co-authored-by: Evan Gray <56235822+evan-gray@users.noreply.github.com>
* 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>
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
This helps avoid expensive rebuilds when rebasing while working on
components like guardiand.
User can manually click "Apply" to update resources or set it back
to TRIGGER_MODE_AUTO via the UI for individual components.
Change-Id: I66697ddefb6c305493ca8cc53eba2a0e9cdd1b09
- 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
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
This adds a readiness probe, such that future breakage would be
detected in CI. It also fixes build caching.
Fixescertusone/wormhole#378
Change-Id: I4e929b491bba62b893eec9975f477256eecde6aa
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
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
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
- Explorer page fetch data from hosted Cloud Functions.
- Network page use GetLastHeartbeats rather than gRPC stream.
Change-Id: I57dce2ee0b84c4b31fcf7308855668a139ffe20e
- Add development BigTable instance
- Devnet Guardians save to local bigtable automatically
- Cloud Functions run in devnet containers
Change-Id: I9fa32a06b24218cf5c9c01cdff6f37c67e8d1e7c
- 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
- update buf to latest to support ts-proto plugin
- add NodeJS dev dependency for web-proto codegen
Change-Id: I881f9da7461d5d4ff28a64304a2adc33037598d1
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.
* 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
* 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
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
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.
- Build buf and protoc-gen-go and use it to build Go proto packages
- Rename agent proto package to agent.v1 (to prevent namespace collisions and conform to buf's standards)
- Default to DOCKER_BUILDKIT=1 for CI setup
- Add incremental Docker build for solana/agent
- Move build machinery to top level