Skip to content

feat(sdk): add contrib/koanf config provider#870

Merged
zeevdr merged 6 commits into
mainfrom
feat/15-contrib-koanf
Jun 5, 2026
Merged

feat(sdk): add contrib/koanf config provider#870
zeevdr merged 6 commits into
mainfrom
feat/15-contrib-koanf

Conversation

@zeevdr
Copy link
Copy Markdown
Member

@zeevdr zeevdr commented Jun 5, 2026

Summary

  • Go applications using koanf for configuration management had no way to read values from OpenDecree without custom glue code.
  • Added sdk/contrib/koanf — a new module implementing koanf v2's Provider interface (Read/ReadBytes) backed by configclient.GetAll.
  • Read() returns a flat map[string]interface{} keyed by field path; Watch() provides a 30s polling hook for change notifications.

Test plan

  • go test ./... passes in sdk/contrib/koanf
  • k.Load(provider, nil) populates the koanf config from OpenDecree values

Closes #15

@zeevdr zeevdr added enhancement New feature or request sdk SDK changes size: L Larger effort — multiple days, design decisions needed priority: P2 Nice-to-have labels Jun 5, 2026
@codecov
Copy link
Copy Markdown

codecov Bot commented Jun 5, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

zeevdr and others added 6 commits June 5, 2026 07:57
Implements a koanf v2 Provider backed by configclient.GetAll().
Supports Read(), ReadBytes() (error), Watch() (30s polling), and
a WithTimeout option. Includes six unit tests with a fakeTransport.

Closes #15

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@zeevdr zeevdr force-pushed the feat/15-contrib-koanf branch from 34133e1 to e307dd5 Compare June 5, 2026 04:59
@zeevdr zeevdr merged commit f27049c into main Jun 5, 2026
21 checks passed
@zeevdr zeevdr deleted the feat/15-contrib-koanf branch June 5, 2026 05:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request priority: P2 Nice-to-have sdk SDK changes size: L Larger effort — multiple days, design decisions needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

contrib/koanf: config provider

1 participant