Skip to content

Files

Latest commit

28c3708 · Feb 16, 2025

History

History
93 lines (55 loc) · 3.1 KB

CONTRIBUTING.md

File metadata and controls

93 lines (55 loc) · 3.1 KB

Contributing Guide

🎉 Welcome to the OpenTelemetry Helm Charts Repository! 🎉

Introduction

This repository hosts Helm charts for deploying OpenTelemetry components in Kubernetes. Your contributions help improve observability for everyone! Whether you’re fixing a configuration, adding a new feature, or improving documentation, we appreciate your effort!

We'd love your help!

Pre-requisites

To work with this repository, ensure you have:

  • Helm 3.8+

  • chart-testing (ct) 3.7+

  • Kubernetes CLI (kubectl)

  • make (for automation)

Platform Notes

Docker or Kubernetes cluster access (for testing chart installations)

Workflow

  1. Fork this repository
  2. Develop, and test your changes
  3. Submit a pull request

Remember to always work in a branch of your local copy, as you might otherwise have to contend with conflicts in master.

Please also see GitHub workflow section of general project contributing guide.

Local Run/Build

TBD

Testing

TBD

Technical Requirements

Once changes have been merged, the release job will automatically run to package and release changed charts.

Immutability

Chart releases must be immutable. Any change to a chart warrants a chart version bump even if it is only changed to the documentation.

Versioning

The chart version should follow semver.

All changes to a chart require a version bump, following semvar.

Any breaking (backwards incompatible) changes to a chart should:

  1. Bump the MINOR version
  2. In the README, under a section called "Upgrading", describe the manual steps necessary to upgrade to the new (specified) MAJOR version

Examples

All charts maintain examples for the current version. After updating the version, examples must be updated with the make generate-examples target.

The default generate-examples command will update all charts. In order generate a chart's examples you must have the chart's dependencies added to your helm repo.

If you need update a single chart's examples you can use the CHARTS variable. For example, if you want to update only the collector chart's examples you can run make generate-examples CHARTS=opentelemetry-collector

New examples should be added as independent folders in the respective chart's examples folder. Examples should always contain a values.yaml and a rendered folder.

Further Help

Chart-specific Contributing Guides