You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ozone.apache.org by ri...@apache.org on 2025/03/27 21:41:14 UTC
(ozone-site) 01/10: HDDS-9869. Add How to Contribute page in the community section. #132 (#1)
This is an automated email from the ASF dual-hosted git repository.
ritesh pushed a commit to branch gh-pages
in repository https://gitbox.apache.org/repos/asf/ozone-site.git
commit ec9b5654e7c54eac221121d1a4b038c0e454528b
Author: Ritesh H Shukla <ke...@gmail.com>
AuthorDate: Wed Mar 26 12:52:37 2025 -0700
HDDS-9869. Add How to Contribute page in the community section. #132 (#1)
* HDDS-9869. Add How to Contribute page in the community section.
This replaces the placeholder with comprehensive guidelines for contributing
to Apache Ozone across multiple areas: code, documentation, testing, visual
design, bug reports, and community support.
Co-authored-by: Ritesh H Shukla <ri...@apache.org>
Co-authored-by: Ethan Rose <33...@users.noreply.github.com>
---
src/pages/community/how-to-contribute.md | 118 ++++++++++++++++++++++++++++---
1 file changed, 109 insertions(+), 9 deletions(-)
diff --git a/src/pages/community/how-to-contribute.md b/src/pages/community/how-to-contribute.md
index 198065aa..6c882a10 100644
--- a/src/pages/community/how-to-contribute.md
+++ b/src/pages/community/how-to-contribute.md
@@ -1,12 +1,112 @@
-# How to Contribute
+# How to Contribute to Apache Ozone
-**TODO [HDDS-9869](https://issues.apache.org/jira/browse/HDDS-9869) Fill in this page.**
+Thank you for your interest in contributing to Apache Ozone! This guide will help you understand the various ways you can contribute to the project and how to get started.
-This may end up similar to CONTRIBUTING.md in the Ozone repo, but should document all the ways to contribute outside of code as well.
+## Quick Links
-- Testing and filing issues
- - This may link to the [Report an Issue](report-an-issue) page.
-- Contributing code
- - Both Ozone backend and Recon UI/UX front end.
-- Contributing to the website
-- Graphic design work for logos or diagrams.
+- [GitHub Repository](https://github.com/apache/ozone)
+- [CONTRIBUTING.md](https://github.com/apache/ozone/blob/master/CONTRIBUTING.md) - Detailed contribution guidelines
+- [Newbie Jira Issues](https://issues.apache.org/jira/issues/?jql=labels%20%3D%20newbie%20AND%20project%20%3D%20%22Apache%20Ozone%22%20AND%20status%20%3D%20open%20ORDER%20BY%20created) - Good first issues for new contributors
+- [GitHub Discussions](https://github.com/apache/ozone/discussions) - Engage with the community
+- [Ozone Website](https://ozone.apache.org/) - Project documentation
+- [Slack Channel](http://s.apache.org/slack-invite) - Join #ozone on ASF Slack
+
+## Ways to Contribute
+
+Apache Ozone welcomes contributions in many forms, not just code. Here are various ways you can contribute:
+
+### Code Contributions
+
+#### Finding Issues to Work On
+
+- **Newbie Issues**: Start with [beginner-friendly issues](https://issues.apache.org/jira/browse/HDDS-12179?jql=labels%20%3D%20newbie%20AND%20project%20%3D%20%22Apache%20Ozone%22%20AND%20status%20%3D%20open%20ORDER%20BY%20created) that are good entry points
+- **All Open Issues**: Browse [unassigned Jira issues](https://issues.apache.org/jira/browse/HDDS-12179?jql=labels%20%3D%20newbie%20AND%20project%20%3D%20%22Apache%20Ozone%22%20AND%20status%20%3D%20open%20ORDER%20BY%20created) to find something that matches your interests and skills
+
+#### Making Code Changes
+
+1. **Set Up Development Environment**
+ - Fork and clone the repository
+ - Enable the `build-branch` GitHub Actions workflow in your fork
+
+2. **Create a Branch**
+ - Ensure a Jira issue exists for your task (e.g., HDDS-1234)
+ - Create a branch for your work: `git checkout -b HDDS-1234`
+
+3. **Develop Your Changes**
+ - [Follow code style guidelines](https://github.com/apache/ozone/blob/master/CONTRIBUTING.md#code-convention-and-tests)
+ - Write tests for your changes
+ - Run relevant checks from `hadoop-ozone/dev-support/checks/` directory
+
+4. **Submit Your Contribution**
+ - Push changes to your fork
+ - Wait for the `build-branch` workflow to complete
+ - Create a pull request following the template used. (PRs pushed to master first and then if needed to a release branch)
+ - Update the Jira issue status to "Patch Available"
+ - Once the PR is merged close the Jira if completely resolved.
+
+### Reviewing Code and Design
+
+Code reviews are a crucial part of the Apache Ozone development process. Reviewing others' code not only helps maintain quality but is also an excellent way to learn about the codebase.
+
+#### How to Review Pull Requests
+
+1. **Browse Open PRs**: Visit the [open pull requests](https://github.com/apache/ozone/pulls) on GitHub
+2. **Choose PRs to Review**: Start with PRs in areas you're familiar with or interested in learning
+3. **Run the Code**: When possible, check out the PR branch and test it locally
+4. **Review Checklist**:
+ - Does the code follow project style guidelines?
+ - Are there sufficient tests for the new functionality?
+ - Is the documentation updated?
+ - Is the design sound and consistent with the rest of the codebase?
+ - Does the code address the issue described in the linked Jira?
+
+### Documentation
+
+- **Website Improvements**: Contribute to the [Ozone website](https://ozone.apache.org/)
+- **Developer Docs**: Enhance the [markdown documentation](https://github.com/apache/ozone/tree/master/hadoop-hdds/docs/content) in the source tree
+
+### Testing
+
+- **Unit Tests**: Write JUnit tests for Java code
+- **Acceptance Tests**: Create Docker + Robot Framework tests
+- **Application integration test**: Report any issues integrating with third party applications.
+- **Performance Testing**: Run benchmarks with `ozone freon` and report findings
+
+### Visual Design & Art
+
+Ozone welcomes contributions in design and visual arts:
+
+- **Logos and Icons**: Create variations of the Ozone logo for different contexts
+- **Diagrams**: Design architectural and conceptual diagrams for documentation
+- **Website Design**: Improve the look and feel of the Ozone website
+- **Slide Decks**: Design templates for presentations about Ozone
+
+Share your artwork through the [GitHub Discussions](https://github.com/apache/ozone/discussions) or on the dev mailing list dev@ozone.apache.org.
+
+### Bug Reports and Feature Requests
+
+- Report bugs or suggest features through [Jira](https://issues.apache.org/jira/projects/HDDS/)
+- Search existing issues before creating a new one
+- Provide detailed steps to reproduce bugs
+
+### Community Support
+
+- Answer questions on [GitHub Discussions](https://github.com/apache/ozone/discussions)
+- Help review [pull requests](https://github.com/apache/ozone/pulls)
+- Join community calls and discussions
+
+## Getting Help
+
+Details for how to [reach the community can be found here](communication-channels)
+
+## Recognition
+
+All contributions are recognized in Apache Ozone:
+
+- Code contributions are recorded in Git history
+- Documentation improvements help the entire community
+- Testing helps ensure project quality
+- Bug reports guide project improvement
+- Evangelism: write blog posts, submit talks at conferences, commenting on social media
+
+Your contributions, large or small, are valued and appreciated by the Ozone community!
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@ozone.apache.org
For additional commands, e-mail: commits-help@ozone.apache.org