# Colinear Chain ![Go](https://img.shields.io/badge/go-%2300ADD8.svg?style=for-the-badge&logo=go&logoColor=white) ![Shell Script](https://img.shields.io/badge/shell_script-%23121011.svg?style=for-the-badge&logo=gnu-bash&logoColor=white) ![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white) ![Rocky Linux](https://img.shields.io/badge/-Rocky%20Linux-%2310B981?style=for-the-badge&logo=rockylinux&logoColor=white) This repository contains the base chain implementation that Colinear's compute marketplace uses as a settlement layer. ## Technical Documentation | Component | Docs Path | | :-------- | :-------- | | Leasing & settlement module | [x/colinearcore](./x/colinearcore/README.md) | | In-memory bid database | [x/colinearcore/memdb](./x/colinearcore/memdb/README.md) | | Hardware provider auditing | [x/colinearcore/audit](./x/colinearcore/audit/README.md) | ## Validators ### Requirements - `docker >= 20.10.*` ## Development ### Build Requirements - `ignite` - [CLI Installation Guide](https://docs.ignite.com/guide/install) - `go >= 1.18` ### Integration Test Requirements - `bash` - `bc` - `jq` ### Setup To build the chain: ``` ignite chain build ``` To serve the chain: ``` ignite chain serve ``` ### Unit Tests Unit tests use Go's built-in testing system. To run all unit tests: ``` make utest ``` To test any specific subpackage: ``` go test ./path/to/package ``` ### Integration Tests Integration tests use a custom-built testing framework that interacts with a running instance of the chain. Before running any tests, make sure that the dev chain is running: ``` ignite chain serve ``` To run all integration tests: ``` make test ``` Integration tests can also be run individually: ``` ./tests/.sh ```