Skip to content

Commit 6435d40

Browse files
author
Kate Osborn
committed
Prepare OSS Files
- Updates the README to include current build and deploy instructions. - Adds license, contributing guidelines, code of conduct, pull request template, CODEOWNERS, and the CLA agreement. - Makes the registry PREFIX used in make container configurable by user. - Adds README to cafe example
1 parent e667c4b commit 6435d40

9 files changed

+502
-241
lines changed

.github/CODEOWNERS

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
@pleshakov @f5yacobucci @kate-osborn

.github/PULL_REQUEST_TEMPLATE.md

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
### Proposed changes
2+
Describe the use case and detail of the change. If this PR addresses an issue on GitHub, make sure to include a link to that issue here in this description (not in the title of the PR).
3+
4+
### Checklist
5+
Before creating a PR, run through this checklist and mark each as complete.
6+
7+
- [ ] I have read the [CONTRIBUTING](https://github.com/nginxinc/nginx-gateway-kubernetes/blob/main/CONTRIBUTING.md) doc
8+
- [ ] I have added tests that prove my fix is effective or that my feature works
9+
- [ ] I have checked that all unit tests pass after adding my changes
10+
- [ ] I have updated necessary documentation
11+
- [ ] I have rebased my branch onto main
12+
- [ ] I will ensure my PR is targeting the main branch and pulling from my branch from my own fork

CODE_OF_CONDUCT.md

+75
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Code of Conduct
2+
3+
This project and everyone participating in it is governed by this code.
4+
5+
## Our Pledge
6+
7+
In the interest of fostering an open and welcoming environment, we as
8+
contributors and maintainers pledge to making participation in our project and
9+
our community a harassment-free experience for everyone, regardless of age, body
10+
size, disability, ethnicity, sex characteristics, gender identity and expression,
11+
level of experience, education, socio-economic status, nationality, personal
12+
appearance, race, religion, or sexual identity and orientation.
13+
14+
## Our Standards
15+
16+
Examples of behavior that contributes to creating a positive environment
17+
include:
18+
19+
* Using welcoming and inclusive language
20+
* Being respectful of differing viewpoints and experiences
21+
* Gracefully accepting constructive criticism
22+
* Focusing on what is best for the community
23+
* Showing empathy towards other community members
24+
25+
Examples of unacceptable behavior by participants include:
26+
27+
* The use of sexualized language or imagery and unwelcome sexual attention or
28+
advances
29+
* Trolling, insulting/derogatory comments, and personal or political attacks
30+
* Public or private harassment
31+
* Publishing others' private information, such as a physical or electronic
32+
address, without explicit permission
33+
* Other conduct which could reasonably be considered inappropriate in a
34+
professional setting
35+
36+
## Our Responsibilities
37+
38+
Project maintainers are responsible for clarifying the standards of acceptable
39+
behavior and are expected to take appropriate and fair corrective action in
40+
response to any instances of unacceptable behavior.
41+
42+
Project maintainers have the right and responsibility to remove, edit, or
43+
reject comments, commits, code, wiki edits, issues, and other contributions
44+
that are not aligned to this Code of Conduct, or to ban temporarily or
45+
permanently any contributor for other behaviors that they deem inappropriate,
46+
threatening, offensive, or harmful.
47+
48+
## Scope
49+
50+
This Code of Conduct applies both within project spaces and in public spaces
51+
when an individual is representing the project or its community. Examples of
52+
representing a project or community include using an official project e-mail
53+
address, posting via an official social media account, or acting as an appointed
54+
representative at an online or offline event. Representation of a project may be
55+
further defined and clarified by project maintainers.
56+
57+
## Enforcement
58+
59+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
60+
reported by contacting the project team at [mailto:[email protected]]. All
61+
complaints will be reviewed and investigated and will result in a response that
62+
is deemed necessary and appropriate to the circumstances. The project team is
63+
obligated to maintain confidentiality with regard to the reporter of an incident.
64+
Further details of specific enforcement policies may be posted separately.
65+
66+
Project maintainers who do not follow or enforce the Code of Conduct in good
67+
faith may face temporary or permanent repercussions as determined by other
68+
members of the project's leadership.
69+
70+
## Attribution
71+
72+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
73+
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
74+
75+
[homepage]: https://www.contributor-covenant.org

CONTRIBUTING.md

+80
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# Contributing Guidelines
2+
3+
The following is a set of guidelines for contributing to NGINX Kubernetes Gateway. We really appreciate that you are considering contributing!
4+
5+
#### Table Of Contents
6+
7+
[Ask a Question](#ask-a-question)
8+
9+
[Getting Started](#getting-started)
10+
11+
[Contributing](#contributing)
12+
13+
[Style Guides](#style-guides)
14+
* [Git Style Guide](#git-style-guide)
15+
* [Go Style Guide](#go-style-guide)
16+
17+
[Code of Conduct](https://github.com/nginxinc/nginx-gateway-kubernetes/blob/master/CODE_OF_CONDUCT.md)
18+
19+
[Contributor License Agreement](#contributor-license-agreement)
20+
21+
## Ask a Question
22+
23+
We will have a public forum soon where you can come and ask questions and have a discussion. For now please open an Issue on GitHub with the label `question`.
24+
25+
## Getting Started
26+
27+
Follow our [Installation Instructions](README.md#run-nginx-gateway) to get the NGINX Kubernetes Gateway up and running.
28+
29+
### Project Structure
30+
31+
* NGINX Kubernetes Gateway is written in Go and uses the open source NGINX software as the data plane.
32+
* The project follows a standard Go project layout
33+
* The main code is found at `cmd/gateway/`
34+
* The internal code is found at `internal/`
35+
* Build files for Docker are found under `build/`
36+
* Deployment yaml files are found at `deploy/`
37+
* We use [Go Modules](https://github.com/golang/go/wiki/Modules) for managing dependencies.
38+
* We use [Ginkgo](https://onsi.github.io/ginkgo/) and [Gomega](https://onsi.github.io/gomega/) for our BDD style unit tests.
39+
40+
## Contributing
41+
42+
### Report a Bug
43+
44+
To report a bug, open an issue on GitHub with the label `bug` using the available bug report issue template. Please ensure the issue has not already been reported.
45+
46+
### Suggest an Enhancement
47+
48+
To suggest an enhancement, please create an issue on GitHub with the label `enhancement` using the available feature issue template.
49+
50+
### Open a Pull Request
51+
52+
* Fork the repo, create a branch, submit a PR when your changes are tested and ready for review
53+
* Fill in [our pull request template](https://github.com/nginxinc/nginx-gateway-kubernetes/blob/main/.github/PULL_REQUEST_TEMPLATE.md)
54+
55+
Note: if you’d like to implement a new feature, please consider creating a feature request issue first to start a discussion about the feature.
56+
57+
## Style Guides
58+
59+
### Git Style Guide
60+
61+
* Keep a clean, concise and meaningful git commit history on your branch, rebasing locally and squashing before submitting a PR
62+
* Follow the guidelines of writing a good commit message as described [here](https://chris.beams.io/posts/git-commit/) and summarised in the next few points
63+
* In the subject line, use the present tense ("Add feature" not "Added feature")
64+
* In the subject line, use the imperative mood ("Move cursor to..." not "Moves cursor to...")
65+
* Limit the subject line to 72 characters or less
66+
* Reference issues and pull requests liberally after the subject line
67+
* Add more detailed description in the body of the git message (`git commit -a` to give you more space and time in your text editor to write a good message instead of `git commit -am`)
68+
69+
### Go Style Guide
70+
71+
* Run `gofmt` over your code to automatically resolve a lot of style issues. Most editors support this running automatically when saving a code file.
72+
* Run `go lint` and `go vet` on your code too to catch any other issues.
73+
* Follow this guide on some good practice and idioms for Go - https://github.com/golang/go/wiki/CodeReviewComments
74+
* To check for extra issues, install [golangci-lint](https://github.com/golangci/golangci-lint) and run `make lint` or `golangci-lint run`
75+
76+
## Contributor License Agreement
77+
78+
Individuals or business entities who contribute to this project must have completed and submitted the [F5® Contributor License Agreement](F5ContributorLicenseAgreement.pdf) prior to their code submission being included in this project.
79+
To submit, please print out the [F5® Contributor License Agreement](F5ContributorLicenseAgreement.pdf), fill in the required sections, sign, scan, and send executed CLA to [email protected].
80+
Please include your github handle in the CLA email.

F5ContributorLicenseAgreement.pdf

83.9 KB
Binary file not shown.

0 commit comments

Comments
 (0)