mirror of
https://github.com/kairos-io/osbuilder.git
synced 2025-04-27 11:11:44 +00:00
Also update the controller
Signed-off-by: Itxaka <itxaka@kairos.io>
This commit is contained in:
parent
28ff9cf07b
commit
745b2a18f1
@ -49,8 +49,9 @@ type OSArtifactSpec struct {
|
|||||||
CloudConfigRef *SecretKeySelector `json:"cloudConfigRef,omitempty"`
|
CloudConfigRef *SecretKeySelector `json:"cloudConfigRef,omitempty"`
|
||||||
GRUBConfig string `json:"grubConfig,omitempty"`
|
GRUBConfig string `json:"grubConfig,omitempty"`
|
||||||
|
|
||||||
Bundles []string `json:"bundles,omitempty"`
|
Bundles []string `json:"bundles,omitempty"`
|
||||||
OSRelease string `json:"osRelease,omitempty"`
|
OSRelease string `json:"osRelease,omitempty"`
|
||||||
|
KairosRelease string `json:"kairosRelease,omitempty"`
|
||||||
|
|
||||||
ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
|
ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
|
||||||
Exporters []batchv1.JobSpec `json:"exporters,omitempty"`
|
Exporters []batchv1.JobSpec `json:"exporters,omitempty"`
|
||||||
|
@ -107,6 +107,29 @@ func osReleaseContainer(containerImage string) corev1.Container {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func kairosReleaseContainer(containerImage string) corev1.Container {
|
||||||
|
return corev1.Container{
|
||||||
|
ImagePullPolicy: corev1.PullAlways,
|
||||||
|
Name: "kairos-release",
|
||||||
|
Image: containerImage,
|
||||||
|
Command: []string{"/bin/bash", "-cxe"},
|
||||||
|
Args: []string{
|
||||||
|
"cp -rfv /etc/kairos-release /rootfs/etc/kairos-release",
|
||||||
|
},
|
||||||
|
VolumeMounts: []corev1.VolumeMount{
|
||||||
|
{
|
||||||
|
Name: "config",
|
||||||
|
MountPath: "/etc/kairos-release",
|
||||||
|
SubPath: "kairos-release",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
Name: "rootfs",
|
||||||
|
MountPath: "/rootfs",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func (r *OSArtifactReconciler) newArtifactPVC(artifact *osbuilder.OSArtifact) *corev1.PersistentVolumeClaim {
|
func (r *OSArtifactReconciler) newArtifactPVC(artifact *osbuilder.OSArtifact) *corev1.PersistentVolumeClaim {
|
||||||
if artifact.Spec.Volume == nil {
|
if artifact.Spec.Volume == nil {
|
||||||
artifact.Spec.Volume = &corev1.PersistentVolumeClaimSpec{
|
artifact.Spec.Volume = &corev1.PersistentVolumeClaimSpec{
|
||||||
@ -358,6 +381,9 @@ func (r *OSArtifactReconciler) newBuilderPod(pvcName string, artifact *osbuilder
|
|||||||
if artifact.Spec.OSRelease != "" {
|
if artifact.Spec.OSRelease != "" {
|
||||||
podSpec.InitContainers = append(podSpec.InitContainers, osReleaseContainer(r.ToolImage))
|
podSpec.InitContainers = append(podSpec.InitContainers, osReleaseContainer(r.ToolImage))
|
||||||
}
|
}
|
||||||
|
if artifact.Spec.KairosRelease != "" {
|
||||||
|
podSpec.InitContainers = append(podSpec.InitContainers, kairosReleaseContainer(r.ToolImage))
|
||||||
|
}
|
||||||
|
|
||||||
if artifact.Spec.ISO || artifact.Spec.Netboot {
|
if artifact.Spec.ISO || artifact.Spec.Netboot {
|
||||||
podSpec.Containers = append(podSpec.Containers, buildIsoContainer)
|
podSpec.Containers = append(podSpec.Containers, buildIsoContainer)
|
||||||
|
Loading…
Reference in New Issue
Block a user