KubernetesCRDModelGen.Tool 1.0.0-alpha.402

This is a prerelease version of KubernetesCRDModelGen.Tool.
dotnet tool install --global KubernetesCRDModelGen.Tool --version 1.0.0-alpha.402                
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.402                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=KubernetesCRDModelGen.Tool&version=1.0.0-alpha.402&prerelease                
nuke :add-package KubernetesCRDModelGen.Tool --version 1.0.0-alpha.402                

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.402 0 11/21/2024
1.0.0-alpha.401 8 11/21/2024
1.0.0-alpha.400 23 11/21/2024
1.0.0-alpha.399 25 11/20/2024
1.0.0-alpha.398 27 11/20/2024
1.0.0-alpha.397 26 11/20/2024
1.0.0-alpha.396 42 11/20/2024
1.0.0-alpha.395 34 11/20/2024
1.0.0-alpha.394 32 11/20/2024
1.0.0-alpha.393 34 11/20/2024
1.0.0-alpha.392 34 11/19/2024
1.0.0-alpha.391 33 11/19/2024
1.0.0-alpha.390 34 11/18/2024
1.0.0-alpha.389 32 11/18/2024
1.0.0-alpha.388 43 11/15/2024
1.0.0-alpha.387 32 11/13/2024
1.0.0-alpha.386 42 11/13/2024
1.0.0-alpha.385 37 11/13/2024
1.0.0-alpha.384 40 11/12/2024
1.0.0-alpha.383 34 11/7/2024
1.0.0-alpha.382 38 11/7/2024
1.0.0-alpha.381 36 11/7/2024
1.0.0-alpha.380 38 11/6/2024
1.0.0-alpha.379 37 11/6/2024
1.0.0-alpha.378 36 11/5/2024
1.0.0-alpha.377 47 11/5/2024
1.0.0-alpha.376 46 11/4/2024
1.0.0-alpha.375 37 11/4/2024
1.0.0-alpha.374 32 11/4/2024
1.0.0-alpha.373 24 11/4/2024
1.0.0-alpha.372 40 11/4/2024
1.0.0-alpha.371 38 11/1/2024
1.0.0-alpha.370 31 10/31/2024
1.0.0-alpha.369 31 10/31/2024
1.0.0-alpha.368 35 10/31/2024
1.0.0-alpha.367 33 10/31/2024
1.0.0-alpha.366 40 10/30/2024
1.0.0-alpha.365 35 10/30/2024
1.0.0-alpha.364 35 10/29/2024
1.0.0-alpha.363 37 10/29/2024
1.0.0-alpha.362 34 10/29/2024
1.0.0-alpha.361 40 10/28/2024
1.0.0-alpha.360 40 10/28/2024
1.0.0-alpha.359 40 10/25/2024
1.0.0-alpha.358 37 10/23/2024
1.0.0-alpha.357 35 10/23/2024
1.0.0-alpha.356 42 10/23/2024
1.0.0-alpha.355 33 10/22/2024
1.0.0-alpha.354 29 10/22/2024
1.0.0-alpha.353 36 10/22/2024
1.0.0-alpha.352 25 10/22/2024
1.0.0-alpha.351 31 10/22/2024
1.0.0-alpha.350 39 10/17/2024
1.0.0-alpha.349 39 10/17/2024
1.0.0-alpha.348 40 10/17/2024
1.0.0-alpha.347 42 10/16/2024
1.0.0-alpha.346 44 10/16/2024
1.0.0-alpha.345 42 10/15/2024
1.0.0-alpha.344 46 10/15/2024
1.0.0-alpha.343 65 10/11/2024
1.0.0-alpha.342 59 10/11/2024
1.0.0-alpha.341 53 10/9/2024
1.0.0-alpha.340 55 10/9/2024
1.0.0-alpha.339 49 10/9/2024
1.0.0-alpha.338 51 10/8/2024
1.0.0-alpha.337 58 10/4/2024
1.0.0-alpha.336 48 10/3/2024
1.0.0-alpha.335 51 10/3/2024
1.0.0-alpha.334 50 10/1/2024
1.0.0-alpha.333 66 9/30/2024
1.0.0-alpha.332 63 9/27/2024
1.0.0-alpha.331 58 9/26/2024
1.0.0-alpha.330 39 9/25/2024
1.0.0-alpha.329 40 9/25/2024