@@ -195,9 +195,29 @@ which go beyond running particular images.
195
195
### Non-Goals
196
196
197
197
- This proposal does not aim to replace existing ` VolumeSource ` types.
198
- - This proposal does not address other use cases for OCI objects beyond file or
199
- directory sharing among containers in a pod.
198
+ - This proposal does not address other use cases for OCI objects beyond directory sharing among containers in a pod.
200
199
- Mounting thousands of images and artifacts in a single pod.
200
+ - The enhancement leaves single file use case out for now and restrict the mount
201
+ output to directories.
202
+ - The runtimes (CRI-O, containerd, others) will have to agree on the
203
+ implementation of how artifacts are manifested as directories. We don't want
204
+ to over-spec on selecting based on media types or other attributes now and can
205
+ consider that for later.
206
+ - We don't want to tie too strongly to how models are hosted on a particular
207
+ provider so we are flexible to adapt to different ways models and their
208
+ configurations are stored.
209
+ - If some file, say a VM format such as a qcow file, is stored as an
210
+ artifact, we don't want the runtime to be the entity responsible for
211
+ interpreting and correctly processing it to its final consumable state.
212
+ That could be delegated to the consumer or perhaps to some hooks and is
213
+ out of scope for alpha.
214
+ - Manifest list use cases are left out for now and will be restricted to
215
+ matching architecture like we do today for images. In the future (if there are
216
+ use cases) we will consider support for lists with items separated by
217
+ quantization or format or other attributes. However, that is out of scope for
218
+ now as it is easily worked around by creating a different image/artifact for
219
+ each instance/format/quantization of a model.
220
+
201
221
202
222
## Proposal
203
223
@@ -297,7 +317,10 @@ to support this source type. Key design aspects include:
297
317
- API changes to introduce the new ` VolumeSource ` type.
298
318
- Modifications to the Kubelet to handle mounting OCI images and artifacts.
299
319
- Handling image pull secrets and registry authentication.
300
- - Reuse existing logic from ConfigMaps to determining the file location on the host filesystem.
320
+ - The regular OCI images (that are used to create container rootfs today) can
321
+ be setup similarly as a directory and mounted as a volume source.
322
+ - For OCI artifacts, we want to convert and represent them as a directory with
323
+ files. A single file could also be nested inside a directory.
301
324
302
325
The following code snippet illustrates the proposed API change:
303
326
0 commit comments