import * as _ from 'lodash-es'; import { KubernetesIngressRule } from './models'; export class KubernetesIngressConverter { static apiToModel(data) { const rules = _.flatMap(data.spec.rules, (rule) => { return _.map(rule.http.paths, (path) => { const ingRule = new KubernetesIngressRule(); ingRule.ServiceName = path.backend.serviceName; ingRule.Host = rule.host; ingRule.IP = data.status.loadBalancer.ingress ? data.status.loadBalancer.ingress[0].ip : undefined; ingRule.Port = path.backend.servicePort; ingRule.Path = path.path; return ingRule; }); }); return rules; } }