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

[feature request] Allow specifying namespace of Barman ObjectStore CR

Open
#741 2 comments 5 reactions 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
191
Forks
72
Avg merge
1d 16h
Merged PRs (30d)
18

Description

Currently, the ObjectStore referenced in a Cluster has to be in the same namespace. It would be helpful to be able to specify a namespace where the ObjectStore should be fetched from.

This can have security implications and there should probably a mechanism to enable or disable the access from a different namespace. This could be a flag in the ObjectStore itself.

e.g.:
```yaml
---
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: test-cluster
namespace: cluster-namespace
spec:
instances: 3
plugins:
- name: barman-cloud.cloudnative-pg.io
isWALArchiver: true
parameters:
barmanObjectName: s3-store
barmanObjectNamespace: cnpg-system # Add the namespace here
---
apiVersion: barmancloud.cnpg.io/v1
kind: ObjectStore
metadata:
name: s3-store
namespace: cnpg-system
spec:
configuration:
destinationPath:
endpointURL:
s3Credentials:
# Configure namespace access
allowAccessFromNamespace: true
# Maybe allow explicitly specifying the namespace(s):
allowAccessFromNamespaces:
- cluster-namespace
```

Contributor guide

Open the contributing guide

Research direction

Review the Cluster plugin parameters and ObjectStore custom-resource definitions to understand how the barmanObjectName is resolved today. Clarify the cross-namespace authorization model before implementation; done means a namespace can be specified safely, access can be restricted, and the behavior is covered by the relevant tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes, postgresql
Domain
backend-api-design, databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.