This document is a guide to help you through the process of contributing to grizzly
.
Fork, then clone the repository:
git clone [email protected]:{your_github_username}/grizzly.git
cd grizzly
git remote add upstream https://github.com/grafana/grizzly.git
git fetch upstream
go mod vendor
To build Grizzly locally, inside a checkout, run:
make dev
To run Grizzly locally, use:
go run cmd/grr/*.go
There are both unit tests and integration tests in this repo.
Unit tests can be run using make test
. Integration tests are run with
make integration
. This command spins up a Grafana instance with certain config
and provisioned resources, so the integration tests can run against it.
You can also manually execute make run-test-image-locally
and run the tests
for debugging.
Releasing is done as follows:
- Trigger the release pipeline by creating and pushing a tag:
git tag {version} && git push origin {version}
- The pipeline publishes docker images of grizzly and creates a GitHub release. The latter, however, is marked as draft and as such needs to be reviewed and updated with change notes before being published.