Skip to content

Commit 331a33f

Browse files
authored
Merge pull request #1935 from scottrigby/community_unversioned
feat(community): New unversioned Community website section
2 parents 04b594c + dfbd06c commit 331a33f

File tree

158 files changed

+18757
-1223
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

158 files changed

+18757
-1223
lines changed
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
name: Update Community Documentation
2+
3+
on:
4+
schedule:
5+
# Run weekly on Mondays at 3 AM UTC
6+
# Adjust frequency as needed - could be nightly: '0 3 * * *'
7+
- cron: '0 3 * * 1'
8+
workflow_dispatch: # Allows manual triggering
9+
10+
permissions:
11+
contents: write
12+
pull-requests: write
13+
14+
jobs:
15+
update-community-docs:
16+
runs-on: ubuntu-latest
17+
18+
steps:
19+
- name: Checkout repository
20+
uses: actions/checkout@v4
21+
22+
- name: Setup Node.js
23+
uses: actions/setup-node@v4
24+
with:
25+
node-version-file: '.nvmrc'
26+
cache: 'yarn'
27+
28+
- name: Install dependencies
29+
run: yarn install --frozen-lockfile
30+
31+
- name: Update community docs
32+
run: yarn download-remote-community
33+
34+
- name: Create or Update Pull Request
35+
uses: peter-evans/create-pull-request@v7
36+
with:
37+
token: ${{ secrets.GITHUB_TOKEN }}
38+
commit-message: 'chore(community): update docs from upstream'
39+
signoff: true
40+
title: 'chore(community): update docs from helm/community'
41+
body: |
42+
## 🔄 Automated Community Documentation Update
43+
44+
Updates community documentation from [helm/community](https://github.com/helm/community) repository.
45+
46+
### What this does:
47+
- Downloads latest docs from helm/community
48+
- Applies transformations (frontmatter, links, etc.)
49+
- Creates PR if there are changes
50+
51+
### Review checklist:
52+
- [ ] Verify docs render correctly with `yarn start`
53+
- [ ] Check that no local files were overwritten
54+
55+
---
56+
*This is an automated PR. See `.github/workflows/update-community-docs.yml` for details.*
57+
branch: upstream-community-changes
58+
delete-branch: true
59+
labels: |
60+
docs
61+
community

.typos.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,4 +37,9 @@ extend-exclude = [
3737
"docs/changelog.md",
3838
# v2 docs
3939
"versioned_docs/version-2/*",
40+
# Ignore typos on files imported from remote repos (fix upstream instead)
41+
# See docusaurus.config.js customFields.communityDocs.remoteDocs[] for full list
42+
"community/art/",
43+
"community/hips/",
44+
"community/meeting-notes/",
4045
]

ARCHITECTURAL_DECISIONS.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,77 @@ Remove them only after:
336336
2. All redirects are tested and working
337337
3. No rollback scenarios require Hugo functionality
338338

339+
## Community Documentation Import
340+
341+
### Helm-Specific Requirement
342+
343+
The Helm project maintains community governance documents in a [separate repository](https://github.com/helm/community) that need to be included in the website as an unversioned documentation section with proper Docusaurus integration.
344+
345+
### Solution
346+
347+
Uses [docusaurus-plugin-remote-content](https://github.com/rdilweb/docusaurus-plugin-remote-content) to import and transform content at build time.
348+
349+
**Architecture:**
350+
- **Multi-instance docs:** Community docs are a separate Docusaurus docs plugin instance with `id: "community"`, creating `/community/*` URLs
351+
- **Content transformation:** Custom functions in `src/utils/communityDocsTransforms.js` handle all content processing
352+
- **Configuration:** Centralized in `docusaurus.config.js` under `customFields.communityDocs`
353+
- **Files committed to Git:** Imported files are tracked in version control to maintain clean git status and avoid complex .gitignore management
354+
- **Build settings:** Uses `performCleanup: false` to prevent file deletion during i18n builds (workaround for [plugin issue #98](https://github.com/rdilweb/docusaurus-plugin-remote-content/issues/98))
355+
356+
### Content Transformation Features
357+
358+
**Import notice headers:** Every imported file gets a warning header indicating it shouldn't be edited directly, with a link to the source file in the helm/community repository.
359+
360+
**HIP (Helm Improvement Proposal) formatting:** HIP documents get special treatment:
361+
- Metadata fields (hip, authors, created, status, etc.) displayed as a markdown table
362+
- Sidebar labels include HIP number for easy navigation (e.g., "0023: Utilize Server Side Apply")
363+
- Frontmatter cleaned to remove duplicate metadata
364+
365+
**Plain text file handling:** `.txt` files (like meeting notes) are automatically:
366+
- Converted to `.md` files during import
367+
- Title extracted from content headers
368+
- Content wrapped in code blocks to preserve formatting
369+
370+
**Link transformations:** Only applied for configured exceptions - most links work as-is since the file structure mirrors the source repository.
371+
372+
### Why imported files are committed to Git
373+
374+
The `/community` directory mixes imported files from helm/community with locally-maintained community docs. Committing imported files to Git:
375+
376+
1. **Avoids complex .gitignore patterns** - No need to maintain a parallel list of which specific files to ignore
377+
2. **Provides clean git status** - Contributors don't see dozens of untracked files during development
378+
3. **Enables offline development** - With `noRuntimeDownloads: true`, `yarn start` works without network access
379+
4. **Simplifies mental model** - All files in `/community` are tracked, regardless of source
380+
381+
The tradeoff of content duplication is acceptable since these files rarely change structure and the import notices clearly indicate they shouldn't be edited locally.
382+
383+
### Commands
384+
385+
- `yarn download-remote-community` - Fetch and transform latest content from helm/community repository
386+
- `yarn clear-remote-community` - Remove imported files (useful for testing)
387+
388+
### Automated Updates
389+
390+
A GitHub Action (`.github/workflows/update-community-docs.yml`) runs weekly to:
391+
1. Check for updates in helm/community repository
392+
2. Apply transformations and import changes
393+
3. Create or update a PR if there are changes
394+
4. Skip if an identical PR already exists
395+
396+
The workflow can also be triggered manually through GitHub Actions UI.
397+
398+
### For Contributors
399+
400+
To add new community documents:
401+
1. Add entry to `customFields.communityDocs.remoteDocs` in `docusaurus.config.js`
402+
2. Include optional `meta` field for frontmatter overrides
403+
3. Add link exceptions only if specific links need custom mapping
404+
4. Run `yarn download-remote-community` to test import locally
405+
406+
To modify transformation logic:
407+
1. Edit `src/utils/communityDocsTransforms.js` for content processing
408+
2. Test changes with `yarn download-remote-community`
409+
339410
## Netlify Build Caching
340411

341412
### Problem

CONTRIBUTING-ko.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ Date: Thu Feb 2 11:41:15 2018 -0800
150150
2. 원하는 저장소를 포크하여 코드 변경 사항을 개발하고 테스트하세요.
151151
3. 풀 리퀘스트를 보내주세요.
152152

153-
코딩 규약 및 표준은 [공식 개발자 문서](https://helm.sh/docs/community/developers/)에 설명되어 있습니다.
153+
코딩 규약 및 표준은 [공식 개발자 문서](/community/developers)에 설명되어 있습니다.
154154

155155
## 풀 리퀘스트
156156

README-ko.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ Helm의 사전 릴리스 버전이 GA로 승격될 때, 사전 릴리스 문서
179179

180180
**우리 사이트와 문서의 컨텐츠 번역을 환영합니다** 전 세계에서 Helm에 대한 접근을 확장하는 데 도움이 되도록 합니다.
181181

182-
Helm.sh는 여러 언어를 지원합니다. 해외 사용자를 위한 컨텐츠 번역과 구성 가이드는 [헬름 문서 현지화](https://helm.sh/docs/community/localization/)를 참조하세요.
182+
Helm.sh는 여러 언어를 지원합니다. 해외 사용자를 위한 컨텐츠 번역과 구성 가이드는 [헬름 문서 현지화](/community/localization)를 참조하세요.
183183

184184
---
185185

README.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,24 @@ Helm v3 documentation is located under `versioned-docs/version-3`. The sidebar f
3636

3737
For earlier versions, see the dev-v2 branch of the main Helm repo [here](https://github.com/helm/helm/tree/dev-v2/docs).
3838

39+
### Community Documentation
40+
41+
The Community section imports content from the [helm/community](https://github.com/helm/community) repository. To manage these imported docs:
42+
43+
#### Download/Update Community Docs
44+
```bash
45+
yarn download-remote-community
46+
```
47+
This command fetches the latest community documentation from the helm/community repository and applies transformations for proper integration.
48+
49+
#### Clear Community Docs
50+
```bash
51+
yarn clear-remote-community
52+
```
53+
This removes the imported community documentation files (useful before re-importing or for troubleshooting).
54+
55+
The imported docs configuration is defined in `docusaurus.config.js` under `customFields.communityDocs`. See `ARCHITECTURAL_DECISIONS.md` for details on the implementation.
56+
3957
### Updating the Helm CLI Reference Docs
4058

4159
The documentation for the list of Helm CLI Commands are [exported](https://github.com/helm/helm/blob/a6b2c9e2126753f6f94df231e89b2153c2862764/cmd/helm/root.go#L169) from the main helm project repo and rendered [here on the website](https://helm.sh/docs/helm) as a reference.

blog/2020-08-13-helm-v2-deprecation-timeline.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,5 +41,4 @@ _After November 13, 2020, you will see these changes:_
4141

4242
The community has found Helm v3 to be a vastly improved experience, and community resources like the [helm-2to3 plugin](https://github.com/helm/helm-2to3) are available to assist you in your essential migration. Please ensure that you migrate to Helm v3 before the November 13th deadline, as operating software which no longer receives security patches is a risk best avoided.
4343

44-
We want to take this moment to thank everyone in the community who has used Helm or contributed an issue or pull request to help improve it. Many great ideas that don’t fit into Helm itself have much success as [related ecosystem projects](https://helm.sh/docs/community/related/). Every time you submit updates to the docs, you’re helping others get started and be more effective with Helm. Thank you all!
45-
44+
We want to take this moment to thank everyone in the community who has used Helm or contributed an issue or pull request to help improve it. Many great ideas that don’t fit into Helm itself have much success as [related ecosystem projects](/community/related). Every time you submit updates to the docs, you’re helping others get started and be more effective with Helm. Thank you all!

community/MAINTAINERS.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
title: Helm Org Maintainers
3+
---
4+
5+
<!--
6+
THIS FILE IS AUTOMATICALLY IMPORTED FROM THE HELM/COMMUNITY REPOSITORY
7+
DO NOT EDIT THIS FILE DIRECTLY - IT WILL BE OVERWRITTEN
8+
9+
TO MAKE CHANGES:
10+
- Edit the source file at: https://github.com/helm/community/blob/main/MAINTAINERS.md
11+
-->
12+
13+
* [Karen Chu](https://github.com/karenhchu)
14+
* [Matt Butcher](https://github.com/technosophos) (chair)
15+
* [Matt Farina](https://github.com/mattfarina)
16+
* [Reinhard Nägele](https://github.com/unguiculus)
17+
* [Scott Rigby](https://github.com/scottrigby)
18+
19+
## Emeritus
20+
21+
* [Adam Reese](https://github.com/adamreese)
22+
* [Adnan Abdulhussein](https://github.com/prydonius)
23+
* [Josh Dolitsky](https://github.com/jdolitsky)
24+
* [Martin Hickey](https://github.com/hickeyma)
25+
* [Matt Fisher](https://github.com/bacongobbler)
26+
* [Vic Iglesias](https://github.com/viglesiasce)

community/README.md

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
---
2+
sidebar_position: 1
3+
title: Helm Community
4+
---
5+
6+
<!--
7+
THIS FILE IS AUTOMATICALLY IMPORTED FROM THE HELM/COMMUNITY REPOSITORY
8+
DO NOT EDIT THIS FILE DIRECTLY - IT WILL BE OVERWRITTEN
9+
10+
TO MAKE CHANGES:
11+
- Edit the source file at: https://github.com/helm/community/blob/main/README.md
12+
-->
13+
14+
Welcome to the Helm community!
15+
16+
This is the starting point for becoming a contributor to the Helm project - improving docs, improving code, giving talks etc.
17+
18+
## Communicating
19+
20+
The [communication](communication.md) page lists communication channels like chat,
21+
issues, mailing lists, meetings, conferences, etc.
22+
23+
## Assets
24+
25+
- Helm logos are located at [cncf/artwork](https://github.com/cncf/artwork/blob/master/examples/graduated.md#helm-logos)
26+
- Helm website and docs are located at [helm/helm-www](https://github.com/helm/helm-www)
27+
- Helm brand examples and guidelines: [art](/community/art)
28+
- Helm themed presentation template: [slides](https://github.com/helm/community/tree/main/slides)
29+
30+
## How Can I Help?
31+
32+
#### First, you should join our communication forums:
33+
34+
- Follow us on [Twitter](communication.md#social-media)
35+
- Join us on [Slack](communication.md#slack)
36+
- Subscribe to our [mailing lists](communication.md#mailing-lists)
37+
- Join the [weekly meeting](communication.md#meetings)
38+
39+
#### Next, get set-up with the basics (if not already done so):
40+
41+
- [Documentation](https://docs.helm.sh/)
42+
- [Issues](https://github.com/helm/helm/issues)
43+
- [PRs](https://github.com/helm/helm/pulls)
44+
- [Quickstart Guide](https://docs.helm.sh/using_helm/#quickstart)
45+
- [Developer Guide](https://docs.helm.sh/developers/)
46+
47+
Now, you can get down to business!
48+
49+
A good way to learn is:
50+
51+
- Check out the code and look at code reviews. Documentation and test are part of the code base.
52+
- Try reproducing issues and get an overview of user problems.
53+
- Talk to people on Slack and ask questions.
54+
55+
Areas you can start working on:
56+
57+
- Documentation (like the text you are reading now) can always use improvement!
58+
- We can always do with more test coverage.
59+
- Review open PRs. Add comments, feedback or give a LGTM!
60+
- Try out some easy-to-fix bugs which may be marked with the [good first issue] tag
61+
- Just ask an [owner] for suggestions.
62+
63+
#### Last but not least, we'd love to know what you want to see on the [Helm Blog](https://helm.sh/blog).
64+
Feel free to submit a blog post topic [here](blog-topics.md).
65+
66+
## Your First Contribution
67+
68+
We recommend that you work on existing [issues] before attempting to develop a new feature.
69+
70+
Find an existing issue (e.g. one marked [good first issue], or simply ask an [owner] for suggestions),
71+
and respond on the issue thread expressing interest in working on it.
72+
73+
This helps other people know that the issue is active, and hopefully prevents duplicated efforts.
74+
75+
Each commit must be signed off in git, as described by
76+
[the article](https://www.helm.sh/blog/helm-dco/index.html)
77+
describing Helm's switch to DCO.
78+
79+
If you want to work on a new idea of relatively small scope:
80+
81+
1. Submit an issue describing your proposed change to the repo in question.
82+
1. The repo owners will respond to your issue promptly.
83+
1. If your proposed change is accepted, start work in your fork, signing off each commit as described above.
84+
1. Submit a [pull request] containing a tested change.
85+
86+
87+
[good first issue]: https://github.com/helm/helm/issues?utf8=%E2%9C%93&q=is%3Aopen%20is%3Aissue%20label%3A%22good+first+issue%22
88+
[issues]: https://github.com/helm/helm/issues
89+
[pull request]: https://github.com/helm/helm/blob/main/CONTRIBUTING.md#pull-requests
90+
[owner]: https://github.com/kubernetes/helm/blob/main/OWNERS

0 commit comments

Comments
 (0)