Conversion functions to support PodTemplateSpec

This commit is contained in:
Clayton Coleman
2014-11-06 21:07:24 -05:00
parent e3be1e9e14
commit 74c7914f7e
3 changed files with 177 additions and 12 deletions

View File

@@ -45,6 +45,8 @@ func init() {
out.UUID = in.UID
return nil
},
// ContainerManifestList
func(in *ContainerManifestList, out *BoundPods, s conversion.Scope) error {
if err := s.Convert(&in.Items, &out.Items, 0); err != nil {
return err
@@ -76,5 +78,32 @@ func init() {
out.CreationTimestamp = in.CreationTimestamp
return nil
},
// Conversion between Manifest and PodSpec
func(in *PodSpec, out *ContainerManifest, s conversion.Scope) error {
if err := s.Convert(&in.Volumes, &out.Volumes, 0); err != nil {
return err
}
if err := s.Convert(&in.Containers, &out.Containers, 0); err != nil {
return err
}
if err := s.Convert(&in.RestartPolicy, &out.RestartPolicy, 0); err != nil {
return err
}
out.Version = "v1beta2"
return nil
},
func(in *ContainerManifest, out *PodSpec, s conversion.Scope) error {
if err := s.Convert(&in.Volumes, &out.Volumes, 0); err != nil {
return err
}
if err := s.Convert(&in.Containers, &out.Containers, 0); err != nil {
return err
}
if err := s.Convert(&in.RestartPolicy, &out.RestartPolicy, 0); err != nil {
return err
}
return nil
},
)
}