Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add CONTRIBUTING.md #320

Merged
merged 1 commit into from
Jun 16, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
95 changes: 95 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
# SRIOV Network Operator

* [Meetings](#meetings)
* [How to Contribute](#contributing-code)
* [Coding Style](#coding-style)
* [Format of the patch](#format-of-the-patch)
* [Contributing Code](#contributing-code)
* [Tools](#Tools)

## Meetings
Join us for project discussions at _K8s Network & Resource management_ meetings

Time: 15:00 - 16:00 GMT / 10:00-11:00 ET / 07:00-08:00 PST every other Monday
* [Meeting notes and agenda](https://docs.google.com/document/d/1sJQMHbxZdeYJPgAWK1aSt6yzZ4K_8es7woVIrwinVwI/edit?usp=sharing)
* [Zoom channel](https://us02web.zoom.us/j/88973596231?pwd=UHZtUEtNSVBSYnRLL3A3cHMzdmlvZz09)

Join us for architecture and/or new feature discussion at the _Additional K8s Network & Resource management_ meetings

Time: 14:00 - 15:00 GMT / 09:00-10:00 ET / 06:00-07:00 PST on every other Tuesday of the alternative week when the main community meeting does not occur
* [Meeting notes and agenda](https://docs.google.com/document/d/1bEyEh_K9lGwQWHgUHUH-vqodYd1W-LCWRGlW0-ZVR5A)
* [Zoom channel](https://us02web.zoom.us/j/88973596231?pwd=UHZtUEtNSVBSYnRLL3A3cHMzdmlvZz09)

## How to Contribute

SRIOV Network Operator is [Apache 2.0 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.

## Coding Style

Please follows the standard formatting recommendations and language idioms set out in [Effective Go](https://golang.org/doc/effective_go.html) and in the [Go Code Review Comments wiki](https://github.com/golang/go/wiki/CodeReviewComments).

## Format of the patch

Each patch is expected to comply with the following format:

```
Change summary

More detailed explanation of your changes: Why and how.
Wrap it to 72 characters.
See [here] (http://chris.beams.io/posts/git-commit/)
for some more good advices.

[Fixes #NUMBER (or URL to the issue)]
```

For example:

```
Fix poorly named identifiers

One identifier, fnname, in func.go was poorly named. It has been renamed
to fnName. Another identifier retval was not needed and has been removed
entirely.

Fixes #1
```

## Contributing Code

We always encourage the contribution for the community project. We like to collaborate with various stake holder on this project. We ask developer to keep following guidelines in mind before the contribution.

* Make sure to create an [Issue](https://github.com/k8snetworkplumbingwg/sriov-network-operator/issues) for bug fix or the feature request.
Issues are discussed on a regular basis at _K8s Network & Resource management_ meetings.
* **For bugs**: For the bug fixes, please follow the issue template format while creating a issue. If you have already found a fix, feel free to submit a Pull Request referencing the Issue you created. Include the `Fixes #` syntax to link it to the issue you're addressing.
* **For feature requests**, For the feature requests, please follow the issue template format while creating a feature requests. We want to improve upon SRIOV Network Operator incrementally which means small changes or features at a time.
* Please make sure each PR are compiling or passed by Travis.
* In order to ensure your PR can be reviewed in a timely manner, please keep PRs small

Once you're ready to contribute code back to this repo, start with these steps:
* Fork the appropriate sub-projects that are affected by your change.
* Clone the fork to your machine:

```
$ git clone https://github.com/k8snetworkplumbingwg/sriov-network-operator.git
```

* Create a topic branch with prefix `dev/` for your change and checkout that branch:

```
$ git checkout -b dev/some-topic-branch
```
* Make your changes to the code and add tests to cover contributed code.
* Run `make all` to validate it builds and will not break current functionality.
* Commit your changes and push them to your fork.
* Open a pull request for the appropriate project.
* Contributors will review your pull request, suggest changes, run tests and eventually merge or close the request.

> We encourage contributor to test SRIOV Network Operator with various NICs to check the compatibility.
>
## Contact Us
- General channel on [NPWG](https://npwg-team.slack.com/) Slack. Request an invite to NPWG slack [here](https://intel-corp.herokuapp.com/).
- Feel free to post GitHub issues and PRs for review
- Attend either K8s Network & Resource mangement or Additional K8s Network & Resource management meetings