Skip to content

Commit

Permalink
Add a contributing and releasing guide (#500)
Browse files Browse the repository at this point in the history
* Add a contributing and releasing guide

* Describe how to run integration tests

* Update CONTRIBUTING.md

Co-authored-by: malcolmholmes <[email protected]>

---------

Co-authored-by: malcolmholmes <[email protected]>
  • Loading branch information
K-Phoen and malcolmholmes authored Sep 26, 2024
1 parent d15bc92 commit 1dcea76
Show file tree
Hide file tree
Showing 2 changed files with 61 additions and 17 deletions.
59 changes: 59 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Contributing Guidelines

This document is a guide to help you through the process of contributing to `grizzly`.

## Developing the extension

### Create a fork

[Fork][fork], then clone the repository:

```shell
git clone [email protected]:{your_github_username}/grizzly.git
cd grizzly
git remote add upstream https://github.com/grafana/grizzly.git
git fetch upstream
```

### Install dependencies

```shell
go mod vendor
```

### Building from sources

To build Grizzly locally, inside a checkout, run:

```shell
make dev
```

### Run locally

To run Grizzly locally, use:

```shell
go run cmd/grr/*.go
```

## Run the tests

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 grizzly

Releasing is done as follows:

1. Trigger the release pipeline by creating and pushing a tag: `git tag {version} && git push origin {version}`
2. 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.


[fork]: https://github.com/grafana/grizzly/fork
19 changes: 2 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,6 @@ are:

See [docs](https://grafana.github.io/grizzly) for usage details.

## Building Grizzly from Source
To build Grizzly locally, inside a checkout, simply use:
```
$ make dev
```
## Contributing

## Running tests

There are both unit tests and integration tests in this repo.

`config_test.go` and `unit_test.go` can both be executed autonomously.

However, in order to run integration tests you need to make use of
`make test`. 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.
See our [contributing guide](CONTRIBUTING.md).

0 comments on commit 1dcea76

Please sign in to comment.