Build - The axelar-core app based on the Cosmos SDK is the main application of the axelar network

⚠️ ⚠️ ⚠️ THIS IS A WORK IN PROGRESS ⚠️ ⚠️ ⚠️

axelar-core

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.

Prerequisites for building binaries and docker images

  1. Have a SSH key on your machine
  2. Add your public key to your Github account for authentication
  3. Run ssh-add ~/.ssh/{private key file name} to add your private key to your ssh agent. IMPORTANT: the ssh agent only keeps your priate key in memory so you have to repeat this step every time you restart your machine. You can automate this step in two ways as described here:
    • Add the following to your ~/.ssh/config file:
    Host *
       AddKeysToAgent yes
       UseKeychain yes     
    
    • Add ssh-add ~/.ssh/{private key file name} &>/dev/null in your shell's .rc file (eg. ~/.bash_profile).
  4. Run git config --global url."[email protected]:axelarnetwork".insteadOf https://github.com/axelarnetwork to force go get to authenticate via ssh

Building binaries locally

Execute make build to create local binaries for the validator node. They are created in the ./bin folder.

Creating docker images

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.

Interacting with a local node

With a local (dockerized) node running, the axelard binary can be used to interact with the node. Run ./bin/axelard --help after building the binaries to get information about the available commands.

Show API documentation

Execute GO111MODULE=off go get -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 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.

CLI command documentation

For the full list of available CLI commands for axelard see here

Test tools

Because it is an executable, github.com/matryer/moq is not automatically downloaded when executing go mod download or similar commands. Execute go get github.com/matryer/moq to install the moq tool to generate mocks for interfaces.

Bug bounty and disclosure of vulnerabilities

See the Axelar documentation website.

Similar Resources

Package socket provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and deadline support. MIT Licensed.

socket Package socket provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and d

Dec 14, 2022

Optimize Windows's network/NIC driver settings for NewTek's NDI(Network-Device-Interface).

windows-ndi-optimizer[WIP] Optimize Windows's network/NIC driver settings for NewTek's NDI(Network-Device-Interface). How it works This is batchfile d

Apr 15, 2022

A simple network analyzer that capture http network traffic

A simple network analyzer that capture http network traffic

httpcap A simple network analyzer that captures http network traffic. support Windows/MacOS/Linux/OpenWrt(x64) https only capture clienthello colorful

Oct 25, 2022

Zero Trust Network Communication Sentinel provides peer-to-peer, multi-protocol, automatic networking, cross-CDN and other features for network communication.

Zero Trust Network Communication Sentinel provides peer-to-peer, multi-protocol, automatic networking, cross-CDN and other features for network communication.

Thank you for your interest in ZASentinel ZASentinel helps organizations improve information security by providing a better and simpler way to protect

Nov 1, 2022

An opinionated clean fork of v2fly/v2ray-core

v2ray-go An opinionated fork of v2fly/v2ray-core. Additional Features 📅 Add flag -suppressTimestamps to suppress timestamps in logs 🔌 Refine systemd

Nov 21, 2022

Baseledger core consensus for running validator, full and seed nodes

baseledger-core Baseledger core consensus client for running a validator, full or seed node. ⚠️ WARNING: this code has not been audited and is not rea

Jan 13, 2022

Reference implementation of the PLAN Data Model and core components

PLAN is a free and open platform for groups to securely communicate, collaborate, and coordinate projects and activities.

Nov 2, 2021

Courier Order Provider is a service that receives signals from core server in order to emit this orders to courier groups.

Courier Order Provider Courier Order Provider is a service that receives signals(messages) from core server in order to emit this orders to courier gr

Nov 4, 2021

Xray, Penetrates Everything. Also the best v2ray-core, with XTLS support. Fully compatible configuration.

Project X Project X originates from XTLS protocol, provides a set of network tools such as Xray-core and Xray-flutter. License Mozilla Public License

Jan 7, 2023
Related tags
Bell is the simplest event system written in Go (Golang) which is based on the execution of handlers independent of the main channel.

Bell Bell is the simplest event system written in Go (Golang) which is based on the execution of handlers independent of the main channel. Written in

Nov 17, 2022
Open source 5G core network base on 3GPP R15
Open source 5G core network base on 3GPP R15

What is free5GC The free5GC is an open-source project for 5th generation (5G) mobile core networks. The ultimate goal of this project is to implement

Jan 4, 2023
The server-pubsub is the main backend of DATAVOC project that manages all the other web-server modules of the same project such as the processor

server-pubsub The server-pubsub is the main backend of DATAVOC project that manages all the other web-server modules of the same project such as the p

Dec 3, 2021
🚀Gev is a lightweight, fast non-blocking TCP network library based on Reactor mode. Support custom protocols to quickly and easily build high-performance servers.
🚀Gev is a lightweight, fast non-blocking TCP network library based on Reactor mode. Support custom protocols to quickly and easily build high-performance servers.

gev 中文 | English gev is a lightweight, fast non-blocking TCP network library based on Reactor mode. Support custom protocols to quickly and easily bui

Jan 6, 2023
Yet another SIP003 plugin for shadowsocks, based on Xray-core

Yet another SIP003 plugin for shadowsocks, based on Xray-core Build go build Usage See command line args for advanced usages.

Jan 8, 2023
Poseidon -- An Enhanced V2Ray(based on v2ray-core)

Poseidon -- An Enhanced V2Ray(based on v2ray-core) Support SSRPanel(VNetPanel), V2board, SSpanel-v3-Uim Features Sync user from your panel to v2ray Lo

Nov 14, 2021
ULE - Rust-based minecraft server core

ULE - Minecraft's server core written in Rust This's server core fully written i

Jan 6, 2023
May 8, 2022
Educational project to build a p2p network

Template go Repository tl;dr This is a template go repository with actions already set up to create compiled releases What does this Template provide?

Dec 2, 2021
Build a layer-three local area network on the WAN

What is Zetamesh Zetamesh /zeta'meʃ/ is used to build a layer-three local area network on the WAN. Quick Start This section will give you some instruc

Jun 7, 2022