Skip to content

Commit

Permalink
docs: refactor README, CONTRIBUTING
Browse files Browse the repository at this point in the history
Signed-off-by: Abhinandan Purkait <[email protected]>
  • Loading branch information
Abhinandan-Purkait committed Feb 6, 2025
1 parent 15c2168 commit 79687ee
Show file tree
Hide file tree
Showing 310 changed files with 539 additions and 427 deletions.
9 changes: 0 additions & 9 deletions .github/weekly-digest.yml

This file was deleted.

310 changes: 69 additions & 241 deletions CONTRIBUTING.md

Large diffs are not rendered by default.

97 changes: 48 additions & 49 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,76 +1,71 @@
# Community Repo Cafe
# OpenEBS Community

[![OpenEBS Welcome to Community Repo Coffee SHop](/images/coffe-shop-hacker-pixel-art_HERO_banner.png)](https://www.openebs.io/)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fopenebs%2Fcommunity.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fopenebs%2Fcommunity?ref=badge_shield)
[![Slack](https://img.shields.io/badge/chat-slack-ff1493.svg?style=flat-square)](https://kubernetes.slack.com/messages/openebs/)
<BR>
[![CNCF Status](https://img.shields.io/badge/cncf%20status-sandbox-blue.svg)](https://www.cncf.io/projects/openebs/)
[![LICENSE](https://img.shields.io/github/license/openebs/openebs.svg)](./LICENSE)
[![FOSSA Status](https://app.fossa.com/api/projects/custom%2B162%2Fgithub.com%2Fopenebs%2Fopenebs.svg?type=shield&issueType=license)](https://app.fossa.com/projects/custom%2B162%2Fgithub.com%2Fopenebs%2Fopenebs?ref=badge_shield&issueType=license)
[![CLOMonitor](https://img.shields.io/endpoint?url=https://clomonitor.io/api/projects/cncf/openebs/badge)](https://clomonitor.io/projects/cncf/openebs)
[![Slack](https://img.shields.io/badge/chat-slack-ff1493.svg?style=flat-square)](https://kubernetes.slack.com/messages/openebs)
[![Community Meetings](https://img.shields.io/badge/Community-Meetings-blue)](https://us05web.zoom.us/j/87535654586?pwd=CigbXigJPn38USc6Vuzt7qSVFoO79X.1)
[![Artifact HUB](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/openebs)](https://artifacthub.io/packages/helm/openebs/openebs)

> [!Important]
> OpenEBS is an umbrella :open_umbrella: project, composed as a federation of individual sub projects (repositories). The project files in this repository apply to the umbrella project, every sub project, repository and file in the OpenEBS organization.
<BR>
> OpenEBS is an umbrella :open_umbrella: project, composed as a federation of individual sub-projects. The project files in this repository apply to the umbrella project and every sub-project in the OpenEBS organization.
## About the Community Repo Cafe<BR>
## What is OpenEBS

This Community repository is the ```central location``` for project info and files (like [our GOVERNANCE contract](GOVERNANCE.md) & [our CONTRIBUTING guide](CONTRIBUTING.md) etc) for the OpenEBS organization. You'll also find a [Top level Issues List](https://github.com/openebs/openebs/issues) for Organization related issues that span across products/projects. We also provide a [main Discussions forum](https://github.com/openebs/openebs/discussions) where **```everyone```** can collaborate and discuss anything.
<BR>
OpenEBS is an open-source Container Native Storage solution that provides persistent storage for Kubernetes workloads. It enables dynamic provisioning of storage resources using containerized storage controllers, making it highly flexible and cloud-native. OpenEBS supports various storage engines, including LocalPVs for direct node storage and Replicated PV advanced data replication and resilience. It is designed to integrate seamlessly with Kubernetes, offering benefits like storage policies, resize, thin-provisioning, snapshots, and restore capabilities, making it an ideal choice for stateful applications. To read more about OpenEBS, check [here](https://github.com/openebs/openebs/).

## Important documents and contacts
Below are the list of sub-projects:

This repository contains all the project files for the organization, and the following project files are important for understanding the OpenEBS project, and how we operate:
- [Local PV Hostpath](https://github.com/openebs/dynamic-localpv-provisioner/)
- [Local PV ZFS](https://github.com/openebs/zfs-localpv)
- [Local PV LVM](https://github.com/openebs/lvm-localpv)
- [Mayastor](https://github.com/openebs/mayastor)

* [OpenEBS Vision](/VISION.md) Defines the vision, mission statement; what is in-scope and out-of-scope for the project
* [Governance](/GOVERNANCE.md) How the project operates
* [Contributing](/CONTRIBUTING.md) How to contribute, guidelines for being a contributor
<BR>
## Who we are

## Project Leadership team
We are a community of innovative Data Storage engineers that contribute to this project. OpenEBS is the result of hundreds of amazing individuals, contributors and storage engineers who provide brainstorming ideas, feedback, code reviews and high-quality code to the project. Anyone who is passionate about storage and data is welcome here. <BR>

This Community is managed by the OpenEBS ```Maintainers``` and <kbd>**Senior leaders**</kbd> within the OpenEBS project team. We liaise with the Linux Foundation and CNCF on project, governance
and operational matters. We curate the daily operations of the project, product, roadmaps, initiatives, all engineering/code activities and all events (including conferences).
<BR>
## Community

## Who we are
This Community repository is the ```central location``` for project info and files like our governance, contribution, code of conduct, security and vision for the OpenEBS organization laid out by the Maintainers. You'll also find a [Top level Issues List](https://github.com/openebs/openebs/issues) for Organization related issues that span across products/projects. We also provide a [main Discussions forum](https://github.com/openebs/openebs/discussions) where **```everyone```** can collaborate and discuss anything.

We are a community of innovative Data Storage engineers that contribute to this project. We are grateful for the major sponsorship provided by [DataCore (also known as DataCore Software)](https://datacore.com), who donate a team of dedicated Dev/QA/Engineers, Product Mgmt, Marketing, Business and Operational leadership as well as significant engineering infrastructure resources and financial funding. Without DataCore OpenEBS would not be the successful product that it is today. OpenEBS is the result of hundreds of amazing individuals, contributors and storage engineers who provide brainstorming ideas, feedback, code reviews and high-quality code to the project. Anyone who is passionate about storage and data is welcome here. <BR>
- Homepage: [openebs.io](https://openebs.io/)
- Mailing list: [email protected]
- Slack: [slack](https://kubernetes.slack.com/messages/openebs)
- Twitter: [openebs](https://twitter.com/intent/follow?screen_name=openebs)
- Community Meeting: OpenEBS holds a monthly community meeting via Zoom on the last Thursday of the month, at 14:00 UTC. [Meeting Link](https://us05web.zoom.us/j/87535654586?pwd=CigbXigJPn38USc6Vuzt7qSVFoO79X.1)
- Community Meeting Recordings: [Youtube](https://www.youtube.com/@openebscommunity6021)

## Monthly Community Meetings
## Documents

OpenEBS holds a monthly community meeting via Zoom on the last Thursday of the month, at 14:00 UTC. <BR>
- [Official Documentation](https://openebs.io/docs)
- [Governance](./GOVERNANCE.md)
- [Contributing Guidelines](./CONTRIBUTING.md)
- [Security Guidelines](./SECURITY.md)
- [Vision](./VISION.md)
- [Roadmap Tracker](https://github.com/orgs/openebs/projects/78)

Meeting Link: <https://us05web.zoom.us/j/87535654586?pwd=CigbXigJPn38USc6Vuzt7qSVFoO79X.1> <BR>
Starting from August 2024, the meetings are recorded and posted on YouTube: <https://www.youtube.com/@openebscommunity6021> <BR>
## Project Leadership team

## Code of Conduct
This Community is managed by the OpenEBS [Maintainers](./MAINTAINERS.md) within the OpenEBS project team. We liaise with the Linux Foundation and CNCF on project, governance
and operational matters. We curate the operations of the project, product, roadmaps, initiatives, all engineering/code activities and all events (including conferences).

OpenEBS follows the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md).
[<img alt="Container Storage Interface group" src="images/CNCF_csi-horizontal-color_2024.png" width="320">](https://github.com/kubernetes/community/tree/HEAD/sig-storage) [<img alt="Storage Technical Advisory Group" src="images/CNCF_tag-storage-horizontal-color_2024.png" width="320">](https://github.com/cncf/tag-storage) &emsp; &emsp; [<img alt="Cloud Native Community Groups" src="images/CNCF_cncg-icon-color_2024.png" width="200">](https://github.com/cncf/communitygroups)

---
[![OpenEBS Welcome Banner](/images/community_banner_retro_gamer_level-up-2024_transp.png)](https://www.openebs.io/)
## How to get involved

> [!NOTE]
> CNCF Project status: SANDBOX <BR>
> ```⚠️``` &nbsp; In Jan 2024, under the guidance of CNCF TOC, our project moved from Sandbox level to Archive level, enabling us to implement an extensive restructuring initiative. We are actively working to archive legacy sub projects, repositories and dependencies to a CNCF owned GitHub organization called: [OpenEBS-Archive](https://github.com/openebs-archive), plus updating our governance and operating procedures.<BR>
> ```⚠️``` &nbsp; On 13 June 2024, under guidance of CNCF TOC, our project re-Applied for CNCF promotion from ```Archive``` up to ```Sandbox``` level and was accepted back into
```Sandbox``` in Oct 2024. See our Sandbox promotion [application here](https://github.com/cncf/sandbox/issues/104)
>
> * What's changing in the technology stack? The product team is unifying ``` Five ``` major Storage Engines (<kbd>Mayastor</kbd>, <kbd>LocalPV-LVM</kbd>, <kbd>LocalPV-ZFS</kbd>, <kbd>LocalPV-Hostpath</kbd>, <kbd>RawFile</kbd>) into one core OpenEBS code-base.
> * For more information, see [the parent issue]( https://github.com/openebs/openebs/issues/3701) in our main repo for more detail.
>
<BR>
One of the easiest ways to contribute is to participate in discussions at community engagements.

---
If you're looking for something to work on, read the [contribution guidelines](./CONTRIBUTING.md) and then you start by looking for GitHub issues, marked with `kind/good-first` or the `kind/help-wanted` labels.

[![CNCF logo](/images/CNCF_member-silver-color.svg)](https://www.datacore.com/)
OpenEBS is a CNCF project and DataCore is a CNCF Silver member. DataCore supports CNCF extensively and has funded OpenEBS participating in every KubeCon event since 2020. Our project team is managed under the CNCF Storage Landscape and we contribute to the CNCF CSI and TAG Storage project initiatives. We proudly support CNCF Cloud Native Community Groups initiatives.<BR>
<BR>
And, we can always use more testing, have more and improved docs, or just write a blog post on what you have discovered whilst using OpenEBS.

| [<img alt="Container Storage Interface group" src="/images/CNCF_csi-horizontal-color_2024.png" width="320">](https://github.com/kubernetes/community/tree/master/sig-storage) | [<img alt="Storage Technical Advisory Group" src="/images/CNCF_tag-storage-horizontal-color_2024.png" width="320">](https://github.com/cncf/tag-storage) | &emsp; &emsp; [<img alt="Cloud Native Community Groups" src="/images/CNCF_cncg-icon-color_2024.png" width="200">](https://github.com/cncf/communitygroups)|
| :--- | :---: | ---: |
## Code of Conduct

<BR>
OpenEBS adopts the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/HEAD/code-of-conduct.md).

**Thanks for dropping by.\
We appreciate everyone in our community and would love to hear from you.**
This open governance applies to all repos under the `openebs` org. Enjoy coding and collaboration in OSS world!

## Activity dashboard

Expand All @@ -79,3 +74,7 @@ We appreciate everyone in our community and would love to hear from you.**
## License

[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fopenebs%2Fcommunity.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fopenebs%2Fcommunity?ref=badge_large)

## OpenEBS is a [CNCF Sandbox Project](https://www.cncf.io/projects/openebs)

![OpenEBS is a CNCF Sandbox Project](https://github.com/cncf/artwork/blob/main/other/cncf/horizontal/color/cncf-color.png)
21 changes: 4 additions & 17 deletions VISION.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ This document presents the project:

## Vision, Mission Statement and Scope

**Our Vision:** The Kubernetes enterprise storage standard <BR>
**Our Vision:** The democratized Kubernetes enterprise storage standard <BR>
**Our Mission Statement:** OpenEBS is a *CNCF project* that provides fast, resilient, available, native, enterprise-grade storage to applications running in *Kubernetes clusters*.

| Term | Meaning |
Expand All @@ -28,6 +28,7 @@ This document presents the project:
| *Native* | Implemented as ```container native storage```, a Kubernetes natively integrated component, optimized for storage contained inside a Kubernetes cluster (Hyper-converged). |
| *Enterprise grade* | A fully featured, community-proven, rigorously tested, trustworthy, Mission Critical product. |
| *Kubernetes* | OpenEBS focus is for Kubernetes-on-Linux. |
| *Democratized* | Accessible to everyone. |

<BR>

Expand All @@ -37,7 +38,7 @@ This document presents the project:
### Scope

In the past, the OpenEBS project has tried to accomplish too much. Our scope was too broad and not clearly defined enough for our community. We are explicitly naming the following capabilities as ```in-scope``` and ```out-of-scope``` for the project:
The OpenEBS project has a clearly defined focus for our community. We are explicitly naming the following capabilities as `in-scope` and `out-of-scope` for the project:

> **In Scope** <BR>
Expand Down Expand Up @@ -89,21 +90,7 @@ OpenEBS is a self-governing project, and operates within the following restraint
* The OpenEBS project is open source, and operations are governed by CNCF rules set up for CNCF projects.
* The OpenEBS project adds ```domain-specific Governance```, ```Contribution``` and ```operating rules``` on **top of the CNCF rules**. We provide for exceptions from the CNCF rules if approved by the CNCF Technical Oversight Committee (TOC).

[![CNCF logo](/images/CNCF_member-silver-color.svg)](https://www.datacore.com/)
DataCore, Inc. is a CNCF Silver member. DataCore supports CNCF extensively and funds all OpenEBS CNCF events. The project team is managed under the CNCF Storage Landscape and contributes to the CNCF CSI and TAG Storage project initiatives at the CNCF membership level that funding allows. OpenEBS proudly supports CNCF Cloud Native Community Groups initiatives.<BR>
<BR>

| <img alt="Container Storage Interface group" align="left" src="/images/CNCF_csi-horizontal-color_2024.png" width="320" /> | <img alt="Storage Technical Advisory Group" align="center" src="/images/CNCF_tag-storage-horizontal-color_2024.png" width="320" /> | &emsp; &emsp; <img alt="Cloud Native Community Groups" align="right" src="/images/CNCF_cncg-icon-color_2024.png" width="200" /> |
| :--- | :---: | ---: |

### DataCore
>
> [!IMPORTANT]
>
> * OpenEBS was created by MayaData (now part of [DataCore Software, Inc.](https://datacore.com) ), and donated to [CNCF](https://cncf.io) in 2019.
> * DataCore engineers contribute a majority of the contributions, program management, Engineering, Dev, and QA resources as well as considerable infrastructure funding to the daily operations of the project.
> * The project requires multiple Full-Time ```Subject Matter Experts```, Full-Time storage engineers and Full-Time QA Engineers/testers. While the project requires this commitment, it is expected DataCore engineers may be a majority of the contributing Eng/Dev/QA/PM community.
> * OpenEBS is a community project, and DataCore has been and continues to be a significant part of the community.
[<img alt="Container Storage Interface group" src="images/CNCF_csi-horizontal-color_2024.png" width="320">](https://github.com/kubernetes/community/tree/master/sig-storage) [<img alt="Storage Technical Advisory Group" src="images/CNCF_tag-storage-horizontal-color_2024.png" width="320">](https://github.com/cncf/tag-storage) &emsp; &emsp; [<img alt="Cloud Native Community Groups" src="images/CNCF_cncg-icon-color_2024.png" width="200">](https://github.com/cncf/communitygroups)

## Conformance

Expand Down
56 changes: 56 additions & 0 deletions contribute/CONTRIBUTING-TO-DEVELOPER-DOC.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Contributing to OpenEBS [Developer Documentation]

This document describes the process for improving developer documentation by creating PRs at OpenEBS.

The developer documentation includes anything that will help the community like:

- Architecture and Design documentation
- Technical or Research Notes
- FAQ
- Process Documentation
- Generic / Miscellaneous Notes

We are also looking for an explainer video or presentation from the community that helps new developers in understanding the OpenEBS Architecture, its use cases, and installation procedure locally.

At a very high level, the process to contributing and improving the code is pretty simple:

- Submit an issue describing your proposed change
- Create your development branch
- Commit your changes
- Submit your Pull Request

The following sections describe some guidelines that can come in handy with the above process.
*Followed by the guidelines, is a [cheatsheet](https://github.com/openebs/openebs/blob/HEAD/contribute/git-cheatsheet.md) with frequently used git commands.*

## Submit an issue describing your proposed change

Some general guidelines when submitting issues for developer documentation:

- If the proposed change requires an update to the existing page, please provide a link to the page in the issue.
- If you want to add a new page, then go ahead and open an issue describing the requirement for the new page.

You can also help with some existing issues under this category available at [developer documentation issues list](https://github.com/openebs/openebs/issues?q=is%3Aopen%20label%3A%22kind%2Fdocumentation%22%20)

## Create your development branch

- Fork the [OpenEBS](https://github.com/openebs/openebs/) repository and if you have forked it already, rebase with develop branch to fetch latest changes to your local system.
- Create a new development branch in your forked repository with the following naming convention: *"task description-#issue"*

**Example:** This change is being developed with the branch named: *OpenEBS-DevDoc-PR-Workflow-#213*

## Commit your changes

- Reference the issue number along with a brief description in your commits
- Set your commit.template to the `COMMIT_TEMPLATE` given in the `.github` directory.
`git config --local commit.template $GOPATH/src/github.com/openebs/openebs/.github`
- Signing of the commit is mandatory.

## Submit a Pull request

- Rebase your development branch
- Submit the PR from the development branch to the openebs/openebs:develop
- Incorporate review comments, if any, in the development branch.
- Once the PR is accepted, close the branch.
- After the PR is merged the development branch in the forked repository can be deleted.

If you need any help with git, refer to this [git cheat sheet](./git-cheatsheet.md) and go back to the [**contributing to OpenEBS Documentation**](../CONTRIBUTING.md) guide to proceed.
Loading

0 comments on commit 79687ee

Please sign in to comment.