@himenon/kubernetes-typescript-openapi
v2.1.0
Published
Implementation of TypeScript generated from Kubernetes OpenAPI
Downloads
616
Maintainers
Readme
@himenon/kubernetes-typescript-openapi
npm i @himenon/kubernetes-typescript-openapi
# or
pnpm i @himenon/kubernetes-typescript-openapi
# or
yarn add @himenon/kubernetes-typescript-openapi
Usage
import * as fs from "fs";
import * as yaml from "js-yaml"; // yarn add js-yaml @types/js-yaml
import type { Schemas } from "@himenon/kubernetes-typescript-openapi/dist/v1.29.1";
const podTemplateSpec: Schemas.io$k8s$api$core$v1$PodTemplateSpec = {
metadata: {
labels: {
app: "nginx",
},
},
spec: {
containers: [
{
name: "nginx",
image: "nginx:1.14.2",
ports: [
{
containerPort: 80,
},
],
},
],
},
};
const deployment: Schemas.io$k8s$api$apps$v1$Deployment = {
apiVersion: "apps/v1",
kind: "Deployment",
metadata: {
name: "nginx-deployment",
labels: {
app: "nginx",
},
},
spec: {
replicas: 3,
selector: {
matchLabels: {
app: "nginx",
},
},
template: podTemplateSpec,
},
};
const text = yaml.dump(deployment, { noRefs: true, lineWidth: 144 });
fs.writeFileSync("deployment.yml", text, "utf-8");
Build
pnpm build
OpenAPI Source for Kubernetes
OpenAPI TypeScript Code Generator
You can also just use the type definition
Use Another Version
Edit config.ts