KubernetesCRDModelGen.Tool 1.0.0-alpha.387

This is a prerelease version of KubernetesCRDModelGen.Tool.
dotnet tool install --global KubernetesCRDModelGen.Tool --version 1.0.0-alpha.387                
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local KubernetesCRDModelGen.Tool --version 1.0.0-alpha.387                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=KubernetesCRDModelGen.Tool&version=1.0.0-alpha.387&prerelease                
nuke :add-package KubernetesCRDModelGen.Tool --version 1.0.0-alpha.387                

KubernetesCRDModelGen

codecov

What is this?

This project contains components which allow generation of C# Classes/Assemblies from Kubernetes Custom Resource Definitions.

  • KubernetesCRDModelGen
    • Custom Resource Definition to C# Class/Assembly Generator
  • KubernetesCRDModelGen.Tool
    • Yaml to C# Class Generator
  • KubernetesCRDModelGen.Sync
    • Synchronizes Custom Resource Definitions from numerous sources

How to use

  • Programmatically
    var crd = KubernetesYaml.LoadAllFromString(yaml);
    var fac = LoggerFactory.Create((x) => { });
    var generator = new Generator(fac.CreateLogger<Generator>());
    var code = generator.GenerateCode(crd);
    var assembly = generator.GenerateAssembly(crd)
    
  • CLI
    • Install .Net Tool
      • dotnet tool install --global KubernetesCRDModelGen.Tool --prerelease
    • Run
      • KubernetesCRDModelGen --FolderPath /path/to/yamls --Namespace Namespace

Published Packages

We publish the following premade packages

Group NuGet
argoproj.io Link
aws.upbound.io Link
azure.com Link
azure.upbound.io Link
cnrm.cloud.google.com Link
crossplane.io Link
fluxcd.io Link
gcp.upbound.io Link
helm.crossplane.io Link
istio.io Link
jetstack.io Link
keda.sh Link
knative.dev Link
kubevirt.io Link
postgresql.cnpg.io Link
projectcalico.org Link
secrets-store.csi.x-k8s.io Link
storage.k8s.io Link
tf.upbound.io Link
traefik.io Link

Type Mappings

OpenAPIv3 type Type
'object' with Properties object
'object' with AdditionalProperties Dictionary
'object' with x-kubernetes-embedded-type object
'object' with x-kubernetes-preserve-unknown-fields object
'object' with x-kubernetes-int-or-string k8s.Models.IntstrIntOrString
'array' List
'array' with x-kubernetes-list-type=atomic List
'array' with x-kubernetes-list-type=map List
'array' with x-kubernetes-list-type=set List
'boolean' boolean
'number' (all formats) double
'integer' (all formats) int
'integer' with format=int64 long
'null' null
'string' string
'string' with format=binary bytes
'string' with format=byte (base64 encoded) bytes
'string' with format=date timestamp (google.protobuf.Timestamp)
'string' with format=date-time timestamp (google.protobuf.Timestamp)
'string' with format=duration duration (google.protobuf.Duration)
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
1.0.0-alpha.387 31 11/13/2024
1.0.0-alpha.386 41 11/13/2024
1.0.0-alpha.385 36 11/13/2024
1.0.0-alpha.384 39 11/12/2024
1.0.0-alpha.383 33 11/7/2024
1.0.0-alpha.382 37 11/7/2024
1.0.0-alpha.381 35 11/7/2024
1.0.0-alpha.380 37 11/6/2024
1.0.0-alpha.379 36 11/6/2024
1.0.0-alpha.378 35 11/5/2024
1.0.0-alpha.377 46 11/5/2024
1.0.0-alpha.376 45 11/4/2024
1.0.0-alpha.375 36 11/4/2024
1.0.0-alpha.374 31 11/4/2024
1.0.0-alpha.373 23 11/4/2024
1.0.0-alpha.372 39 11/4/2024
1.0.0-alpha.371 37 11/1/2024
1.0.0-alpha.370 30 10/31/2024
1.0.0-alpha.369 30 10/31/2024
1.0.0-alpha.368 34 10/31/2024
1.0.0-alpha.367 32 10/31/2024
1.0.0-alpha.366 39 10/30/2024
1.0.0-alpha.365 34 10/30/2024
1.0.0-alpha.364 34 10/29/2024
1.0.0-alpha.363 36 10/29/2024
1.0.0-alpha.362 33 10/29/2024
1.0.0-alpha.361 39 10/28/2024
1.0.0-alpha.360 39 10/28/2024
1.0.0-alpha.359 39 10/25/2024
1.0.0-alpha.358 36 10/23/2024
1.0.0-alpha.357 34 10/23/2024
1.0.0-alpha.356 41 10/23/2024
1.0.0-alpha.355 32 10/22/2024
1.0.0-alpha.354 28 10/22/2024
1.0.0-alpha.353 35 10/22/2024
1.0.0-alpha.352 24 10/22/2024
1.0.0-alpha.351 30 10/22/2024
1.0.0-alpha.350 38 10/17/2024
1.0.0-alpha.349 38 10/17/2024
1.0.0-alpha.348 39 10/17/2024
1.0.0-alpha.347 41 10/16/2024
1.0.0-alpha.346 43 10/16/2024
1.0.0-alpha.345 41 10/15/2024
1.0.0-alpha.344 42 10/15/2024
1.0.0-alpha.343 61 10/11/2024
1.0.0-alpha.342 55 10/11/2024
1.0.0-alpha.341 52 10/9/2024
1.0.0-alpha.340 54 10/9/2024
1.0.0-alpha.339 48 10/9/2024
1.0.0-alpha.338 49 10/8/2024
1.0.0-alpha.337 56 10/4/2024
1.0.0-alpha.336 46 10/3/2024
1.0.0-alpha.335 49 10/3/2024
1.0.0-alpha.334 48 10/1/2024
1.0.0-alpha.333 65 9/30/2024
1.0.0-alpha.332 62 9/27/2024
1.0.0-alpha.331 57 9/26/2024
1.0.0-alpha.330 38 9/25/2024
1.0.0-alpha.329 39 9/25/2024