-
Notifications
You must be signed in to change notification settings - Fork 290
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- This makes it easy for someone new to start working on BotKube - Adds instructions to build BotKube from source code Signed-off-by: Bhavin Gandhi <bhavin7392@gmail.com>
- Loading branch information
Showing
1 changed file
with
56 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
# How to Contribute to BotKube | ||
|
||
We'd love your help! | ||
|
||
BotKube is [MIT Licensed](LICENSE) and accepts contributions via GitHub | ||
pull requests. This document outlines some of the conventions on development | ||
workflow, commit message formatting, contact points and other resources to make | ||
it easier to get your contribution accepted. | ||
|
||
We gratefully welcome improvements to documentation as well as to code. | ||
|
||
## Compile BotKube from source code | ||
Make sure you have `go` compiler installed. BotKube uses | ||
[`dep`](https://github.com/golang/dep) to manage dependencies. You | ||
will also need `make` | ||
and [`docker`](https://docs.docker.com/install/) installed on your machine. | ||
1. Clone the source code | ||
```sh | ||
$ git clone https://github.com/infracloudio/botkube.git $GOPATH/src/github.com/infracloudio/botkube | ||
$ cd $GOPATH/src/github.com/infracloudio/botkube | ||
``` | ||
2. Build the container image | ||
```sh | ||
$ make build | ||
``` | ||
This will build BotKube and create a new container image tagged as `infracloud/botkube:latest` | ||
|
||
3. Build BotKube binary (optional) | ||
If you don't want to build the container image, you can build the | ||
binary like this, | ||
```sh | ||
# Fetch the dependencies | ||
$ dep ensure | ||
# Build the binary | ||
$ go build ./cmd/botkube/ | ||
``` | ||
## Making A Change | ||
|
||
*Before making any significant changes, please [open an | ||
issue](https://github.com/infracloudio/botkube/issues).* Discussing | ||
your proposed changes ahead of time will make the contribution process | ||
smooth for everyone. | ||
|
||
Once we've discussed your changes and you've got your code ready, make | ||
sure that builds mentioned in 1 and 2 pass and open your pull request | ||
against `develop` branch. | ||
|
||
Make sure your pull request has a [good commit | ||
message](https://chris.beams.io/posts/git-commit/): | ||
* Separate subject from body with a blank line | ||
* Limit the subject line to 50 characters | ||
* Capitalize the subject line | ||
* Do not end the subject line with a period | ||
* Use the imperative mood in the subject line | ||
* Wrap the body at 72 characters | ||
* Use the body to explain _what_ and _why_ instead of _how_ |