Skip to content

Commit 3eebbcd

Browse files
乔普ZiMengSheng
authored andcommitted
add community tab
Signed-off-by: 乔普 <wangjianyu.wjy@alibaba-inc.com>
1 parent 08fa87a commit 3eebbcd

File tree

7 files changed

+407
-0
lines changed

7 files changed

+407
-0
lines changed

community/channels.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
sidebar_label: Channels
3+
sidebar_position: 1
4+
---
5+
# Channels
6+
There are following active communication channels:
7+
8+
- Bi-weekly Community Meeting (APAC, *Chinese*):
9+
- Tuesday 19:30 GMT+8 (Asia/Shanghai)
10+
- [Meeting Link(DingTalk)](https://meeting.dingtalk.com/j/ptVteJpQx5W)
11+
- [Notes and agenda](https://alidocs.dingtalk.com/i/nodes/2Amq4vjg89jyZdNnCLw1Abx0W3kdP0wQ)
12+
- Slack(English): [koordinator channel](https://kubernetes.slack.com/channels/koordinator) in Kubernetes workspace
13+
- DingTalk(Chinese): Search Group ID `33383887` or scan the following QR Code
14+
15+
<div>
16+
<img src="https://github.com/koordinator-sh/koordinator/raw/main/docs/images/dingtalk.png" width="300" title="dingtalk"/>
17+
</div>

community/committee.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
---
2+
sidebar_label: Committee
3+
sidebar_position: 4
4+
---
5+
# Discuss with Committee
6+
## Steering Committee
7+
| Name | Affiliation |
8+
|--------|-------------------|
9+
| [Fansong Zeng](https://github.com/hormes) |Alibaba Cloud|
10+
11+
## The Koordinator Maintainers
12+
13+
This file lists the maintainers of the Koordinator project. The responsibilities of maintainers are listed in the community membership file.
14+
15+
|Name|GitHub ID|Affiliation|Term|
16+
|----------------------------------------------------|-----------------------------------------------|----------------------|------|
17+
| [Fansong Zeng](mailto:fansong.cfs@alibaba-inc.com) | [Fansong Zeng](https://github.com/hormes) | Alibaba Cloud |2023.07 - Present|
18+
| [Zuowei Zhang](mailto:zzw261520@alibaba-inc.com) | [zwzhang0107](https://github.com/zwzhang0107) | Alibaba Cloud |2023.07 - Present|
19+
| [Zehui Song](mailto:songzh215@163.com) | [songzh215](https://github.com/songzh215) | Xiaohongshu |2024.5 - Present|
20+
| [Lijie Wang](mailto:j4ckstraw@foxmail.com) | [j4ckstraw](https://github.com/j4ckstraw) | Xiaomi |2024.5 - Present|
21+
| [Ming Liu](mailto:2876757716@qq.com) | [lucming](https://github.com/lucming) | Individual Developer |2024.5 - Present|
22+
| [Kang Zhang](mailto:kang.zhang@intel.com) | [kangclzjc](https://github.com/kangclzjc) | NVIDIA |2024.5 - Present|
23+
24+
### History Maintainers
25+
26+
A Maintainer’s term automatically ends if they cease to perform the responsibilities listed in the community membership file for over three months.
27+
28+
|Name|GitHub ID|Affiliation|Term|
29+
|----------------------------------------------------|-----------------------------------------------|----------------------|------|
30+
| [Siyu Wang](mailto:jiuzhu.wsy@alibaba-inc.com) | [FillZpp](https://github.com/FillZpp) | Alibaba Cloud |2023.07 - 2026.02|
31+
| [Tao Li](mailto:joseph.t.lee@outlook.com) | [eahydra](https://github.com/eahydra) | Individual Developer |2023.07 - 2026.02|
32+
| [Jason Liu](mailto:jasonliu747@gmail.com) | [jasonliu747](https://github.com/jasonliu747) | Alibaba Cloud |2023.07 - 2026.02|
33+
34+
## The Koordinator Approvers
35+
|GitHub ID|Affiliation|Scope (Modules)|
36+
| :--- | :--- | :--- |
37+
| [zwzhang0107](https://github.com/zwzhang0107) | Alibaba Cloud | API Machinery, SLO Controller, Koordlet, Webhook, Prediction |
38+
| [saintube](https://github.com/saintube) | Alibaba Cloud | CI, Koordlet, Prediction, Job |
39+
| [ZiMengSheng](https://github.com/ZiMengSheng) | Alibaba Cloud | API Machinery, Scheduler, Device, Job |
40+
| [zqzten](https://github.com/zqzten) | Ant Group | Device, Job |
41+
| [buptcozy](https://github.com/buptcozy) | Alibaba Cloud | Scheduler |
42+
| [songtao98](https://github.com/songtao98) | Alibaba Cloud | Descheduler |
43+
| [honpey](https://github.com/honpey) | Alibaba Cloud | Runtime Proxy |
44+
| [ZYecho](https://github.com/ZYecho) | - | Runtime Proxy |
45+
46+
47+

community/contributing.md

Lines changed: 173 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,173 @@
1+
---
2+
sidebar_label: Contributing
3+
sidebar_position: 3
4+
---
5+
# Contributing to Koordinator
6+
7+
Welcome to Koordinator! Koordinator consists several repositories under the organization. We encourage you to help out
8+
by reporting issues, improving documentation, fixing bugs, or adding new features.
9+
10+
Please also take a look at our code of conduct, which details how contributors are expected to conduct themselves as
11+
part of the Koordinator community.
12+
13+
We made Koordinator open-source to empower developers to fix and extend the product to better meet their needs. Nothing
14+
thrills us more than people so passionate about the product that they're willing to spend their own time to learn the
15+
codebase and give back to the community. We created this doc, so we can support contributors in a way that doesn't
16+
sacrifice precious bandwidth that we use to serve our users and otherwise meet our community goals.
17+
18+
## Reporting issues
19+
20+
To be honest, we regard every user of Koordinator as a very kind contributor. After experiencing Koordinator, you may
21+
have some feedback for the project. Then feel free to open an issue.
22+
23+
There are lots of cases when you could open an issue:
24+
25+
- bug report
26+
- feature request
27+
- performance issues
28+
- feature proposal
29+
- feature design
30+
- help wanted
31+
- doc incomplete
32+
- test improvement
33+
- any questions on project
34+
- and so on
35+
36+
Also we must remind that when filing a new issue, please remember to remove the sensitive data from your post. Sensitive
37+
data could be password, secret key, network locations, private business data and so on.
38+
39+
## Code and doc contribution
40+
41+
Every action to make Koordinator better is encouraged. On GitHub, every improvement for Koordinator could be via a PR (
42+
short for pull request).
43+
44+
- If you find a typo, try to fix it!
45+
- If you find a bug, try to fix it!
46+
- If you find some redundant codes, try to remove them!
47+
- If you find some test cases missing, try to add them!
48+
- If you could enhance a feature, please DO NOT hesitate!
49+
- If you find code implicit, try to add comments to make it clear!
50+
- If you find code ugly, try to refactor that!
51+
- If you can help to improve documents, it could not be better!
52+
- If you find document incorrect, just do it and fix that!
53+
- ...
54+
55+
### Workspace Preparation
56+
57+
To put forward a PR, we assume you have registered a GitHub ID. Then you could finish the preparation in the following
58+
steps:
59+
60+
1. **Fork** Fork the repository you wish to work on. You just need to click the button Fork in right-left of project
61+
repository main page. Then you will end up with your repository in your GitHub username.
62+
2. **Clone** your own repository to develop locally. Use `git clone https://github.com/<your-username>/<project>.git` to
63+
clone repository to your local machine. Then you can create new branches to finish the change you wish to make.
64+
3. **Set remote** upstream to be `https://github.com/koordinator-sh/<project>.git` using the following two commands:
65+
66+
```bash
67+
git remote add upstream https://github.com/koordinator-sh/<project>.git
68+
git remote set-url --push upstream no-pushing
69+
```
70+
71+
Adding this, we can easily synchronize local branches with upstream branches.
72+
73+
4. **Create a branch** to add a new feature or fix issues
74+
75+
Update local working directory:
76+
77+
```bash
78+
cd <project>
79+
git fetch upstream
80+
git checkout main
81+
git rebase upstream/main
82+
```
83+
84+
Create a new branch:
85+
86+
```bash
87+
git checkout -b <new-branch>
88+
```
89+
90+
Make any change on the new-branch then build and test your codes.
91+
92+
### PR Description
93+
94+
PR is the only way to make change to Koordinator project files. To help reviewers better get your purpose, PR
95+
description could not be too detailed. We encourage contributors to follow
96+
the [PR template](https://github.com/koordinator-sh/koordinator/blob/main/.github/pull_request_template.md) to finish the pull request.
97+
98+
### Developing Environment
99+
100+
As a contributor, if you want to make any contribution to Koordinator project, we should reach an agreement on the
101+
version of tools used in the development environment. Here are some dependents with specific version:
102+
103+
- Golang : v1.17+
104+
- Kubernetes: v1.20+
105+
106+
### Developing guide
107+
108+
There's a `Makefile` in the root folder which describes the options to build and install. Here are some common ones:
109+
110+
```bash
111+
# Generate code (e.g., apis, clientset, informers) and manifests (e.g., CRD, RBAC YAML files)
112+
make generate manifests
113+
114+
# Build the koord-manager and koordlet binary
115+
make build
116+
117+
# Run the unit tests
118+
make test
119+
```
120+
121+
### Proposals
122+
123+
If you are going to contribute a feature with new API or needs significant effort, please submit a proposal
124+
in [./docs/proposals/](https://github.com/koordinator-sh/koordinator/tree/main/docs/proposals) first.
125+
126+
## Engage to help anything
127+
128+
We choose GitHub as the primary place for Koordinator to collaborate. So the latest updates of Koordinator are always
129+
here. Although contributions via PR is an explicit way to help, we still call for any other ways.
130+
131+
- reply to other's issues if you could;
132+
- help solve other user's problems;
133+
- help review other's PR design;
134+
- help review other's codes in PR;
135+
- discuss about Koordinator to make things clearer;
136+
- advocate Koordinator technology beyond GitHub;
137+
- write blogs on Koordinator and so on.
138+
139+
In a word, **ANY HELP IS CONTRIBUTION**.
140+
141+
## Joining the community
142+
143+
Follow these instructions if you want to:
144+
145+
- Become a member of the Koordinator GitHub org (see below)
146+
- Become part of the Koordinator build cop or release teams
147+
- Be recognized as an individual or organization contributing to Koordinator
148+
149+
### Joining the Koordinator GitHub Org
150+
151+
Before asking to join the community, we ask that you first make a small number of contributions to demonstrate your
152+
intent to continue contributing to Koordinator.
153+
154+
- **Note**: Anyone can contribute to Koordinator, adding yourself as a member in the organization is not a mandatory
155+
step.
156+
157+
There are a number of ways to contribute to Koordinator:
158+
159+
- Submit PRs
160+
- File issues reporting bugs or providing feedback
161+
- Answer questions on Slack or GitHub issues
162+
163+
- **Note**: This only counts GitHub related ways of contributing
164+
165+
When you are ready to join
166+
167+
- [Open an issue](https://github.com/koordinator-sh/koordinator/issues/new?assignees=&labels=area%2Fgithub-membership&template=membership.yml&title=REQUEST%3A+New+membership+for+<your-GH-handle>)
168+
against the **koordinator-sh/koordinator** repo
169+
- Make sure that the list of contributions included is representative of your work on the project.
170+
- Mention 2 existing reviewers who are sponsoring your membership.
171+
- After the request is approved, an admin will send you an invitation.
172+
- This is a manual process that's generally run a couple of times a week.
173+
- If a week passes without receiving an invitation reach out on DingTalk or Slack.

community/membership.md

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
---
2+
sidebar_label: Membership
3+
sidebar_position: 2
4+
---
5+
# Membership
6+
7+
This doc outlines the various responsibilities of contributor roles in Koordinator.
8+
It gives a brief overview of the community roles with the requirements and responsibilities associated with them.
9+
10+
<div>
11+
<img src="/img/membership.png" title="membership"/>
12+
</div>
13+
14+
*Note that we don't set the reviewer role in Koordinator,
15+
since we expect every community member to be a reviewer that could review the PRs he/she insterested in.*
16+
17+
## New contributors
18+
19+
[New contributors](https://github.com/koordinator-sh/koordinator/blob/main/CONTRIBUTING.md) should be welcomed to the community by existing members,
20+
helped with PR workflow, and directed to relevant documentation and communication channels.
21+
22+
## Member(Committer)
23+
24+
Members are continuously active contributors in the community. They can have issues and PRs assigned to them, participate in subprojects,
25+
and pre-submit tests are automatically run for their PRs. Members are expected to remain active contributors to the community.
26+
27+
**Defined by:** Member of the Koordinator GitHub organization
28+
29+
### Requirements
30+
31+
- Have made multiple contributions to the project or community. Contribution may include, but is not limited to:
32+
- Authoring or reviewing PRs on GitHub. At least one PR must be **merged**.
33+
- Filing or commenting on issues on GitHub
34+
- Contributing to subproject or community discussions (e.g. meetings, Slack, email discussion
35+
forums, Stack Overflow)
36+
- Have read the [contributor guide]
37+
- Actively contributing to 1 or more subprojects
38+
- Sponsored by 2 approvers/maintainers. **Note the following requirements for sponsors**:
39+
- Sponsors must have close interactions with the prospective member - e.g. code/design/proposal review, coordinating
40+
on issues, etc.
41+
- **[Open an issue][membership request] against the koordinator-sh/community repo**
42+
- Ensure your sponsors are @mentioned on the issue
43+
- Complete every item on the checklist ([preview the current version of the template][membership template])
44+
- Make sure that the list of contributions included is representative of your work on the project.
45+
- Have your sponsoring reviewers reply confirmation of sponsorship: `+1`
46+
- Once your sponsors have responded, your request will be reviewed by the Koordinator maintainers. Any missing information will be requested.
47+
48+
### Responsibilities and privileges
49+
50+
- Responsive to issues and PRs assigned to them
51+
- Responsive to mentions of the areas they are members of
52+
- Active owner of code they have contributed (unless ownership is explicitly transferred)
53+
- Code is well tested
54+
- Tests consistently pass
55+
- Addresses bugs or issues discovered after code is accepted
56+
- Members can do `/lgtm` on open PRs.
57+
- They can be assigned to issues and PRs, and people can ask members for reviews with a `/cc @username`.
58+
59+
**Note:** members who frequently contribute code are expected to proactively
60+
perform code reviews and work towards becoming a primary *approver* for the
61+
subproject that they are active in.
62+
63+
## Approver(Subproject Owner)
64+
65+
Code approvers are able to both review and approve code contributions. While
66+
code review is focused on code quality and correctness, approval is focused on
67+
holistic acceptance of a contribution including: backwards / forwards
68+
compatibility, adhering to API and flag conventions, subtle performance and
69+
correctness issues, interactions with other parts of the system, etc.
70+
71+
**Defined by:** *approvers* entry in an OWNERS file in a repo owned by the Koordinator project.
72+
73+
Approver status is scoped to a part of the codebase.
74+
75+
### Requirements
76+
77+
- Member for at least 3 months
78+
- Primary reviewer for at least 10 substantial PRs to the codebase
79+
- Reviewed or merged at least 30 PRs to the codebase
80+
- Nominated by a maintainer
81+
- With no objections from other maintainers
82+
- Done through PR to update the top-level OWNERS file
83+
84+
### Responsibilities and privileges
85+
86+
The following apply to the part of codebase for which one would be a reviewer in
87+
an [OWNERS] file (for repos using the bot).
88+
89+
- Approver status may be a precondition to accepting large code contributions
90+
- Demonstrate sound technical judgement
91+
- Responsible for project quality control via [code reviews]
92+
- Expected to be responsive to review requests as per [community expectations]
93+
- Mentor contributors and members
94+
- May approve code contributions for acceptance
95+
96+
## Maintainer
97+
98+
Maintainers are in charge of the whole community to make sure the community work as expected,
99+
which means they mainly focus on the community health rather than pushing features getting merged.
100+
101+
### Requirements
102+
103+
- Deep understanding of the technical goals and direction of the community
104+
- Sustained contributions to design and direction by doing all of:
105+
- Authoring and reviewing proposals
106+
- Initiating, contributing and resolving discussions (emails, GitHub issues, meetings)
107+
- Identifying subtle or complex issues in designs and implementation PRs
108+
109+
### Responsibilities and privileges
110+
111+
- Make and approve technical design decisions for the community
112+
- Define milestones and releases.
113+
- Mentor and guide approvers, members, and contributors to the community
114+
- Ensure continued health of community
115+
- Adequate test coverage to confidently release
116+
- Tests are passing reliably (i.e. not flaky) and are fixed when they fail
117+
- Ensure a healthy process for discussion and decision making is in place
118+
- Work with other maintainers to maintain the community's overall health and success holistically
119+
120+
## Steering Committee
121+
122+
Steering Committee is named sets of people that are chartered to take on sensitive topics.
123+
This group is encouraged to be as open as possible while achieving its mission but,
124+
because of the nature of the topics discussed, private communications are allowed.

docusaurus.config.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,20 @@ const config = {
100100
},
101101
},
102102

103+
plugins: [
104+
[
105+
'@docusaurus/plugin-content-docs',
106+
{
107+
id: 'community',
108+
path: 'community',
109+
routeBasePath: 'community',
110+
include: ['**/*.md'],
111+
sidebarPath: './sidebars-community.js',
112+
},
113+
],
114+
],
115+
116+
103117
themeConfig:
104118
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
105119
({
@@ -129,6 +143,12 @@ const config = {
129143

130144
{to: 'docs', label: 'Documentation', position: 'left'},
131145
{to: '/blog', label: 'Blog', position: 'left'},
146+
{
147+
to: '/community/committee',
148+
label: 'Community',
149+
position: 'left',
150+
activeBaseRegex: `/community/`,
151+
},
132152
{
133153
type: 'localeDropdown',
134154
position: 'right',

0 commit comments

Comments
 (0)