kubernetes-models
Version:
43 lines (42 loc) • 1.52 kB
JavaScript
import { register } from "@kubernetes-models/validate";
import { addSchema as IoK8sApiNetworkingV1NetworkPolicyEgressRule } from "./IoK8sApiNetworkingV1NetworkPolicyEgressRule.mjs";
import { addSchema as IoK8sApiNetworkingV1NetworkPolicyIngressRule } from "./IoK8sApiNetworkingV1NetworkPolicyIngressRule.mjs";
import { addSchema as IoK8sApimachineryPkgApisMetaV1LabelSelector } from "@kubernetes-models/apimachinery/_schemas/IoK8sApimachineryPkgApisMetaV1LabelSelector";
const schema = {
"properties": {
"egress": {
"items": {
"$ref": "io.k8s.api.networking.v1.NetworkPolicyEgressRule#"
},
"type": "array",
"nullable": true
},
"ingress": {
"items": {
"$ref": "io.k8s.api.networking.v1.NetworkPolicyIngressRule#"
},
"type": "array",
"nullable": true
},
"podSelector": {
"$ref": "io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector#"
},
"policyTypes": {
"items": {
"type": "string"
},
"type": "array",
"nullable": true
}
},
"required": [
"podSelector"
],
"type": "object"
};
export function addSchema() {
IoK8sApiNetworkingV1NetworkPolicyEgressRule();
IoK8sApiNetworkingV1NetworkPolicyIngressRule();
IoK8sApimachineryPkgApisMetaV1LabelSelector();
register("io.k8s.api.networking.v1.NetworkPolicySpec", schema);
}