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

Updated Contributor Guide and added Core Contributors #247

Merged
merged 3 commits into from
May 19, 2022
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
40 changes: 40 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,3 +87,43 @@ During development, you may need to utilize some `make` utils to update generate

## Submission Guidelines
Ketch follows a lightweight Pull Request process. When submitting a PR, answering a few [basic questions](https://github.com/theketchio/ketch/blob/main/.github/pull_request_template.md) around type of change and steps to test and you are well on your way to a PR approval.

## Your First Ketch Pull Request
Please Fork the project and create a branch to make your changes to. Directly commit your changes to your branch and then when
ready to merge upstream, feel free to and create a PR. There are quality steps that need to be achieved.

`git checkout -b add-ketch-feature-of-squash-bug`

### Running Tests
As a good practice, locally running the integration tests is a good idea. Because during the CI Step e.g GitHub Actions, these will be
run again as a quality gate.

#### Unit Tests
Unit test coverage is in place. Running "make test" will run all of the Unit Tests e.g "Go Test".
`make test`

Test coverage is represented as files suffixed as "test". A good idea is to include Unit Tests
with your changes.

[Example Unit Test](https://github.com/theketchio/ketch/blob/main/internal/controllers/app_controller_test.go)

#### Ketch CLI
The CLI has integration tests if you are making CLI level changes. These tests will run the
CLI against a live Ketch Installation.

`./cli_tests/app.sh`
[Ketch App CLI Tests](https://github.com/theketchio/ketch/blob/main/cli_tests/app.sh#L3-L8)

`./cli_tests/job.sh`
[Ketch Jobs CLI Tests](https://github.com/theketchio/ketch/blob/main/cli_tests/job.sh#L3-L8)

### Submitting PR
When you commit via GitHub, there will be GitHub Actions that is ran on your behalf.
[GitHub Actions Config](https://github.com/theketchio/ketch/blob/main/.github/workflows/deploy.yaml#L50-L89)

The GitHub Actions will create a temporary K3d cluster on the GitHub Actions Agent to run the tests.

Assuming everything passes in your branch, you are now ready to create a Pull Request and get ready for the merge.

#### PR Acceptance
Currently, one Core Contributor will have to accept the Pull Request. Thanks for your PR!
14 changes: 14 additions & 0 deletions CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Here is a list of Contributors to the Ketch Project.

# Core Contributors

* [John Shenk](https://github.com/stinkyfingers)
* [Aleksej Paschenko](https://github.com/aleksej-paschenko)
* [Ravi Lachhman](https://github.com/ravilach)
* [Vivek Pandey](https://github.com/vivek)
* [David French](https://github.com/DavisFrench)
* [Stevan Koncar](https://github.com/koncar)
* [Kumar Saurabh](https://github.com/itsksaurabh)
* [Kavin Aravind](https://github.com/kavinaravind)

Thanks so much for your contributions!