Skip to content

Commit 2128277

Browse files
feat: Update CRDs (#9)
1 parent d340189 commit 2128277

10 files changed

Lines changed: 24057 additions & 0 deletions

Generated/KubernetesCRDModelGen.SourceGenerator/KubernetesCRDModelGen.SourceGenerator.SourceGenerator/v1.backups.postgresql.cnpg.io.g.cs

Lines changed: 652 additions & 0 deletions
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,206 @@
1+
#nullable enable
2+
using k8s;
3+
using k8s.Models;
4+
using System;
5+
using System.Collections.Generic;
6+
using System.Runtime.Serialization;
7+
using System.Text.Json;
8+
using System.Text.Json.Nodes;
9+
using System.Text.Json.Serialization;
10+
11+
namespace KubernetesCRDModelGen.Models.postgresql.cnpg.io;
12+
/// <summary>ClusterImageCatalog is the Schema for the clusterimagecatalogs API</summary>
13+
[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.5.2+8c7b4a3647c1e77cd3e3152af5701ec2357dafe9")]
14+
[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
15+
[KubernetesEntity(Group = KubeGroup, Kind = KubeKind, ApiVersion = KubeApiVersion, PluralName = KubePluralName)]
16+
public partial class V1ClusterImageCatalogList : IKubernetesObject<V1ListMeta>, IItems<V1ClusterImageCatalog>
17+
{
18+
public const string KubeApiVersion = "v1";
19+
public const string KubeKind = "ClusterImageCatalogList";
20+
public const string KubeGroup = "postgresql.cnpg.io";
21+
public const string KubePluralName = "clusterimagecatalogs";
22+
/// <summary>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</summary>
23+
[JsonPropertyName("apiVersion")]
24+
public string ApiVersion { get; set; } = "postgresql.cnpg.io/v1";
25+
26+
/// <summary>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</summary>
27+
[JsonPropertyName("kind")]
28+
public string Kind { get; set; } = "ClusterImageCatalogList";
29+
30+
/// <summary>ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}.</summary>
31+
[JsonPropertyName("metadata")]
32+
public V1ListMeta? Metadata { get; set; }
33+
34+
/// <summary>List of V1ClusterImageCatalog objects.</summary>
35+
[JsonPropertyName("items")]
36+
public IList<V1ClusterImageCatalog>? Items { get; set; }
37+
}
38+
39+
/// <summary>
40+
/// ExtensionEnvVar defines an environment variable for a specific extension
41+
/// image volume.
42+
/// </summary>
43+
[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.5.2+8c7b4a3647c1e77cd3e3152af5701ec2357dafe9")]
44+
[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
45+
public partial class V1ClusterImageCatalogSpecImagesExtensionsEnv
46+
{
47+
/// <summary>
48+
/// Name of the environment variable to be injected into the
49+
/// PostgreSQL process.
50+
/// </summary>
51+
[JsonPropertyName("name")]
52+
public required string Name { get; set; }
53+
54+
/// <summary>
55+
/// Value of the environment variable. CloudNativePG performs a direct
56+
/// replacement of this value, with support for placeholder expansion.
57+
/// The ${`image_root`} placeholder resolves to the absolute mount path
58+
/// of the extension&apos;s volume (e.g., `/extensions/my-extension`). This
59+
/// is particularly useful for allowing applications or libraries to
60+
/// locate specific directories within the mounted image.
61+
/// Unrecognized placeholders are rejected. To include a literal ${...}
62+
/// in the value, escape it as $${...}.
63+
/// </summary>
64+
[JsonPropertyName("value")]
65+
public required string Value { get; set; }
66+
}
67+
68+
/// <summary>The image containing the extension.</summary>
69+
[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.5.2+8c7b4a3647c1e77cd3e3152af5701ec2357dafe9")]
70+
[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
71+
public partial class V1ClusterImageCatalogSpecImagesExtensionsImage
72+
{
73+
/// <summary>
74+
/// Policy for pulling OCI objects. Possible values are:
75+
/// Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.
76+
/// Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn&apos;t present.
77+
/// IfNotPresent: the kubelet pulls if the reference isn&apos;t already present on disk. Container creation will fail if the reference isn&apos;t present and the pull fails.
78+
/// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
79+
/// </summary>
80+
[JsonPropertyName("pullPolicy")]
81+
public string? PullPolicy { get; set; }
82+
83+
/// <summary>
84+
/// Required: Image or artifact reference to be used.
85+
/// Behaves in the same way as pod.spec.containers[*].image.
86+
/// Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.
87+
/// More info: https://kubernetes.io/docs/concepts/containers/images
88+
/// This field is optional to allow higher level config management to default or override
89+
/// container images in workload controllers like Deployments and StatefulSets.
90+
/// </summary>
91+
[JsonPropertyName("reference")]
92+
public string? Reference { get; set; }
93+
}
94+
95+
/// <summary>
96+
/// ExtensionConfiguration is the configuration used to add
97+
/// PostgreSQL extensions to the Cluster.
98+
/// </summary>
99+
[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.5.2+8c7b4a3647c1e77cd3e3152af5701ec2357dafe9")]
100+
[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
101+
public partial class V1ClusterImageCatalogSpecImagesExtensions
102+
{
103+
/// <summary>
104+
/// A list of directories within the image to be appended to the
105+
/// PostgreSQL process&apos;s `PATH` environment variable.
106+
/// </summary>
107+
[JsonPropertyName("bin_path")]
108+
public IList<string>? BinPath { get; set; }
109+
110+
/// <summary>
111+
/// The list of directories inside the image which should be added to dynamic_library_path.
112+
/// If not defined, defaults to &quot;/lib&quot;.
113+
/// </summary>
114+
[JsonPropertyName("dynamic_library_path")]
115+
public IList<string>? DynamicLibraryPath { get; set; }
116+
117+
/// <summary>
118+
/// Env is a list of custom environment variables to be set in the
119+
/// PostgreSQL process for this extension. It is the responsibility of the
120+
/// cluster administrator to ensure the variables are correct for the
121+
/// specific extension. Note that changes to these variables require
122+
/// a manual cluster restart to take effect.
123+
/// </summary>
124+
[JsonPropertyName("env")]
125+
public IList<V1ClusterImageCatalogSpecImagesExtensionsEnv>? Env { get; set; }
126+
127+
/// <summary>
128+
/// The list of directories inside the image which should be added to extension_control_path.
129+
/// If not defined, defaults to &quot;/share&quot;.
130+
/// </summary>
131+
[JsonPropertyName("extension_control_path")]
132+
public IList<string>? ExtensionControlPath { get; set; }
133+
134+
/// <summary>The image containing the extension.</summary>
135+
[JsonPropertyName("image")]
136+
public V1ClusterImageCatalogSpecImagesExtensionsImage? Image { get; set; }
137+
138+
/// <summary>The list of directories inside the image which should be added to ld_library_path.</summary>
139+
[JsonPropertyName("ld_library_path")]
140+
public IList<string>? LdLibraryPath { get; set; }
141+
142+
/// <summary>The name of the extension, required</summary>
143+
[JsonPropertyName("name")]
144+
public required string Name { get; set; }
145+
}
146+
147+
/// <summary>CatalogImage defines the image and major version</summary>
148+
[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.5.2+8c7b4a3647c1e77cd3e3152af5701ec2357dafe9")]
149+
[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
150+
public partial class V1ClusterImageCatalogSpecImages
151+
{
152+
/// <summary>The configuration of the extensions to be added</summary>
153+
[JsonPropertyName("extensions")]
154+
public IList<V1ClusterImageCatalogSpecImagesExtensions>? Extensions { get; set; }
155+
156+
/// <summary>The image reference</summary>
157+
[JsonPropertyName("image")]
158+
public required string Image { get; set; }
159+
160+
/// <summary>The PostgreSQL major version of the image. Must be unique within the catalog.</summary>
161+
[JsonPropertyName("major")]
162+
public required int Major { get; set; }
163+
}
164+
165+
/// <summary>
166+
/// Specification of the desired behavior of the ClusterImageCatalog.
167+
/// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
168+
/// </summary>
169+
[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.5.2+8c7b4a3647c1e77cd3e3152af5701ec2357dafe9")]
170+
[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
171+
public partial class V1ClusterImageCatalogSpec
172+
{
173+
/// <summary>List of CatalogImages available in the catalog</summary>
174+
[JsonPropertyName("images")]
175+
public required IList<V1ClusterImageCatalogSpecImages> Images { get; set; }
176+
}
177+
178+
/// <summary>ClusterImageCatalog is the Schema for the clusterimagecatalogs API</summary>
179+
[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.5.2+8c7b4a3647c1e77cd3e3152af5701ec2357dafe9")]
180+
[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
181+
[KubernetesEntity(Group = KubeGroup, Kind = KubeKind, ApiVersion = KubeApiVersion, PluralName = KubePluralName)]
182+
public partial class V1ClusterImageCatalog : IKubernetesObject<V1ObjectMeta>, ISpec<V1ClusterImageCatalogSpec>
183+
{
184+
public const string KubeApiVersion = "v1";
185+
public const string KubeKind = "ClusterImageCatalog";
186+
public const string KubeGroup = "postgresql.cnpg.io";
187+
public const string KubePluralName = "clusterimagecatalogs";
188+
/// <summary>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</summary>
189+
[JsonPropertyName("apiVersion")]
190+
public string ApiVersion { get; set; } = "postgresql.cnpg.io/v1";
191+
192+
/// <summary>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</summary>
193+
[JsonPropertyName("kind")]
194+
public string Kind { get; set; } = "ClusterImageCatalog";
195+
196+
/// <summary>Standard object&apos;s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</summary>
197+
[JsonPropertyName("metadata")]
198+
public V1ObjectMeta Metadata { get; set; }
199+
200+
/// <summary>
201+
/// Specification of the desired behavior of the ClusterImageCatalog.
202+
/// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
203+
/// </summary>
204+
[JsonPropertyName("spec")]
205+
public required V1ClusterImageCatalogSpec Spec { get; set; }
206+
}

0 commit comments

Comments
 (0)