There are currently two ways that you can contribute:
- Issues - for discussion of suspected bugs, suggested improvements or feature requests.
- Pull Requests - for fixes and improvements.
Before contributing, please familiarise yourself with our Code of Conduct & the terms of our License.
- Create a new issue, please apply at least 1 label.
- Once discussed and resolved a Thought Machine Organisation member will close the issue.
Pull requests to this project should either:
- Link to a new / existing Issue.
- Be initiated from a ticket from the Thought Machine jira board, the link of the PR should be commented on the jira ticket.
The process is as follows:
- Clone the repository using SSH
git clone git@github.com:thought-machine/falco-probes.git
. - Create a local feature branch
git checkout -b <feature-branch
, and set it's upstreamgit branch -u origin
. - Add your commits with a descriptive subject line and body using
git commit -a
. - Push your commits to a remote feature branch
git push origin <feature-branch>
. - Create a pull request through the UI, please request a review from the Thought Machine Organisation members and apply any relevant labels.
- Once discussed and approved, the UI will be used to squash and merge the PR onto master by a Thought Machine Organisation member.
- Once merged the remote branch should be deleted.
- Add a new Golang package for the operating system under
./pkg/operatingsystem
. - Implement the
operatingsystem.OperatingSystem
interface, see./pkg/operatingsystem/amazonlinux2
for an example. - Add your new operating system to the
OperatingSystems
map in./pkg/resolver/resolver.go
.
Here's some information that might be helpful while working on PRs:
- The repository layout largely maps to the structure of golang-standards/project-layout.
- The output of our Releases are the Falco probe files published as assets (as detailed in REPOSITORY_DESIGN.md), rather a package of this repository's code.
- The automated workflows involved to create each Release can be seen in Actions.
- Should interest in contributing increase, the Thought Machine Organisation members may consider implementing a CLA/DCO as needed.