DiamondLightSource / DiamondLightSource/blueapi

Creation of Arbitrarily Named PVCs

Open
#1,559 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
13
Forks
13
Avg merge
2d 11h
Merged PRs (30d)
25

Description

Blueapi currently [creates a PVC](https://github.com/DiamondLightSource/blueapi/blob/6d08154b0cea91858fb08c34b9cba54566fd8611/helm/blueapi/templates/volumes.yaml#L1) if `.Values.initContainer.persistentVolume.enabled` is true, and `.Values.initContainer.persistentVolume.existingClaimName` does _not_ have a value.

This means that while Blueapi can [connect to arbitrarily named PVCs](https://github.com/DiamondLightSource/blueapi/blob/6d08154b0cea91858fb08c34b9cba54566fd8611/helm/blueapi/templates/statefulset.yaml#L64), it can only create one PVC per version.

There is a use case for beamlines needing a clean PVC, without having changed versions and whilst retaining a roll-back option.

## Acceptance Criteria
- Blueapi can create and connect to arbitrary PVCs

Contributor guide

Open the contributing guide

Research direction

Start with helm/blueapi/templates/volumes.yaml and helm/blueapi/templates/statefulset.yaml, then inspect the related values under initContainer.persistentVolume. Render the chart with different PVC names and verify that the created claim and StatefulSet reference the same arbitrary name. Done means Blueapi can create and connect to a newly named PVC while retaining existing-claim and rollback behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes
Domain
infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.