22
33This directory contains a number of example yamls showing how to wrap
44different Pod-creating Kubernetes resources in an AppWrapper.
5- AppWrappers can be used to wrap any Kubernetes Kind that uses ` PodSpecTemplate `
6- to express its Pods.
5+ AppWrappers can be used to wrap one or more instances of
6+ any Kubernetes Kind that uses ` PodSpecTemplate ` to define its Pods.
7+ An AppWrapper must contain at least one such Pod-creating resource in addition
8+ to zero or more non-Pod-creating resources.
79
8- An AppWrapper contains a ` component ` array of ` AppWrapperComponents ` .
10+ An AppWrapper contains a` components ` array containing the wrapped resources .
911Each component has two main pieces: a ` template ` that defines the wrapped resource
1012and a ` podSets ` array that gives the ` replicas ` and ` path ` within the template
1113for each ` PodSpecTemplate ` . For correct operation of the AppWrapper, it is
1214required that the provided ` path ` and ` replicas ` information correctly represent
13- the Pod creating behavior of the wrapped resource.
15+ the Pod creating behavior of the wrapped resource. For resources that do not
16+ created Pods (eg ` Services ` or ` Secrets ` ) ` podSets ` should be empty and thus omitted.
1417
1518To simplify the user experience, for a selection of commonly-used Kubernetes
1619resource Kinds, the AppWrapper controller can automatically infer the ` podSets `
17- array if it is not provided. For these same kinds, the AppWrapper controller
18- will validate that any explicitly provided ` podSet ` entries match the definitions in
19- ` template ` . The current set of automatically inferred Kinds is:
20+ array if it is not provided. For these same Kinds, the AppWrapper controller
21+ will validate that any explicitly provided ` podSet ` entries do in fact match the
22+ definitions in ` template ` .
23+ The current set of automatically inferred Kinds is:
2024 + v1 Pod
2125 + apps/v1 Deployment
2226 + apps/v1 StatefulSet
@@ -25,5 +29,5 @@ will validate that any explicitly provided `podSet` entries match the definition
2529 + ray.io/v1 RayCluster
2630 + ray.io/v1 RayJob
2731
28- In all the examples, if the Kind supports automatic inference the ` podSets `
29- are elided .
32+ In all of the examples, if ` podSets ` inference is supported for the wrapped Kind,
33+ then ` podSets ` is omitted from the sample yaml .
0 commit comments