Contributing to OpenBao Operator¶
Welcome! We are glad you want to contribute to the OpenBao Operator. Whether you're fixing a bug, adding a feature, or improving documentation, this guide will help you get started.
Quick Start¶
-
Getting Started
New to the project? Start here to set up your environment and make your first contribution.
-
Coding Standards
Review our conventions for Go code, Kubernetes patterns, and error handling.
-
Testing Guide
Learn how to run our unit tests, integration tests, and E2E suites.
AI-Assisted Contributions¶
Policy on AI Tools
We welcome contributions that leverage AI tools! However, you must verify all generated code.
- Responsibility: You are responsible for the code you submit. "The AI wrote it" is not a valid excuse for bugs or security issues.
- Context: Use our
.agent/rules/to ensure your AI assistant follows our project conventions. - Quality: PRs that appear to be low-effort AI dumps ("slop PRs") without proper understanding or testing will be closed.
Submitting Changes¶
Follow this checklist to ensure your Pull Request is ready for review:
- Code: Conform to the Coding Standards.
- Tests: Add unit tests for logic and E2E tests for features.
-
Validation: Run the local verification suite:
-
Commits: Write clear, descriptive commit messages.
- Documentation: Update relevant docs if behavior changed.
Documentation Guides¶
-
CI/CD Pipeline
Understanding our GitHub Actions workflows.
-
Release Management
How we version and release the operator.
-
SDLC Overview
Our development lifecycle and philosophy.
-
Docs Style Guide
Writing documentation for the project.
Quick Links¶
- Go Style — Formatting, naming, idioms
- Error Handling — Error patterns
- Kubernetes Patterns — Operator best practices
- Security Practices — Secure coding
- Project Conventions — Metrics, logging, testing