/lily

capturing on-chain state for the filecoin network

Primary LanguageGoOtherNOASSERTION

Lily

go.dev reference docker build status CI build

A component of Sentinel, a collection of services which monitor the health and function of the Filecoin network.

Lily is a instrumentalized instance of a Lotus node that collects permanent Filecoin chain metrics and writes them to a TimescaleDB time-series and relational datastore or to CSV files.

User documentation

Lily documentation, including with build, operation instructions, data models and access to data dumps is available at https://lilium.sh/.

Running tests

To quickly run tests, you can provide the LILY_TEST_DB envvar and execute make test like so:

LILY_TEST_DB="postgres://postgres:password@localhost:5432/postgres?sslmode=disable" make test

For more, manual test running, you could also prepare your environment in the following way:

Create a new DB in postgres for testing:

CREATE DATABASE lily_test;

Migrate the database to the latest schema:

lily migrate --db "postgres://username@localhost/lily_test?sslmode=disable" --latest

Run the tests:

LILY_TEST_DB="postgres://username@localhost/lily_test?sslmode=disable" go test ./...

Metrics, tracing and debugging

See https://lilium.sh/software/lily/operation/#metrics--debugging.

Versioning and Releases

Feature branches and master are designated as unstable which are internal-only development builds.

Periodically a build will be designated as stable and will be assigned a version number by tagging the repository using Semantic Versioning in the following format: vMajor.Minor.Patch.

Other Topics

Code of Conduct

Lily follows the Filecoin Project Code of Conduct. Before contributing, please acquaint yourself with our social courtesies and expectations.

Contributing

Welcoming new issues and pull requests.

License

The Filecoin Project and Lily are dual-licensed under Apache 2.0 and MIT terms: