Go to file
Alex Willmer aef48061c5 utils: Add tests in safe_math: Max64, Min64, Sub64, Diff64 2020-03-29 16:57:42 +01:00
.ci init repo 2020-03-10 15:20:34 -04:00
.github/ISSUE_TEMPLATE Update issue templates 2020-03-11 00:22:40 -04:00
api fix spelling typo 2020-03-18 07:53:25 +13:00
cache init repo 2020-03-10 15:20:34 -04:00
chains Fixed off by one error in bootstrapping Alpha value 2020-03-25 10:46:49 -04:00
database init repo 2020-03-10 15:20:34 -04:00
genesis addressed PR comments 2020-03-17 16:07:33 -04:00
ids Removed redundent filter in unaryNode and added test for filtering in binaryNode 2020-03-17 23:29:38 -04:00
keys init repo 2020-03-10 15:20:34 -04:00
main changed gecko command line arguments to use flagset so we can control the exit code 2020-03-22 12:25:47 +13:00
networking Perf (#13) 2020-03-13 17:31:23 -04:00
node Merge branch 'master' of github.com:ava-labs/gecko 2020-03-13 17:32:49 -04:00
scripts init repo 2020-03-10 15:20:34 -04:00
snow Merge branch 'master' into slush 2020-03-27 14:02:08 -04:00
utils utils: Add tests in safe_math: Max64, Min64, Sub64, Diff64 2020-03-29 16:57:42 +01:00
vms fix bug where unmarshalling into improper type causes panic. Add test for this 2020-03-26 15:14:45 -04:00
xputtest changed xputtest command line arguments to use flagset so we can control the exit code 2020-03-22 12:31:10 +13:00
.codecov.yml init repo 2020-03-10 15:20:34 -04:00
.gitignore ignore GoLand IDE project metafiles directory 2020-03-19 10:54:28 +13:00
.travis.yml remove ssh flag from public repo 2020-03-11 13:57:11 -04:00
Dockerfile init repo 2020-03-10 15:20:34 -04:00
LICENSE init repo 2020-03-10 15:20:34 -04:00
README.md Fixing docker container example command 2020-03-26 16:02:30 -07:00

README.md

gecko

Installation

AVA is an incredibly lightweight protocol, so the minimum computer requirements are quite modest.

  • Hardware: 2 GHz or faster CPU, 3 GB RAM, 250 MB hard disk.
  • OS: Ubuntu >= 18.04 or Mac OS X >= Catalina.
  • Software: Go version >= 1.13.X and set up $GOPATH.
  • Network: IPv4 or IPv6 network connection, with an open public port.

Native Install

Ubuntu users need the following libraries:

  • libssl-dev
  • libuv1-dev
  • cmake
  • make
  • curl
  • g++

Install the libraries:

sudo apt-get install libssl-dev libuv1-dev cmake make curl g++

Downloading Gecko Source Code

Clone the Gecko repository:

cd $GOPATH
mkdir -p src/github.com/ava-labs
cd src/github.com/ava-labs
git clone https://github.com/ava-labs/gecko.git
cd gecko

Building the Gecko Executable

Build Gecko using the build script:

./scripts/build.sh

The Gecko binary, named ava, is in the build directory.

Docker Install

  • Make sure you have docker installed on your machine (so commands like docker run etc. are available).
  • Build the docker image of latest gecko branch by scripts/build_image.sh.
  • Check the built image by docker image ls, you should see some image tagged gecko-xxxxxxxx, where xxxxxxxx is the commit id of the Gecko source it was built from.
  • Test Gecko by docker run -ti -p 9650:9650 -p 9651:9651 gecko-xxxxxxxx /gecko/build/ava --public-ip=127.0.0.1 --snow-sample-size=1 --snow-quorum-size=1 --staking-tls-enabled=false. (For a production deployment, you may want to extend the docker image with required credentials for staking and TLS.)

Running Gecko and Creating a Local Test Network

To create your own local test network, run:

./build/ava --public-ip=127.0.0.1 --snow-sample-size=1 --snow-quorum-size=1 --staking-tls-enabled=false

This launches an AVA network with one node.

You should see some pretty ASCII art and log messages. You may see a few warnings. These are OK.

You can use Ctrl + C to kill the node.

If you want to specify your log level. You should set --log-level to one of the following values, in decreasing order of logging.

  • --log-level=verbo
  • --log-level=debug
  • --log-level=info
  • --log-level=warn
  • --log-level=error
  • --log-level=fatal
  • --log-level=off