
io.fabric8.templates.default.mvel Maven / Gradle / Ivy
The newest version!
{
"id": "@{name}-list",
"kind": "List",
"apiVersion": "v1beta2",
"name": "@{name}-config",
"description": "Configuration for @{name}",
"items": [
@if{serviceName != null && servicePort != null && !(serviceContainerPortInt == null && serviceContainerPortString == null)}
{
"id": "@{serviceName}",
"apiVersion": "v1beta1",
"kind": "Service",
@if{serviceContainerPortInt != null}"containerPort": @{serviceContainerPortInt},@end{}
@if{serviceContainerPortString != null}"containerPort": "@{serviceContainerPortString}",@end{}
"port": @{servicePort},
"selector": {@foreach{label : labels.entrySet()}
"@{label.key}": "@{label.value}"@end{", "}
}
},@end{}
{
"id": "@{replicationControllerName}",
"kind": "ReplicationController",
"apiVersion": "v1beta1",
"desiredState": {
"replicas": @{replicaCount},
"replicaSelector": {@foreach{label : labels.entrySet()}
"@{label.key}": "@{label.value}"@end{", "}
},
"podTemplate": {
"desiredState": {
"manifest": {
"version": "v1beta1",
"id": "@{name}Pod",
"containers": [
{
"name": "@{containerName}",
"image": "@{docker_image}",
@if{imagePullPolicy != null} "imagePullPolicy": "@{imagePullPolicy}",@end{}
@if{environmentVariables != null && !environmentVariables.isEmpty()}"env": [@foreach{env : environmentVariables}
{
@if{env.name != null} "name": "@{env.name}"@if{env.value != null},@end{}@end{}
@if{env.value != null} "value": "@{env.value}"@end{}
}@end{", "}
],@end{}
"ports": [@foreach{port : ports}
{
@if{port.containerPort != null} "containerPort": @{port.containerPort}@if{port.name != null || port.hostPort != null},@end{}@end{}@if{port.name != null}
"name": "@{port.name}"@if{port.hostPort != null},@end{}@end{}
@if{port.hostPort != null} "hostPort": @{port.hostPort}@end{}
}@end{", "}
]
}
]
}
},
"labels": {@foreach{label : labels.entrySet()}
"@{label.key}": "@{label.value}"@end{", "}
}
}
},
"labels": {@foreach{label : labels.entrySet()}
"@{label.key}": "@{label.value}"@end{", "}
}
}
]
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy