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

add contributing guide #11

Merged
merged 1 commit into from
Apr 3, 2024
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
33 changes: 33 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
petrkotas marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<!-- Thanks for sending a pull request! Here are some tips for you:
1. Consider creating this PR as draft, for early feedback ping code owners
2. Structure your PR accordingly to the focus areas, e.g. `api` containing all exposed API specs
3. Write meaningful commit messages and PR description

For more details, please check the [CONTRIBUTING](../CONTRIBUTING.md) guide.
-->

### What this PR does
**Before this PR:**

**After this PR:**

Jira: <!-- optional: link to Jira issue -->
Link to demo recording: <!-- optional: link to a demo recording -->

### Special notes for your reviewer

<!-- optional -->

### Checklist

This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

- [ ] PR: The PR description is expressive enough and will help future contributors
- [ ] Code: [Write code that humans can understand](https://en.wikiquote.org/wiki/Martin_Fowler#code-for-humans) and [Keep it simple](https://en.wikipedia.org/wiki/KISS_principle)
- [ ] Refactor: You have [left the code cleaner than you found it (Boy Scout Rule)](https://learning.oreilly.com/library/view/97-things-every/9780596809515/ch08.html)
- [ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
- [ ] Deployment: The deployment process was considered and addressed if required
- [ ] Testing: New code requires new unit tests.
- [ ] Documentation: Is the documentation updated? Either in the doc located in focus area, in the README or in the code itself.
- [ ] Customers: Is this change affecting customers? Is the release plan considered?
54 changes: 54 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Contributing to ARO HCP

Welcome to the ARO HCP project! We appreciate your interest in contributing. This guide will help you get started with the contribution process.


## Table of Contents
- [Getting Started](#getting-started)
- [Contributing Guidelines](#contributing-guidelines)
- [Code of Conduct](#code-of-conduct)
- [License](#license)


## Getting Started
To contribute to ARO HCP, follow these steps:

1. Fork the repository to your GitHub account.
2. Clone the forked repository to your local machine.
3. Create a new branch for your changes.
4. Make your changes and commit them.
5. Push your changes to your forked repository.
6. Submit a pull request to the main repository.


## Contributing Guidelines
Please follow these guidelines when contributing to ARO HCP:

- Please consider, starting with a draft PR, unless you are ready for review. If you want a early feedback,
do not hesitate to ping the code owners.
- Write meaningful commit messages and PR description. The PR will be squashed before merging, unless
the splitting into multiple commits is explicitly needed in order to separate changes and allow
later `git bisect`.
- The repository is structured according to the focus areas, e.g. `api` containing all exposed API specs.
When you contribute, please follow this structure and add your contribution to the appropriate folder.
When in doubt, open PR early and ask for feedback.
- When applicable, please always cover new functionality with the appropriate tests.
- When adding functionality, that is not yet implemented, please write appropriate documentation.
When in doubt, ask yourself what it took you to understand the functionality, and what would you need
to know to use it.
- When adding new features, please consider to record a short video showing how it works and explaining
the use case. This will help others to understand better even before digging into the code. When done,
upload the recording to the [Drive](https://drive.google.com/drive/folders/1RB1L2-nGMXwsOAOYC-VGGbB0yD3Ae-rD?usp=drive_link) and share the link in the PR.
- When you are working on the issue that has Jira card, please always document all tradeoffs and decisions
in the Jira card. Please, also include all design documents and slack discussion in the Jira. This will
help others to understand the context and decisions made.

Please note, that you might be asked to comply with these guidelines before your PR is accepted.


## Code of Conduct
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq) or contact [[email protected]](mailto:[email protected]) with any additional questions or comments.


## License
ARO HCP is licensed under the Apache License, Version 2.0. Please see the [LICENSE](LICENSE) file for more details.