Skip to content
Merged
Show file tree
Hide file tree
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
35 changes: 35 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
We welcome contributions from the community. Please read the following guidelines carefully to
maximize the chances of your PR being merged.

# Communication

* Before starting work on a major feature, please reach out to us via [GitHub](https://github.com/envoyproxy/nighthawk) or [Slack](https://envoyproxy.slack.com/archives/CDX3CGTT9). We will make sure no one else is already working on it and ask you to open a GitHub issue.
* Small patches and bug fixes don't need prior communication.

# Coding style

* Coding style mirrors [Envoy's policy](https://github.com/envoyproxy/envoy/blob/master/STYLE.md)

# Breaking change policy

Both API and implementation stability are important to Nighthawk. Since the API is consumed by clients beyond Nighthawk, breaking changes to that are prohibited.

# Submitting a PR

* Generally Nighthawk mirrors [Envoy's policy](https://github.com/envoyproxy/envoy/blob/master/CONTRIBUTING.md#submitting-a-pr) with respect to PR submission policy.
* Any PR that changes user-facing behavior **must** have associated documentation in [docs](docs) as
Comment thread
oschaaf marked this conversation as resolved.
well as [release notes](docs/root/version_history.md).

# PR review policy for maintainers

* Generally Nighthawk mirrors [Envoy's policy](https://github.com/envoyproxy/envoy/blob/master/CONTRIBUTING.md#pr-review-policy-for-maintainers) with respect to maintainer review policy.
* See [OWNERS.md](OWNERS.md) for the current list of maintainers.

# DCO: Sign your work

Commits need to be signed off. See [here](https://github.com/envoyproxy/envoy/blob/master/CONTRIBUTING.md#dco-sign-your-work).


## Triggering CI re-run without making changes

See [here](https://github.com/envoyproxy/envoy/blob/master/CONTRIBUTING.md#triggering-ci-re-run-without-making-changes).
28 changes: 28 additions & 0 deletions MAINTAINERS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Maintainers

This document aims to assist [maintainers](OWNERS.md).

## Envoy domain expertise

As a guideline, concepts in Nighthawk that are derived from Envoy
require someone with Envoy domain expertise in review. Notable examples
are the way Nighthawk internally computes cluster configuration, its
connection pool derivations, the `StreamDecoder` class, as well as anything related to the Nighthawk test server.

See [OWNERS.md](OWNERS.md) to find maintainers with expertise of
Envoy internals.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add some stuff on how to spot which changes are Nighthawk local vs. those that require deeper Envoy internals and architecture knowledge?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

## Pre-merge checklist

- Does the PR have breaking changes? Then that should be explicitly mentioned in the [version history](docs/root/version_history.md).
- New features should be added to the [version history](docs/root/version_history.md).
- Breaking changes to the [protobuf APIs](api/) are not allowed.

## Updates to the Envoy dependency

We try to [regularly synchronize our Envoy dependency](https://github.com/envoyproxy/nighthawk/pulls?utf8=%E2%9C%93&q=is%3Apr+is%3Aclosed+%22update+envoy%22+) with the latest revision. Nighthawk reuses large parts of Envoy's build system and CI infrastructure. When we update, that looks like:

- A change to [repositories.bzl](bazel/repositories.bzl) to update the commit and SHA.
- A sync of [.bazelrc](.bazelrc) with [Envoy's version](https://github.com/envoyproxy/envoy/blob/master/.bazelrc) to update our build configurations.
- A sync of the build image sha used in the [ci configuration](.circleci/config.yml) with [Envoy's version](https://github.com/envoyproxy/envoy/blob/master/.circleci/config.yml) to sync our CI testing environment.
- Sometimes the dependency update comes with changes that break our build. We include any changes required to Nighthawk to fix that.
15 changes: 15 additions & 0 deletions OWNERS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
* See [CONTRIBUTING.md](CONTRIBUTING.md) for general contribution guidelines.

This page lists all active maintainers and their areas of expertise. This can be used for
routing PRs, questions, etc. to the right place.

# Maintainers

* Otto van der Schaaf ([oschaaf](https://github.com/oschaaf)) (oschaaf@we-amp.com)
* All things Nighthawk
* Harvey Tuch ([htuch](https://github.com/htuch)) (htuch@google.com)
Comment thread
oschaaf marked this conversation as resolved.
* Envoy internals, architecture and performance methodology.
* John Plevyak ([jplevyak](https://github.com/jplevyak)) (jplevyak@google.com)
* Envoy internals and architecture.
* Jakub Sobon ([mum4k](https://github.com/mum4k)) (mumak@google.com)
* APIs, general functionality and miscellany.