The axelar-core app based on the Cosmos SDK is the main application of the axelar network. This repository is used to build the necessary binaries and docker image to run a core node.
Note: For a release build, checkout the release tag via git checkout vX.Y.Z first.
Execute make build to create the axelard binary in the ./bin folder.
To create a regular docker image for the node, execute make docker-image. This creates the image axelar/core: latest.
To create a docker image for debugging (with delve), execute make docker-image-debug. This creates the image axelar/core-debug:latest.
In order to run/build the project locally we need to import the bytecode from gateway smart contracts.
contract-version.jsonBytecode-v4.3.0contract-artifacts/make generate to generate x/evm/types/contracts.goBefore interacting with the axelar network, ensure you have the correct axelard binary and that it's verified:
Download the Binary and Signature File:
axelard binary for your operating system and architecture..asc signature file.Import Axelar's Public Key:
curl https://keybase.io/axelardev/pgp_keys.asc | gpg --import
Trust the Imported Key:
gpg --edit-key 5D9FFADEED11FA5D
trust then select option 5 to trust ultimately.Verify the Binary:
gpg --verify axelard-darwin-amd64-v0.34.3.asc axelard-darwin-amd64-v0.34.3
Good signature from "Axelar Network Devs <eng@axelar.network>" [ultimate]
With a local (dockerized) node running, the axelard binary can be used to interact with the node. Run ./bin/axelard or ./bin/axelard <command> --help after building the binaries to get information about the available commands.
Execute GO111MODULE=off go install -u golang.org/x/tools/cmd/godoc to ensure that godoc is installed on the host.
After the installation, execute godoc -http ":{port}" -index to host a local godoc server. For example, with port 8080 and godoc -http ":8080" -index, the documentation is hosted at http://localhost:8080/pkg/github.com/axelarnetwork/axelar-core. The index flag makes the documentation searchable.
Comments at the beginning of packages, before types and before functions are automatically taken from the source files to populate the documentation. See https://blog.golang.org/godoc for more information.
For the full list of available CLI commands for axelard see here
Dev tool dependencies, such as moq and goimports, can be installed via make prereqs. Make sure they're on available on your PATH.
See the Axelar documentation website.