Commit Graph

128 Commits

Author SHA1 Message Date
Jason Matthyser 32f3b788ec
docs: update governor docs to reflect reset-release-timer change (#3999)
* docs: update governor docs to reflect reset-release-timer change

* docs: fix spelling mistake in governor docs

---------

Co-authored-by: Jason Matthyser <jason@asymmetric.re>
2024-06-28 21:06:46 +02:00
bruce-riley 624df192ad
Node/CCQ: Allow anything in testnet (#3966) 2024-06-07 08:13:07 -05:00
bruce-riley b93a54a547
Node/CCQ: Add gossipAdvertiseAddress option to proxy server (#3924) 2024-05-02 15:14:14 -05:00
bruce-riley dbe765811e
docs: Query proxy server operations manual (#3916)
* Doc: Query proxy server operations manual

* Review rework
2024-04-30 23:18:08 -04:00
Jeff Schroeder 21e2c87fe4
docs: Update operations docs (#3883)
* docs: always pull latest guardian image to run a spy

* doc: how to run the guardian node behind a NAT

Shoutout to @0xshipthecode and the RockawayX Infra team for helping test
and develop the patch for this in #3786.

* docs: add section to the ops docs on telemetry

This shows new guardians how to enable telemetry.

* docs: update wording on bootstrap peers

* docs: remove terra light client daemon comment

The lcd was built directly into the terra binary a long time ago and no
longer requires a separate service for the lcd. This happened more than
a year ago.

* docs: wh dashboard and the fly healthcheck

* mention the wormhole-dashboard github hosted instance
* mention how to run the fly healthcheck to verify a guardian

* docs: evm node requirements for archive nodes

* docs: section on cosmos / ibc connected chains

So that guardians know which nodes they need to run and which they can
rely on wormchain for.

* docs: split out the per-chain bits for terra

* Since wormhole supports 30+ chains now and not just 5 chains, the
  solana, eth, terra, bsc bits were removed
* The solana and terra content had the urls updated to reflect reality
  and moved into their own sections.
* Made a reference to docs.wormhole.com's constants reference for chains

* docs: clarify guardiand wormchain URL and ports

Also mention threshold signing via horcrux and using the sentry node
architecture to protect the validator from volumetric attacks.

* docs: adding wormchain useful commands

* docs: minor updates and ntt accountant enablement

* high level overview of how to enable the NTT Accountant
* emphasize all guardians need to run wormchain validators
* remove the reference to checking out a v2.x branch as the main branch
  is for wormholev2 now and has been for some time.

* docs: add section on ccq

* docs: cspell updates

* docs: remove default ccq port from operations.md

Review feedback from: @bruce-riley

* docs: review feedback

Co-authored-by: @evan-gray

* docs: operations wording clarification

* docs: update header in operations doc

Try to make things consistent for @evan-gray.

* docs: fix a small tyop
2024-04-30 23:14:01 -04:00
Jeff Schroeder 2712dd3f3f
node: upgrade to go 1.21.9 (#3855)
* node: update quic-go

Ran via:

    go get github.com/quic-go/quic-go@v0.42.0

* node: update mongo-drive dependency

Ran via:

    go get go.mongodb.org/mongo-driver@latest

* node: upgrade libp2p-go

Ran via:

    go get github.com/libp2p/go-libp2p@v0.33.1

Refs: #3863

* node: fallout from the go upgrade in the go.sum

Run via:

    go mod tidy

This updates the go.sum and removes unnecessary indirect references.

* docs: use go1.21.8

* github: use go1.21.8

Except for wormchain.

* node: update dockerfiles to use go 1.21.8

This was done with scripts/update-go-version.sh

* scripts: update linter dockerfile to use go 1.21.8

This was done with scripts/update-go-version.sh

* wormchain: update ibc-relayer to use go 1.21.8

This was done with scripts/update-go-version.sh

* scripts: add update-go-version.sh

This is a little helper to make updating the version of go a bit nicer.

* scripts: update-go-version.sh fixes

* set the default docker command to "dokcer"
* update the comment for the humongous sed command for dockerfiles

* github: fix go linting

* Upgrade golangci-lint to a version built with go 1.21.x. The older
  version was a binary version built with go 1.20.x and it was failing
  against the newer code built with go 1.21.x
* print the golangci-lint version in each run to see what version of go
  it was built with in case there are incompatibilties during the next
  upgrade
* remove the linter config skipping over pkg/supervisor entirely and
  instead put in an override to ignore the `unused` linter for the
  pkg/supervisor testhelpers bits for unsed test functions necessary
  to satisfy the test interface.

* scripts: update golang linter cli invocation

* github: use the latest version of golangci-lint

Because 1.52.2 is built with go 1.20.x which has issues with this project
now that it is upgraded to 1.21.8.

* node: remove implicit memory aliasing in a loop

Caught by an upgraded golangci-lint with the gosec linter:

    ::medium file=node/pkg/watchers/evm/connectors/batch_poller.go,line=226,col=8::G601: Implicit memory aliasing in for loop. (gosec)
    ::medium file=node/pkg/watchers/evm/connectors/batch_poller.go,line=285,col=8::G601: Implicit memory aliasing in for loop. (gosec)
    ::medium file=node/pkg/watchers/evm/connectors/batch_poller_test.go,line=128,col=37::G601: Implicit memory aliasing in for loop. (gosec)

See also: https://husni.dev/beware-of-implicit-memory-aliasing-in-go-foor-loop/

* node: update logging

* Update go to 1.21.9

Automated via:

    scripts/update-go-version.sh 1.21.9

* node: update test root context teardown time

Otherwise things get really sad.

* scripts: additions to update-go-versions.sh

* Standardized on prefacing functions with `function` for consistency
* Added a few more comments to explain how things work
* Automatically increment the go version and toolchain in go.mod
* Standardized on prefacing functions with `function` for consistency
* Make the go image debian version a variable for ease of maintenance

* node: update go.mod to specify 1.21.9

* node: update node tests

Review feedback from @pires

* scripts: run go mod tidy in update-go-version.sh

Required after running go mod edit or it refuses to build.

* node: update go.mod

Running `go mod tidy` removes the toolchain so the build works.

* node: update node tests

---------

Co-authored-by: Ryan Hamphrey <hamphreyryan26@gmail.com>
2024-04-19 14:43:36 -04:00
bruce-riley d036e70740
Node/P2P: Add default bootstrap peers (#3852)
* Node/P2P: Add default bootstrap peers

* Rework

* Update ccqlistener
2024-03-22 14:27:03 -05:00
Jeff Schroeder b175dd43c8
docs: quit the spelling spam typo fix PRs with cspell magic (#3845)
* Add cspell configuration and custom dictionary

The goal is to cut down on both incoming tyops, and well meaning but
spammy tyop fix PRs.

To run cspell locally install it and run:

    cspell '**/*.md' \
        --config cspell.config.yaml \
        --words-only \
        --unique \
        --quiet | sort --ignore-case

* docs: cspell updates

* wormchain: cspell updates

* aptos: cspell updates

* node: cspell updates

* algorand: cspell updates

* whitepapers: cspell updates

* near: cspell updates

* solana: cspell updates

* terra: cspell updates

* cosmwasm: cspell updates

* ethereum: cspell updates

* clients: cspell updates

* cspell updates for DEVELOP document

* github: run cspell github action

* sdk: cspell updates

* github: only run cspell on markdown files

* algorand: EMMITTER --> EMITTER

Suggested-by: @evan-gray

* cspell: removed from dictionary

Suggested-by: @evan-gray

* aptos and node: cspell updates

Suggested-by: @evan-gray

* cosmowasm: doc updates for terra2

Suggested-by: @evan-gray

* algorand: cspell updates

Suggested-by: @evan-gray

* algorand: cspell updates

Suggested-by: @evan-gray

* cspell: updated custom word dictionary

This resorts the dictionary and adds a few new words from the
algorand/MEMORY.md document around varints and integers.

* cspell: sort the dictionary how vscode does it

On macOS the sorting is locale dependent. To do this on macOS, you have
to invert the case, do a character insensitive sort, and then invert the
case again:

    LC_COLLATE="en_US.UTF-8" cspell '**/*.md' --config cspell.config.yaml \
        --words-only \
        --unique \
        --no-progress \
        --quiet \
    | tr 'a-zA-Z' 'A-Za-z' \
    | sort --ignore-case \
    | tr 'a-zA-Z' 'A-Za-z'

This requires the `LC_COLLATE` variable to be set to `en_US.UTF-8`, or it
will not do the right thing.

* docs: grammar clean up

---------

Co-authored-by: Evan Gray <battledingo@gmail.com>
2024-03-20 15:40:02 -04:00
bruce-riley a2bdc8d0c8
Docs/Testnet: Add P2P to bootstrap peers (#3737) 2024-01-25 08:29:39 -06:00
Bing Yu 7acbacd0ea
node: Add config file support (#3710)
* node: Add logic to read file config and bind flags

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: add guardian node config to node.yaml

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: fix path typo

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: modularize initFileConfig

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: update ethRPC to the correct url

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: update config file path

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: add initial config file testing data

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: add test for flag precedence over config file

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: add test cases for flag, env var and config file precedence

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: use backticks as expected output

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: update comments

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: handle binding errors

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: create separate test functions

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: absolute filepath -> relative filepath

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* docs: Add guardian config file usage

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

* node: update config file name and env var prefix

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>

---------

Signed-off-by: bingyuyap <bingyu.yap.21@gmail.com>
2024-01-20 02:05:23 +08:00
Jeff Schroeder 126d330b07 docs: remove certus one references from operations 2023-12-19 12:55:12 -06:00
Csongor Kiss bd62e27789
terra: migrate to cosmwasm 1.1.0 (#3138)
* terra/contracts: migrate to cosmwasm 1.1.0

use `classic-bindings` crate instead of terra-cosmwasm.
This is the updated version that calls the correct query post chain upgrade

* terra/Dockerfile: update workspace optimizer

* terra: label is now required on instantiate

* terra: accept either 32 or 20 byte addresses

* terra: update devnet terra classic

* node/cosmwasm: always CW >1

* tilt: re-introduce terra classic tests

* terra: make get_address support both 20 and 32 byte addresses

* terra: fix tests to account for burn tax

Since the tests are now ran against the new LocalTerra which has burn
tax, the transaction results are different from before

* terra/token-bridge: check first 12 bytes to determine native denoms

* terra/token-bridge: simplify conditional

---------

Co-authored-by: Evan Gray <battledingo@gmail.com>
2023-12-13 16:27:17 +00:00
iwantanode 6fcb329698 fix typo operations.md 2023-12-12 11:24:41 -06:00
Csongor Kiss 0cc1f677e5 drop mention of the terra NFT bridge from docs and scripts 2023-12-06 20:40:17 +00:00
Bruce Riley f658fd930a Node/Doc: Add Staking Fund to CCQ bootstrap 2023-11-29 11:11:06 -05:00
bruce-riley 6461d8ea67
Doc: Add bootstrap peers to operations.md (#3549)
* Doc: Add bootstrap peers to operations.md

* Add Staking fund to spy
2023-11-21 16:53:44 -06:00
smithit2000 efdb10e39a
Update operations.md (#3544)
added bootstrap peer
2023-11-17 10:42:09 -06:00
Ben Guidarelli 42e64a2e3c
docs: adding more bootstraps for testnet spy (#3402) 2023-09-27 16:16:55 -04:00
Jeff Schroeder cce7b7596b docs: add a section on running the guardian spy 2023-09-13 14:32:17 -04:00
bruce-riley 1514d7cd79
Scripts: For upgrading testnet (#2984) 2023-05-26 08:29:14 -05:00
heyitaki ed733f8e73 sdk/js: add Sui support
Co-authored-by: Evan Gray <battledingo@gmail.com>
Co-authored-by: Kevin Peters <kpeters@jumptrading.com>
2023-05-02 15:14:23 -04:00
Kevin Peters 0243019453 sdk/js: Added second solana devnet wallet, fixed race in Aptos NFT CI tests 2023-02-10 12:35:34 -05:00
Evan Gray 7f9a03254a test: accountant e2e 2023-01-31 11:09:43 -05:00
Hernán Di Pietro a6d76f4382
Added option to fund predefined dev accounts in Algorand deployment (#1997) 2022-11-28 08:12:10 -06:00
jumpsiegel 091ee0877d
WH-1934: upgrade golang to 1.19 (#1941)
* upgrade to golang 1.19.3

Co-authored-by: tbjump <>
Co-authored-by: tbjump <unknown>
2022-11-28 07:48:27 -06:00
wonge97 f49c86208b
docs: governor update (#1524)
* Update governor documents

* governor: whitepaper update, auto-release

* docs: update hours spec to 24

Co-authored-by: Evan Gray <battledingo@gmail.com>
2022-09-12 21:28:20 -04:00
Evan Gray f28e39c490 certusone -> wormhole-foundation 2022-08-26 12:48:14 -04:00
Csongor Kiss 8818d4b8f0 docs: Clarify objective in governor whitepaper
Also include a link to the whitepaper from the docs
2022-08-12 14:58:22 +01:00
wonge97 beee9d1cba
Governor Guardian admin commands (#1416)
* Governor Guardian admin commands

Opening PR describing the types of admin commands that Guardians would have in relation to the Governor security module.

* Update GOVERNOR.md

Small wording tweak to remove a duplicative clause
2022-08-10 13:00:48 -04:00
Hendrik Hofstadt c37c8a372f misc: spice up the README
Change-Id: I275af710cdd49e7499e279a0477360b8d5ba6338
2022-06-22 12:53:50 -04:00
Evan Gray db0fc219aa cosmwasm: terra2 support
Co-authored-by: Csongor Kiss <ckiss@jumptrading.com>
2022-06-21 10:03:57 -04:00
justinschuldt 0a7168c107 move guardian-set-init.sh to docker/tilt 2022-04-12 20:37:52 -05:00
justinschuldt f52bd8fcd2 add devent constants to devnet-consts.json 2022-04-12 20:37:52 -05:00
justinschuldt 972c0aada0 add ganche and devnet accounts to devnet.md
commit-id:40d570bd
2022-03-18 10:49:34 -05:00
Evan Gray a3272dce4a remove pyth2wormhole 2022-03-07 10:23:34 -05:00
Dmitriy Fishman 0db91bf8c0 Fix a typo in operations.md 2022-02-10 14:51:02 -05:00
victorshevtsov d80da14852 docs: fixed broken
Fixed broken link to 0005_data_availability.md
2022-01-13 08:17:39 -05:00
Csongor Kiss 7e212fa739
terra/nft_bridge: Implement nft-bridge for terra (#698)
commit-id:0b547fa5
2022-01-07 16:47:33 +01:00
Hendrik Hofstadt a91fe7797d
Pyth to Wormhole on Terra (#629)
* More checks in P2W on Terra

Change-Id: Icbe5d75504f947b741cee1c797740b71456964fe

* Auto-deploy P2W on Terra

Change-Id: I202536fd278aca938e3b8b3cb0a4ceeca314158f

* Don't do replay protection on price updates

We already use the sequence number for replay and rollback protection and can save storage this way

Change-Id: I9e655956aab1ed8dd86b9d821ece2f57900f6c78
2021-12-22 12:22:08 +01:00
Leo 00c046e81e Bump Go to 1.17.5
commit-id:359d3fb7
2021-12-13 15:38:17 +01:00
Leo d34e16be66 docs: point out that node keys should be persisted
Hi Joe

Change-Id: Id6434199ed3f96cd06cb4ef6d57216d79cef3dc6
2021-09-28 12:58:27 +00:00
Leo 7887c289d9 docs: undocument systemd sockets
We don't need zero-downtime restarts anymore, and the socket unit
lifecycle is annoying to deal with (the socket can't be enabled if
the unit is already started). Much easier to use the capability.

Change-Id: I9d3cb5428eb0e35554866e6e42b7759569b12efb
2021-09-28 12:58:27 +00:00
Hendrik Hofstadt 416a1e7227 Add a second test NFT on Solana
Change-Id: I7dce98cbc3df625d3ce071f179dc25cf873d2047
2021-09-21 11:21:12 +02:00
Chase Moran b39d72e32f bridge_ui: weth functionality
Change-Id: I1c6dc5f502232c32f4219a9a3be61f203c7be22a
2021-09-19 22:43:52 -04:00
Leo 8b0fbb60d2 docs: document --publicWeb
Change-Id: I84f52fac668c60750c08393a532a9bca9d10d452
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
Hendrik Hofstadt a2b3d111f4 add nft bridge skeleton
Change-Id: I69449e95415cd94b7de4528fe4002b241e1e6b95
2021-09-10 17:12:42 +00:00
Leo 4f22a44969 Bump Go to 1.17
Change-Id: Ideb635db1a553c5de4a0b700a080f935249990fb
2021-08-31 08:58:17 +00: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