GoToSocial/vendor/github.com/cilium/ebpf/CONTRIBUTING.md

1.4 KiB

How to contribute

Development is on GitHub and contributions in the form of pull requests and issues reporting bugs or suggesting new features are welcome. Please take a look at the architecture to get a better understanding for the high-level goals.

New features must be accompanied by tests. Before starting work on any large feature, please join the #ebpf-go channel on Slack to discuss the design first.

When submitting pull requests, consider writing details about what problem you are solving and why the proposed approach solves that problem in commit messages and/or pull request description to help future library users and maintainers to reason about the proposed changes.

Running the tests

Many of the tests require privileges to set resource limits and load eBPF code. The easiest way to obtain these is to run the tests with sudo.

To test the current package with your local kernel you can simply run:

go test -exec sudo  ./...

To test the current package with a different kernel version you can use the run-tests.sh script. It requires virtme and qemu to be installed.

Examples:

# Run all tests on a 5.4 kernel
./run-tests.sh 5.4

# Run a subset of tests:
./run-tests.sh 5.4 go test ./link