Skip to content

docs: add CONTRIBUTING.md for kruize-operator - #116

Open
shreyabiradar07 wants to merge 2 commits into
kruize:mvp_demofrom
shreyabiradar07:add_contribution_doc
Open

docs: add CONTRIBUTING.md for kruize-operator#116
shreyabiradar07 wants to merge 2 commits into
kruize:mvp_demofrom
shreyabiradar07:add_contribution_doc

Conversation

@shreyabiradar07

@shreyabiradar07 shreyabiradar07 commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

This PR adds a CONTRIBUTING.md file for kruize-operator

Summary by Sourcery

Documentation:

  • Introduce CONTRIBUTING.md with guidelines for development setup, build and test workflow, PR checks, commit conventions, and issue reporting.

Signed-off-by: Shreya Biradar <shbirada@ibm.com>
Assisted-by: Bob
@sourcery-ai

sourcery-ai Bot commented Jul 27, 2026

Copy link
Copy Markdown

Reviewer's Guide

Adds a comprehensive CONTRIBUTING.md that defines the contribution workflow, tooling prerequisites, build/test commands, PR checks, commit message conventions, code style guidelines, and issue reporting process for the kruize-operator repository.

Flow diagram for the new contribution workflow in CONTRIBUTING.md

flowchart TD
    Contributor([Contributor])
    ForkRepo["Fork kruize-operator repository"]
    CloneRepo["Clone fork and set up locally"]
    CreateBranch["Create topic branch from mvp_demo"]
    MakeChanges["Implement changes following coding guidelines"]
    InstallPrereq["Install prerequisites (Go, operator-sdk, Docker/Podman, kubectl)"]
    BuildOperator["Run build commands (make generate manifests, docker-build)"]
    RunTests["Run tests (make test, make test-e2e)"]
    FixIssues["Fix build/test issues"]
    PushBranch["Push topic branch to fork"]
    OpenPR["Open pull request against kruize-operator"]
    PRChecks["Automated PR checks (.github/workflows/pr-check.yaml)"]
    ReviewMerge["Review and merge"]

    Contributor --> ForkRepo --> CloneRepo --> CreateBranch --> InstallPrereq --> MakeChanges --> BuildOperator --> RunTests
    RunTests -->|tests pass| PushBranch --> OpenPR --> PRChecks -->|checks pass| ReviewMerge
    RunTests -->|tests fail| FixIssues --> MakeChanges
    PRChecks -->|checks fail| FixIssues --> MakeChanges --> BuildOperator --> RunTests
Loading

File-Level Changes

Change Details Files
Introduce contribution guide covering workflow, tooling, build/test commands, and project processes.
  • Document end-to-end contribution workflow from forking the repo to getting PRs reviewed and merged.
  • List required development and deployment tooling versions and cluster requirements for working on the operator.
  • Provide standard build and image push commands, including a helper script for building and pushing operator and bundle images.
  • Describe how to run unit and end-to-end tests and reference existing operator test documentation.
  • Clarify PR checks, including unit tests, build, manifests generation, and linting expectations.
  • Define commit signing, sign-off requirements, and a structured commit message format with allowed types and examples.
  • Capture Go code style conventions, documentation expectations, and guidelines for scoping changes per commit/PR.
  • Outline how to report issues with the necessary diagnostic details and link to additional operator-related resources.
CONTRIBUTING.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@shreyabiradar07
shreyabiradar07 changed the base branch from main to mvp_demo July 27, 2026 13:22
@shreyabiradar07 shreyabiradar07 self-assigned this Jul 27, 2026
@shreyabiradar07 shreyabiradar07 added documentation Improvements or additions to documentation enhancement New feature or request kruize-operator labels Jul 27, 2026
@shreyabiradar07 shreyabiradar07 moved this to Under Review in Monitoring Jul 27, 2026
@shreyabiradar07 shreyabiradar07 added this to the Kruize Operator 0.0.8 milestone Jul 27, 2026

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've left some high level feedback:

  • Consider validating and updating the version constraints in the Prerequisites section (Go, operator-sdk, kubectl, Kubernetes/OpenShift) so they match what is actually enforced by the project’s build tooling and CI, and call out if they are minimum vs tested versions.
  • The Contribution Workflow currently instructs contributors to branch off mvp_demo; if that is not the long-term default development branch, you may want to clarify when to use mvp_demo versus main to avoid confusion for new contributors.
  • Double-check that all relative links (e.g., test/Operator_tests.md, .github/workflows/pr-check.yaml) resolve correctly from the repository root, and adjust paths or add brief context where needed if those files live in subdirectories.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- Consider validating and updating the version constraints in the Prerequisites section (Go, operator-sdk, kubectl, Kubernetes/OpenShift) so they match what is actually enforced by the project’s build tooling and CI, and call out if they are minimum vs tested versions.
- The Contribution Workflow currently instructs contributors to branch off `mvp_demo`; if that is not the long-term default development branch, you may want to clarify when to use `mvp_demo` versus `main` to avoid confusion for new contributors.
- Double-check that all relative links (e.g., `test/Operator_tests.md`, `.github/workflows/pr-check.yaml`) resolve correctly from the repository root, and adjust paths or add brief context where needed if those files live in subdirectories.

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Signed-off-by: Shreya Biradar <shbirada@ibm.com>
Assisted-by: Bob
@rbadagandi1
rbadagandi1 requested a review from ncau July 30, 2026 09:26

@ncau ncau left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request kruize-operator

Projects

Status: Under Review

Development

Successfully merging this pull request may close these issues.

2 participants