use of org.onosproject.k8snetworking.api.Constants.CLI_CONTAINERS_LENGTH in project onos by opennetworkinglab.
the class K8sPodListCommand method doExecute.
@Override
protected void doExecute() {
K8sPodService service = get(K8sPodService.class);
List<Pod> pods = Lists.newArrayList(service.pods());
pods.sort(Comparator.comparing(p -> p.getMetadata().getName()));
String format = genFormatString(ImmutableList.of(CLI_NAME_LENGTH, CLI_NAMESPACE_LENGTH, CLI_IP_ADDRESS_LENGTH, CLI_CONTAINERS_LENGTH));
if (outputJson()) {
print("%s", json(pods));
} else {
print(format, "Name", "Namespace", "IP Address", "Containers");
for (Pod pod : pods) {
List<String> containers = Lists.newArrayList();
pod.getSpec().getContainers().forEach(c -> containers.add(c.getName()));
print(format, StringUtils.substring(pod.getMetadata().getName(), 0, CLI_NAME_LENGTH - CLI_MARGIN_LENGTH), StringUtils.substring(pod.getMetadata().getNamespace(), 0, CLI_NAMESPACE_LENGTH - CLI_MARGIN_LENGTH), StringUtils.substring(pod.getStatus().getPodIP(), 0, CLI_IP_ADDRESS_LENGTH - CLI_MARGIN_LENGTH), containers.isEmpty() ? "" : containers);
}
}
}
Aggregations