Newer
Older
package container
import (
"github.com/pkg/errors"
corev1 "k8s.io/api/core/v1"
)
func Generate(c Mutate) (obj corev1.Container, err error) {
var container corev1.Container
var ports []corev1.ContainerPort
var cmd []string
var args []string
var resources corev1.ResourceRequirements
var volumeMounts []corev1.VolumeMount
var readiness *corev1.Probe
var liveness *corev1.Probe
var envList []corev1.EnvVar
ports, err = c.ContainerPorts()
if err != nil {
return container, errors.Wrap(err, "failed to generate container ports")
return container, errors.Wrap(err, "failed to generate container ports")
return container, errors.Wrap(err, "failed to generate container ports")
}
volumeMounts, err = c.ContainerVolumeMounts()
if err != nil {
return container, errors.Wrap(err, "failed to generate container ports")
}
readiness, err = c.ContainerReadinessProbe()
if err != nil {
return container, errors.Wrap(err, "failed to generate container ports")
}
liveness, err = c.ContainerLivennessProbe()
if err != nil {
return container, errors.Wrap(err, "failed to generate container ports")
return container, errors.Wrap(err, "failed to generate container ports")
}
container = corev1.Container{
Name: c.ContainerName(),
Image: c.ContainerImage(),
ImagePullPolicy: c.ContainerImagePullPolicy(),
Args: args,
Command: cmd,
Env: envList,
Ports: ports,
VolumeMounts: volumeMounts,
LivenessProbe: liveness,
ReadinessProbe: readiness,
Resources: resources,
}