forked from LaconicNetwork/kompose
transformer fce now also converts k8s and openshift objects to versioned object
This commit is contained in:
parent
eef44ca57b
commit
7892ea1bff
@ -533,17 +533,25 @@ func configServicePorts(name string, service ServiceConfig) []api.ServicePort {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Transform data to json/yaml
|
// Transform data to json/yaml
|
||||||
func transformer(v interface{}, entity string, generateYaml bool) ([]byte, string) {
|
func transformer(obj runtime.Object, generateYaml bool) ([]byte, error) {
|
||||||
|
// Convert to versioned object
|
||||||
|
objectVersion := obj.GetObjectKind().GroupVersionKind()
|
||||||
|
version := unversioned.GroupVersion{Group: objectVersion.Group, Version: objectVersion.Version}
|
||||||
|
versionedObj, err := api.Scheme.ConvertToVersion(obj, version)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
// convert data to json / yaml
|
// convert data to json / yaml
|
||||||
data, err := json.MarshalIndent(v, "", " ")
|
data, err := json.MarshalIndent(versionedObj, "", " ")
|
||||||
if generateYaml == true {
|
if generateYaml == true {
|
||||||
data, err = yaml.Marshal(v)
|
data, err = yaml.Marshal(versionedObj)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, "Failed to marshal the " + entity
|
return nil, err
|
||||||
}
|
}
|
||||||
logrus.Debugf("%s\n", data)
|
logrus.Debugf("%s\n", data)
|
||||||
return data, ""
|
return data, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// load Environment Variable from bundles file
|
// load Environment Variable from bundles file
|
||||||
@ -869,39 +877,39 @@ func komposeConvert(komposeObject KomposeObject, toStdout, createD, createRS, cr
|
|||||||
updateController(osDC, fillTemplate, fillObjectMeta)
|
updateController(osDC, fillTemplate, fillObjectMeta)
|
||||||
|
|
||||||
// convert datarc to json / yaml
|
// convert datarc to json / yaml
|
||||||
datarc, err := transformer(rc, "replication controller", generateYaml)
|
datarc, err := transformer(rc, generateYaml)
|
||||||
if err != "" {
|
if err != nil {
|
||||||
logrus.Fatalf(err)
|
logrus.Fatalf(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert datadc to json / yaml
|
// convert datadc to json / yaml
|
||||||
datadc, err := transformer(dc, "deployment", generateYaml)
|
datadc, err := transformer(dc, generateYaml)
|
||||||
if err != "" {
|
if err != nil {
|
||||||
logrus.Fatalf(err)
|
logrus.Fatalf(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert datads to json / yaml
|
// convert datads to json / yaml
|
||||||
datads, err := transformer(ds, "daemonSet", generateYaml)
|
datads, err := transformer(ds, generateYaml)
|
||||||
if err != "" {
|
if err != nil {
|
||||||
logrus.Fatalf(err)
|
logrus.Fatalf(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert datars to json / yaml
|
// convert datars to json / yaml
|
||||||
datars, err := transformer(rs, "replicaSet", generateYaml)
|
datars, err := transformer(rs, generateYaml)
|
||||||
if err != "" {
|
if err != nil {
|
||||||
logrus.Fatalf(err)
|
logrus.Fatalf(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert datasvc to json / yaml
|
// convert datasvc to json / yaml
|
||||||
datasvc, err := transformer(sc, "service controller", generateYaml)
|
datasvc, err := transformer(sc, generateYaml)
|
||||||
if err != "" {
|
if err != nil {
|
||||||
logrus.Fatalf(err)
|
logrus.Fatalf(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert OpenShift DeploymentConfig to json / yaml
|
// convert OpenShift DeploymentConfig to json / yaml
|
||||||
dataDeploymentConfig, err := transformer(osDC, "deployment config", generateYaml)
|
dataDeploymentConfig, err := transformer(osDC, generateYaml)
|
||||||
if err != "" {
|
if err != nil {
|
||||||
logrus.Fatalf(err)
|
logrus.Fatalf(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
mServices[name] = datasvc
|
mServices[name] = datasvc
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user