cloudnative-pg / cloudnative-pg/plugin-barman-cloud

Support Cluster Scoped ObjectStore in CNPG clusters

オープン
#448 コメント 12 件 リアクション 18 件 担当者 0 名 GitHub で見る
主要言語
Go
スター
191
フォーク
72
平均マージ
2日 21時間
マージ済み PR(30日)
21

説明

Currently, when configuring the Barman Cloud plugin in a Cluster resource, the barmanObjectName parameter only allows referencing ObjectStore configurations from the same namespace as the CNPG Cluster.

I would like to request support for cross-namespace references so that we can define shared ObjectStore configurations centrally (e.g., in a cnpg-system or infrastructure namespace), and reuse them across multiple database clusters in different namespaces.

Current Behavior:

```yaml
spec:
plugins:
- name: barman-cloud.cloudnative-pg.io
isWALArchiver: true
parameters:
barmanObjectName: minio-store # must exist in same namespace
```

This configuration requires a duplicate copy of minio-store in each namespace that has a Cluster.

Requested Behavior:
Allow for something like the following:

```yaml
spec:
plugins:
- name: barman-cloud.cloudnative-pg.io
isWALArchiver: true
parameters:
barmanObjectName: minio-store
barmanObjectNamespace: cnpg-system # new field to support cross-namespace
```

Use Case / Motivation:

Centralize storage credentials and reduce secret duplication across environments.

Aligns with GitOps, multi-tenant, and RBAC best practices.

Improves DRY (Don't Repeat Yourself) and credential management in production-grade Kubernetes platforms.

Additional Context:
Similar cross-namespace reference patterns are used in projects like External Secrets Operator, cert-manager, and ArgoCD. This change would help platform teams standardize and secure backup configuration for PostgreSQL clusters across many namespaces.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

ファイルやテストは指定されていません。まずリポジトリで barmanObjectName と、ObjectStore 参照に対する namespace の検索または検証を検索し、その後 Cluster のプラグインパラメータがどのように解決されるかを追跡します。提案された namespace フィールドを通じて、Cluster が別の namespace にある ObjectStore を参照でき、適切な検証と namespace をまたぐ動作のテストがあることが完了条件です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
go, kubernetes, postgresql
領域
databases, devops
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。