gpu-compute-chain/README.md

86 lines
1.8 KiB
Markdown

# 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/<specific_test>.sh
```