← Back to issue list

The image entry point should be configurable, making Pebble optional

View original Github issue

Metadata

Project
rockcraft
Number
#866
Type
issue
State
open
Author
petrutlucian94
Labels
Created
2025-04-23 11:45:24+00:00
Updated
2025-05-06 10:57:41+00:00
Closed

Current evaluation

No evaluation has been recorded for this issue yet.

Issue body

### Bug Description Rockcraft always sets Pebble as the image entry point. This often prevents rock images from being used as drop-in replacements for the upstream images. One example is rawfile-localpv, where a pod is [launched on the fly to perform resizes](https://github.com/canonical/k8s-snap/issues/1278#issuecomment-2791412856). The template defines container arguments that aren't handled properly by rock images, which expect these arguments to contain `--args $serivceName`. Workarounds that have been used so far (not always applicable): * fork the projects to accommodate Pebble * doesn't scale very well * explicitly set the container entry point to bypass Pebble * the helm charts don't always provide this option * use a Dockerfile wrapper with a rock image as base so that we can explicitly set an entry point * ugly, defeats the purpose of Rockcraft Pebble isn't actually needed when there's just one process per container (most OCI images), it's a redundant component that interferes with the way in which Kubernetes launches and manages processes. That being considered, Rockcraft should make the image entry point configurable, greatly simplifying rock image maintenance. ### To Reproduce N/A ### Environment N/A ### rockcraft.yaml ```yaml N/A ``` ### Relevant log output ```shell N/A ```

Evaluation history

No evaluation history available.