# thegarii [crates.io](https://crates.io/crates/thegarii) [github](https://github.com/ChainSafe/thegarii) [build status](https://github.com/ChainSafe/thegarii/actions?query=branch%3Amain) The polling service for Arweawve blocks ## Getting Started ``` > cargo install thegarii > thegarii -h thegaril 0.0.3 info@chainsafe.io env arguments for CLI USAGE: thegarii [FLAGS] [OPTIONS] FLAGS: -d, --debug Activate debug mode -h, --help Prints help information -V, --version Prints version information OPTIONS: -B, --batch-blocks how many blocks polling at one time [default: 20] -b, --block-time time cost for producing a new block in arweave [default: 20000] -c, --confirms safe blocks against to reorg in polling [default: 20] -e, --endpoints ... client endpoints [default: https://arweave.net/] -p, --ptr-path block ptr file path -r, --retry retry times when failed on http requests [default: 10] -t, --timeout timeout of http requests [default: 120000] ``` # Environments | KEY | DEFAULT\_VALUE | DESCRIPTION | |---------------|--------------------------|---------------------------------------------| | ENDPOINTS | `"https://arweave.net"` | for multiple endpoints, split them with ',' | | BATCH\_BLOCKS | `50` | how many blocks batch at one time | | CONFIRMS | `20` | irreversibility condition | | PTR\_PATH | `$APP_DATA/thegarii/ptr` | the file stores the block ptr for polling | | retry | `10` | retry times when failed on http requests | | timeout | `120_000` | timeout of http requests | ## Dev Build the source code with `cargo build --release`. To config the number of nodes to pull blocks from, define the env variable: `ENDPOINTS`, i.e. `export ENDPOINTS=http://178.62.222.154:1984,http://localhost:1984`. The default node is `https://arweave.net/`. To start estimating the total ingestion time using the following command: ```shell ./target/release/thegarii poll -h ``` To compile, set env variables and run in one go, you can use: ```shell ENDPOINTS=http://178.62.222.154:1984,http://localhost:1984 cargo run --release -- poll -h ```