-
Notifications
You must be signed in to change notification settings - Fork 292
Add comprehensive beginner-friendly documentation #4835
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
base: main
Are you sure you want to change the base?
Add comprehensive beginner-friendly documentation #4835
Conversation
|
Pipeline controller notification For optional jobs, comment |
|
Warning Rate limit exceeded@deepsm007 has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 4 minutes and 2 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
WalkthroughAdds extensive documentation across the repository: new docs in Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes
✨ Finishing touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (6)
docs/CODEBASE_WALKTHROUGH.md (6)
7-22: Add language identifier to directory structure code block.Markdown code blocks should specify a language identifier for proper syntax highlighting and rendering. Use
tree,text, or leave blank for plain text output.-``` +```tree ci-tools/ ├── cmd/ # Command-line tools and applications ├── pkg/ # Shared libraries and packages @@ -18,7 +18,7 @@ ci-tools/ ├── README.md # Main README ├── CONTRIBUTING.md # Contribution guidelines └── OWNERS # Code owners file -``` +```
82-88: Add language identifier to file structure code block.Specify a language identifier for consistency and proper rendering.
-``` +```tree cmd/tool-name/ ├── main.go # Entry point ├── README.md # Tool-specific documentation @@ -86,7 +86,7 @@ cmd/tool-name/ ├── testdata/ # Test data (if applicable) └── ... # Additional tool-specific files -``` +```
306-322: Specifygolanguage identifier for Go struct example.Add language specifier to code block for syntax highlighting.
-```go +```go type ReleaseBuildConfiguration struct { // Input configuration InputConfiguration
325-334: Specifygolanguage identifier for Go interface example.Add language specifier to code block for syntax highlighting.
-```go +```go type Step interface { Inputs() []api.InputDefinition Validate() error
340-343: Specifygolanguage identifier for Go interface example.Add language specifier to code block for syntax highlighting.
-```go +```go type Reconciler interface { Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) }
298-298: Use hyphen for compound adjective.Per markdown linting, compound adjectives should be hyphenated when they modify a noun.
-Manages ephemeral test clusters +Manages ephemeral-test clusters
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting
📒 Files selected for processing (10)
docs/ARCHITECTURE.md(1 hunks)docs/CODEBASE_WALKTHROUGH.md(1 hunks)docs/CONTRIBUTING_GUIDE.md(1 hunks)docs/FAQ.md(1 hunks)docs/ONBOARDING.md(1 hunks)docs/OVERVIEW.md(1 hunks)docs/README.md(1 hunks)docs/SETUP.md(1 hunks)docs/SUMMARIES.md(1 hunks)docs/USAGE.md(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity.
Files:
docs/FAQ.mddocs/OVERVIEW.mddocs/ARCHITECTURE.mddocs/CONTRIBUTING_GUIDE.mddocs/SETUP.mddocs/CODEBASE_WALKTHROUGH.mddocs/ONBOARDING.mddocs/USAGE.mddocs/SUMMARIES.mddocs/README.md
🪛 LanguageTool
docs/FAQ.md
[style] ~54-~54: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...gration tests make integration ``` ### How do I contribute? See the [Contributing...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
docs/OVERVIEW.md
[style] ~31-~31: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ... Level Requirements - Basic Users: Need to understand YAML configuration and basic...
(REP_NEED_TO_VB)
docs/CODEBASE_WALKTHROUGH.md
[uncategorized] ~298-~298: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...ral test clusters - Provisions clusters on demand - Cleans up expired clusters ## API Su...
(EN_COMPOUND_ADJECTIVE_INTERNAL)
🪛 markdownlint-cli2 (0.18.1)
docs/CODEBASE_WALKTHROUGH.md
7-7: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
82-82: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
docs/README.md
47-47: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (1)
docs/USAGE.md (1)
1-485: Documentation appears complete and well-structured.The usage guide provides practical examples across all major tool categories with clear commands and expected patterns. Code blocks are correctly formatted with language specifiers. Cross-references to other documentation (FAQ.md, ARCHITECTURE.md) are consistent with the broader doc ecosystem added in this PR.
6026376 to
572a657
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (2)
docs/FAQ.md (1)
324-324: Inconsistent internal link path.Line 324 references
README.mdbut should use relative path.or./for GitHub to properly resolve the link within the docs directory. Ensure consistency with other cross-document references.- - Check the [documentation index](README.md) + - Check the [documentation index](./README.md)docs/README.md (1)
47-59: Add language identifier to fenced code block.Per markdownlint, fenced code blocks should specify a language. For the directory tree structure, use
text:-``` +```text docs/ ├── README.md # This file
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting
📒 Files selected for processing (10)
docs/ARCHITECTURE.md(1 hunks)docs/CODEBASE_WALKTHROUGH.md(1 hunks)docs/CONTRIBUTING_GUIDE.md(1 hunks)docs/FAQ.md(1 hunks)docs/ONBOARDING.md(1 hunks)docs/OVERVIEW.md(1 hunks)docs/README.md(1 hunks)docs/SETUP.md(1 hunks)docs/SUMMARIES.md(1 hunks)docs/USAGE.md(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (3)
- docs/ONBOARDING.md
- docs/USAGE.md
- docs/SETUP.md
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity.
Files:
docs/SUMMARIES.mddocs/CONTRIBUTING_GUIDE.mddocs/ARCHITECTURE.mddocs/CODEBASE_WALKTHROUGH.mddocs/FAQ.mddocs/OVERVIEW.mddocs/README.md
🪛 LanguageTool
docs/CODEBASE_WALKTHROUGH.md
[uncategorized] ~298-~298: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...ral test clusters - Provisions clusters on demand - Cleans up expired clusters ## API Su...
(EN_COMPOUND_ADJECTIVE_INTERNAL)
docs/FAQ.md
[style] ~54-~54: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...gration tests make integration ``` ### How do I contribute? See the [Contributing...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
docs/OVERVIEW.md
[style] ~31-~31: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ... Level Requirements - Basic Users: Need to understand YAML configuration and basic...
(REP_NEED_TO_VB)
🪛 markdownlint-cli2 (0.18.1)
docs/README.md
47-47: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (5)
docs/OVERVIEW.md (1)
1-131: Documentation is clear and accurate. No blocking issues identified. The structure effectively communicates what CI-Tools is, its scope, and getting started paths for different user types.docs/CONTRIBUTING_GUIDE.md (1)
1-388: Excellent contribution guide with clear workflows and practical examples. The guide effectively covers fork/clone, branching strategy, coding standards, testing requirements, and PR workflow. Well-structured for onboarding new contributors.docs/ARCHITECTURE.md (1)
1-407: Comprehensive and well-illustrated architecture documentation. The multiple Mermaid diagrams effectively convey system design from high-level overview through component interactions, data flows, and deployment topology. The design patterns and security sections provide valuable context for contributors.docs/SUMMARIES.md (1)
1-209: Excellent audience-specific documentation structure. The three-tier approach (Non-Technical, Intermediate, Advanced) effectively serves different reader levels. Each summary maintains appropriate technical depth while remaining accessible to its intended audience.docs/CODEBASE_WALKTHROUGH.md (1)
1-388: Thorough and navigable codebase documentation. The walkthrough effectively maps repository structure, describes component responsibilities, and illustrates data flows. The combination of directory listings, key modules, and component interaction sections helps both new and experienced contributors understand the codebase.
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: deepsm007, liangxia The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
Scheduling required tests: |
|
Nice doc. 👍 |
|
I think it's a good idea, but I think we should invest more time in it. I feel like the documentation is very vague, not going into detail much, and repeating itself a bit: Also I am not sure if we need these: CONTRIBUTING_GUIDE.md, FAQ.md, ONBOARDING.md, these would be a better fit in o/release maybe. |
|
New changes are detected. LGTM label has been removed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
CONTRIBUTING.md (1)
1-425: Documentation strategy: address scope creep and redundancy across files.The three documents provided (ARCHITECTURE.md, pkg/controller/README.md, CONTRIBUTING.md) represent a comprehensive addition to the docs set. However, they highlight the core concern raised by the reviewer: overlapping scope and unclear document hierarchy.
Recommended documentation strategy:
- docs/README.md (hub): Entry point with brief descriptions of all doc files and a learning path
- docs/ARCHITECTURE.md: System architecture, design patterns, and component interactions (reference component-specific READMEs for details)
- docs/SETUP.md: Environment setup and quick-start (assuming it exists; not provided)
- docs/ONBOARDING.md (new): Consolidated learning roadmap and concepts (currently split between CONTRIBUTING.md and implicit in other docs)
- Component READMEs (cmd//README.md, pkg//README.md): Usage, implementation details, specific to each tool/package
- CONTRIBUTING.md: Contribution workflow, coding standards, and code review practices
Currently:
- ARCHITECTURE.md includes usage examples that belong in cmd/*/README.md
- CONTRIBUTING.md includes FAQ and onboarding that should be consolidated into docs/ONBOARDING.md
- No clear hierarchy or cross-reference strategy
Action items for contributors:
- Extract "Core Components" usage details from ARCHITECTURE.md → into respective cmd/*/README.md files
- Extract "FAQ" and "Onboarding" from CONTRIBUTING.md → into docs/ONBOARDING.md
- Create docs/ONBOARDING.md with the 5-week roadmap from CONTRIBUTING.md
- Update docs/README.md to link all guides with a clear decision tree ("I want to understand architecture" → ARCHITECTURE.md; "I'm new" → ONBOARDING.md; etc.)
- Fix MD036 linting violations in both ARCHITECTURE.md and CONTRIBUTING.md
This approach respects the quality of the content while reducing reader confusion about which doc to consult.
🧹 Nitpick comments (6)
docs/ARCHITECTURE.md (4)
1-10: Scope is too broad—consider narrowing to architecture only, with references to detailed guides.This file attempts to cover system architecture, component details, usage examples, deployment topology, security architecture, and troubleshooting in one document (800+ lines). This creates maintenance challenges and makes it harder for readers to find what they need. The "Core Components" section (lines 292–386), usage examples (lines 387–528), and troubleshooting (lines 774–801) would be better suited to component-specific READMEs or separate operational guides.
Consider restructuring this to focus primarily on architecture and design while linking to dedicated guides for usage, troubleshooting, and deployment.
292-386: Core Components section partially overlaps with per-package READMEs.Lines 292–386 provide implementation details (config loading flows, step execution, graph building, etc.) that may duplicate content in
cmd/ci-operator/README.md,pkg/api/README.md, andpkg/steps/README.md. Instead of reproducing these details, link to those component-specific READMEs and keep this section focused on high-level responsibilities and interactions.For example, rather than explaining how CI Operator works (lines 296–341), reference
cmd/ci-operator/README.mdand keep only the architectural role and interaction patterns here.
387-528: Usage Examples section should reference or defer to tool-specific READMEs.The Usage Examples section (lines 387–528) covers how to invoke CI Operator, manage configs, promote images, and run controllers. This content would be better maintained in the respective tool READMEs (
cmd/ci-operator/README.md,cmd/config-brancher/README.md, etc.) to avoid duplication as tools evolve.Consider replacing this section with a "Common Workflows" summary and links to detailed usage in component READMEs.
62-78: Mermaid diagram styling is effective but could benefit from a legend.The color-coded subgraphs in the high-level architecture diagram (lines 23–78) are visually helpful. However, without a legend explaining what each color represents (e.g., blue = core tools, orange = config, green = image mgmt), readers may need to infer the grouping. Consider adding a brief caption or legend to improve accessibility.
CONTRIBUTING.md (2)
284-366: FAQ content partially overlaps with ARCHITECTURE.md; consider consolidating or cross-referencing.The FAQ section (lines 284–366) answers general questions (What is CI-Tools? Who maintains it? How do I get started?) and provides examples for building, testing, and debugging. Lines 295–297 reference
docs/README.md,docs/SETUP.md, anddocs/ARCHITECTURE.md, which suggests multiple similar overview/getting-started documents exist.Given feedback from the PR review about overlapping documentation, consider:
- Moving purely architectural FAQs (What is CI-Tools?) to ARCHITECTURE.md or a dedicated OVERVIEW.md
- Keeping procedural FAQs (How do I build? How do I debug?) in CONTRIBUTING.md
- Consolidating "Getting Started" content across the doc set to avoid duplication
This will reduce reader confusion about which doc to consult first.
367-413: Onboarding roadmap is valuable but better as a separate guide or in docs/README.md.The "Onboarding for New Contributors" section (lines 367–413) provides a structured 5-week learning path with references to essential and recommended knowledge, key concepts, and a phased roadmap. This is excellent content.
However, placing it in CONTRIBUTING.md (which is primarily about contribution mechanics) dilutes its strategic importance. Consider:
- Creating a dedicated
docs/ONBOARDING.mdfile or- Moving this to
docs/README.mdas a central learning entry point- Keeping only a link to it in CONTRIBUTING.md
This would make it more discoverable for newcomers and align with the suggestion to consolidate documentation.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting
📒 Files selected for processing (6)
CONTRIBUTING.md(2 hunks)cmd/ci-operator/README.md(1 hunks)docs/ARCHITECTURE.md(1 hunks)pkg/api/README.md(1 hunks)pkg/controller/README.md(1 hunks)pkg/steps/README.md(1 hunks)
✅ Files skipped from review due to trivial changes (3)
- cmd/ci-operator/README.md
- pkg/steps/README.md
- pkg/api/README.md
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity.
Files:
CONTRIBUTING.mddocs/ARCHITECTURE.mdpkg/controller/README.md
🪛 LanguageTool
pkg/controller/README.md
[uncategorized] ~44-~44: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...al test clusters: - Provisions clusters on demand - Monitors cluster lifecycle - Cleans u...
(EN_COMPOUND_ADJECTIVE_INTERNAL)
🪛 markdownlint-cli2 (0.18.1)
CONTRIBUTING.md
355-355: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
361-361: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
395-395: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
401-401: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
407-407: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
docs/ARCHITECTURE.md
355-355: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
361-361: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
395-395: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
401-401: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
407-407: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
🔇 Additional comments (2)
pkg/controller/README.md (1)
1-92: Package README is well-scoped and aligns with documentation strategy.This file serves its purpose effectively as a focused, package-level entry point. It avoids duplication with ARCHITECTURE.md (which is system-wide) and provides the right level of detail for developers working with the controller package. The structure is clear: overview → specific controllers → usage → pattern → utilities → related docs.
Consider this file as a template for other
pkg/*/README.mdfiles to ensure consistency.CONTRIBUTING.md (1)
1-50: Contribution workflow guidance is clear and well-structured.Lines 1–79 provide a practical, step-by-step guide for contributing: fork, branch, change, test, commit, push. This is accessible for new contributors and follows standard GitHub practices. The commit message guidelines (lines 61–65) and branch naming conventions (lines 82–88) are helpful.
No changes needed in this section.
1f7fc1a to
51e4a28
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
♻️ Duplicate comments (2)
pkg/controller/README.md (1)
43-44: Fix compound adjective: "ephemeral test clusters" → "ephemeral-test clusters".Line 43 uses a compound adjective that should be hyphenated to properly modify the noun. This follows English grammar conventions and was flagged in the previous review.
Apply this diff:
-Manages ephemeral test clusters: +Manages ephemeral-test clusters:docs/ARCHITECTURE.md (1)
355-407: Fix Markdown linting violations: use headings instead of bold emphasis.Lines 355, 361, 395, 401, 407 use bold emphasis (
**text**) where proper Markdown headings should be used. This violates MD036 and impacts document structure/navigation. This was flagged in the previous review.Replace instances such as:
-2. **Prowgen** (`cmd/ci-operator-prowgen/`): +### ProwgenEnsure proper heading hierarchy (## or ###) matching surrounding document structure, with blank lines before and after each heading.
🧹 Nitpick comments (2)
cmd/clusterimageset-updater/README.md (2)
1-7: Add context for beginner-friendly documentation.The README describes how the tool works but lacks foundational context on what ClusterImageSet and cluster pools are. Since the PR aims for "comprehensive beginner-friendly documentation," consider adding a brief explanation of these concepts upfront to help newcomers understand the tool's purpose in the broader ecosystem.
Additionally, lines 3 and the Overview section (line 7) restate the same information; consolidate to avoid redundancy.
# clusterimageset-updater -Updates ClusterImageSet resources based on cluster pool specifications. -## Overview - -This tool generates ClusterImageSet YAML files from cluster pool specifications. It reads cluster pool YAML files and creates corresponding ClusterImageSet resources for use in cluster provisioning. +## Overview + +This tool generates ClusterImageSet YAML files from cluster pool specifications. ClusterImageSets define the OpenShift versions available for cluster provisioning, derived from cluster pool configurations.
9-20: Enhance the usage example with more concrete context.The command example uses placeholder paths (
/path/to/...) without indicating what these directories should contain or typical project layout. Add a brief note on directory structure or expected file naming patterns to make it more actionable for beginners.## Usage ```bash clusterimageset-updater \ --pools=/path/to/cluster-pools \ --imagesets=/path/to/output+This scans all
*_clusterpool.yamlfiles in the pools directory and outputs corresponding*_clusterimageset.yamlfiles.</blockquote></details> </blockquote></details> <details> <summary>📜 Review details</summary> **Configuration used**: CodeRabbit UI **Review profile**: CHILL **Plan**: Pro **Cache: Disabled due to data retention organization setting** **Knowledge base: Disabled due to `Reviews -> Disable Knowledge Base` setting** <details> <summary>📥 Commits</summary> Reviewing files that changed from the base of the PR and between 1f7fc1a939146e1731096e69494e4c8e822d984d and 51e4a2801920bc8c12085d1076ab50e3be7552ad. </details> <details> <summary>📒 Files selected for processing (34)</summary> * `CONTRIBUTING.md` (2 hunks) * `cmd/autotestgridgenerator/README.md` (1 hunks) * `cmd/backport-verifier/README.md` (1 hunks) * `cmd/bugzilla-backporter/README.md` (1 hunks) * `cmd/check-cluster-profiles-config/README.md` (1 hunks) * `cmd/ci-operator-config-mirror/README.md` (1 hunks) * `cmd/ci-operator-configresolver/README.md` (1 hunks) * `cmd/ci-operator-prowgen/README.md` (1 hunks) * `cmd/ci-operator/README.md` (1 hunks) * `cmd/ci-secret-bootstrap/README.md` (1 hunks) * `cmd/cluster-display/README.md` (1 hunks) * `cmd/cluster-operator-status/README.md` (1 hunks) * `cmd/clusterimageset-updater/README.md` (1 hunks) * `cmd/determinize-ci-operator/README.md` (1 hunks) * `cmd/determinize-peribolos/README.md` (1 hunks) * `cmd/determinize-prow-config/README.md` (1 hunks) * `cmd/docgen/README.md` (1 hunks) * `cmd/dptp-pools-cm/README.md` (1 hunks) * `cmd/entrypoint-wrapper/README.md` (1 hunks) * `cmd/generate-registry-metadata/README.md` (1 hunks) * `cmd/helpdesk-faq/README.md` (1 hunks) * `cmd/job-trigger-controller-manager/README.md` (1 hunks) * `cmd/payload-testing-prow-plugin/README.md` (1 hunks) * `cmd/pipeline-controller/README.md` (1 hunks) * `cmd/pj-rehearse/README.md` (1 hunks) * `cmd/rebalancer/README.md` (1 hunks) * `cmd/result-aggregator/README.md` (1 hunks) * `cmd/retester/README.md` (1 hunks) * `docs/ARCHITECTURE.md` (1 hunks) * `docs/README.md` (1 hunks) * `docs/SETUP.md` (1 hunks) * `pkg/api/README.md` (1 hunks) * `pkg/controller/README.md` (1 hunks) * `pkg/steps/README.md` (1 hunks) </details> <details> <summary>✅ Files skipped from review due to trivial changes (22)</summary> * cmd/pj-rehearse/README.md * cmd/check-cluster-profiles-config/README.md * cmd/rebalancer/README.md * cmd/docgen/README.md * cmd/determinize-ci-operator/README.md * cmd/payload-testing-prow-plugin/README.md * cmd/determinize-peribolos/README.md * cmd/pipeline-controller/README.md * cmd/ci-operator-configresolver/README.md * cmd/autotestgridgenerator/README.md * cmd/ci-operator-config-mirror/README.md * cmd/result-aggregator/README.md * cmd/retester/README.md * cmd/ci-operator-prowgen/README.md * cmd/dptp-pools-cm/README.md * cmd/entrypoint-wrapper/README.md * cmd/ci-secret-bootstrap/README.md * cmd/backport-verifier/README.md * cmd/job-trigger-controller-manager/README.md * cmd/determinize-prow-config/README.md * cmd/ci-operator/README.md * cmd/cluster-display/README.md </details> <details> <summary>🚧 Files skipped from review as they are similar to previous changes (3)</summary> * pkg/api/README.md * CONTRIBUTING.md * pkg/steps/README.md </details> <details> <summary>🧰 Additional context used</summary> <details> <summary>📓 Path-based instructions (1)</summary> <details> <summary>**</summary> **⚙️ CodeRabbit configuration file** > -Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity. Files: - `cmd/bugzilla-backporter/README.md` - `cmd/generate-registry-metadata/README.md` - `cmd/helpdesk-faq/README.md` - `docs/SETUP.md` - `docs/ARCHITECTURE.md` - `cmd/cluster-operator-status/README.md` - `cmd/clusterimageset-updater/README.md` - `docs/README.md` - `pkg/controller/README.md` </details> </details><details> <summary>🪛 LanguageTool</summary> <details> <summary>pkg/controller/README.md</summary> [uncategorized] ~44-~44: If this is a compound adjective that modifies the following noun, use a hyphen. Context: ...al test clusters: - Provisions clusters on demand - Monitors cluster lifecycle - Cleans u... (EN_COMPOUND_ADJECTIVE_INTERNAL) </details> </details> <details> <summary>🪛 markdownlint-cli2 (0.18.1)</summary> <details> <summary>docs/ARCHITECTURE.md</summary> 199-199: Fenced code blocks should have a language specified (MD040, fenced-code-language) </details> <details> <summary>docs/README.md</summary> 47-47: Fenced code blocks should have a language specified (MD040, fenced-code-language) </details> </details> </details> <details> <summary>🔇 Additional comments (6)</summary><blockquote> <details> <summary>cmd/generate-registry-metadata/README.md (1)</summary><blockquote> `1-18`: **Tool README follows appropriate structure and style.** This component README provides adequate basic guidance for the tool with proper sections (overview, usage, related). No issues flagged. </blockquote></details> <details> <summary>cmd/bugzilla-backporter/README.md (1)</summary><blockquote> `1-42`: **Clear and well-structured tool documentation.** The bugzilla-backporter README clearly documents the tool's purpose, features, usage, and configuration requirements. Excellent balance between conceptual overview and practical endpoints documentation. </blockquote></details> <details> <summary>cmd/helpdesk-faq/README.md (1)</summary><blockquote> `1-18`: **Acceptable basic tool documentation.** The README provides minimal but functional documentation. For improved usability, consider adding concrete command-line options or flags in the usage example (e.g., beyond `[options]` placeholder). </blockquote></details> <details> <summary>docs/SETUP.md (1)</summary><blockquote> `1-352`: **Comprehensive and beginner-friendly setup documentation.** The SETUP.md guide is well-organized with clear prerequisites, installation steps, concrete code examples, and extensive troubleshooting. Good progression from basic setup through development workflow and IDE configuration. Structure supports new contributor onboarding effectively. </blockquote></details> <details> <summary>cmd/cluster-operator-status/README.md (1)</summary><blockquote> `1-82`: **Clear and practical tool documentation with good examples.** The cluster-operator-status README effectively documents both usage modes (stdin and direct query), explains the output format with concrete examples, and uses visual formatting for readability. Excellent for users understanding command behavior. </blockquote></details> <details> <summary>docs/README.md (1)</summary><blockquote> `1-96`: **Documentation hub structure is clear and well-organized for navigation.** The README effectively serves as a documentation index with good organization for different user journeys (new users, contributors, reference seekers). Quick Start section and clear cross-references support usability. </blockquote></details> </blockquote></details> </details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
|
@deepsm007: The following test failed, say
Full PR test history. Your PR dashboard. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
Prucek
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is way better, but I would rather make it even better. Some of them are pretty good, but others lack details. I think we should combine the knowledge of ci-docs, o/release, branching doc, and the ci-tools with our knowledge and be pedantic on what it says. I would focus on one tool in more detail, let's say pj-rehearse:
- understand how the code works along with the rehearse package
- understand how it is deployed, also that we can test with the alpha deployment
- what commands it does have
- and combine with the doc in ci/docs
so that it has a nice overall picture.
I know this is really time-consuming, but I think it's worth it. You can't make that on your own. Everyone would need to help when they touch a tool and it doesn't have .md, make it. We can discuss this in our meetings. Until then, I would like to help you.
| docs/ | ||
| ├── README.md # This file | ||
| ├── OVERVIEW.md # High-level overview | ||
| ├── ARCHITECTURE.md # System architecture and diagrams | ||
| ├── CODEBASE_WALKTHROUGH.md # Code structure and components | ||
| ├── SETUP.md # Development environment setup | ||
| ├── USAGE.md # Usage examples and guides | ||
| ├── CONTRIBUTING_GUIDE.md # Contribution guidelines | ||
| ├── ONBOARDING.md # New contributor guide | ||
| ├── FAQ.md # Frequently asked questions | ||
| └── SUMMARIES.md # Technical summaries |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is still here
| # Basic usage | ||
| ci-operator \ | ||
| --config=path/to/config.yaml \ | ||
| --git-ref=org/repo@ref \ | ||
| --target=test-name | ||
|
|
||
| # With JOB_SPEC environment variable | ||
| export JOB_SPEC='{"type":"presubmit","job":"test-job",...}' | ||
| ci-operator --config=config.yaml | ||
| ``` | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would here put the run-ci-op locally script
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe this as well:
{
"name": "ci-operator",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "cmd/ci-operator/main.go",
"cwd": "/home/prucek/work/ci-tools",
"args": [
"--config=/home/prucek/work/ci-tools/.vscode/test-with-deps.yaml"
, "--namespace=prucek-debug"
, "--delete-when-idle=0"
, "--delete-after=0"
, "--lease-server-credentials-file=/tmp/ci-operator/secrets/boskos/credentials"
, "--gcs-upload-secret=/tmp/ci-operator/secrets/gcs/service-account.json"
, "--secret-dir=/tmp/ci-operator/secrets/ci-pull-credentials"
, "--image-import-pull-secret=/tmp/ci-operator/secrets/pull-secret/.dockerconfigjson"
, "--local-registry-dns=registry.build01.ci.openshift.org"
, "--manifest-tool-dockercfg=/tmp/ci-operator/secrets/manifest-tool-local-pusher/.dockerconfigjson"
// , "-print-graph"
, "--target=dockerfile-inputs-test"
],
"env": {
"JOB_SPEC": "${input:jobSpecInput}",
"ARTIFACTS": "/tmp/ci-operator/artifacts",
"KUBECONFIG": "/tmp/ci-operator/kubeconfig.yaml",
}
},
| # pj-rehearse | ||
|
|
||
| Rehearses Prow job configurations before merging changes. | ||
|
|
||
| ## Overview | ||
|
|
||
| Pj-rehearse tests Prow job configurations by running them in a rehearsal environment to validate changes before they're merged to production. | ||
|
|
||
| ## Usage | ||
|
|
||
| ```bash | ||
| pj-rehearse [options] | ||
| ``` | ||
|
|
||
| ## Related | ||
|
|
||
| - [pkg/rehearse](../../pkg/rehearse) - Rehearsal logic | ||
| - Prow job validation | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this does not bring much value, it has to be more detailed, with more examples
I'll spend more time rewriting this. |
/cc @openshift/test-platform
/hold
Assisted by Claude