Commit 05ca7158 by Carl Bergquist

Merge pull request #4886 from Gueust/contribute_doc

Add documentation on the build system for occasional contributors
parents c7e7a0cd ca1182e7
...@@ -78,7 +78,7 @@ the latest master builds [here](http://grafana.org/download/builds) ...@@ -78,7 +78,7 @@ the latest master builds [here](http://grafana.org/download/builds)
### Dependencies ### Dependencies
- Go 1.5 - Go 1.5
- NodeJS - NodeJS v0.12.0
- [Godep](https://github.com/tools/godep) - [Godep](https://github.com/tools/godep)
### Get Code ### Get Code
...@@ -87,6 +87,18 @@ the latest master builds [here](http://grafana.org/download/builds) ...@@ -87,6 +87,18 @@ the latest master builds [here](http://grafana.org/download/builds)
go get github.com/grafana/grafana go get github.com/grafana/grafana
``` ```
Since imports of dependencies use the absolute path github.com/grafana/grafana within the $GOPATH,
you will need to put your version of the code in $GOPATH/src/github.com/grafana/grafana to be able
to develop and build grafana on a cloned repository. To do so, you can clone your forked repository
directly to $GOPATH/src/github.com/grafana or you can create a symbolic link from your version
of the code to $GOPATH/src/github.com/grafana/grafana. The last options makes it possible to change
easily the grafana repository you want to build.
```bash
go get github.com/*your_account*/grafana
mkdir $GOPATH/src/github.com/grafana
ln -s github.com/*your_account*/grafana $GOPATH/src/github.com/grafana/grafana
```
### Building the backend ### Building the backend
```bash ```bash
cd $GOPATH/src/github.com/grafana/grafana cd $GOPATH/src/github.com/grafana/grafana
...@@ -97,7 +109,7 @@ go run build.go build ...@@ -97,7 +109,7 @@ go run build.go build
### Building frontend assets ### Building frontend assets
To build less to css for the frontend you will need a recent version of of node (v0.12.0), To build less to css for the frontend you will need a recent version of of **node (v0.12.0)**,
npm (v2.5.0) and grunt (v0.4.5). Run the following: npm (v2.5.0) and grunt (v0.4.5). Run the following:
```bash ```bash
...@@ -105,6 +117,13 @@ npm install ...@@ -105,6 +117,13 @@ npm install
npm run build npm run build
``` ```
To build the frontend assets only on changes:
```bash
sudo npm install -g grunt-cli # to do only once to install grunt command line interface
grunt watch
```
### Recompile backend on source change ### Recompile backend on source change
To rebuild on source change (requires that you executed godep restore) To rebuild on source change (requires that you executed godep restore)
```bash ```bash
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment