@@ -355,26 +355,59 @@ public partial class V1PoolerSpecMonitoringPodMonitorRelabelings
355355}
356356
357357/// <summary>
358- /// The configuration of the monitoring infrastructure of this pooler.
359- ///
360- /// Deprecated: This feature will be removed in an upcoming release. If
361- /// you need this functionality, you can create a PodMonitor manually.
358+ /// Configure TLS communication for the metrics endpoint.
359+ /// Changing tls.enabled option will force a rollout of all instances.
362360/// </summary>
363361[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.6.0+0fbafdb9fc339df17b265ba23ecc4a7be2359877")]
364362[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
363+ public partial class V1PoolerSpecMonitoringTls
364+ {
365+ /// <summary>
366+ /// Enable TLS for the monitoring endpoint.
367+ /// Changing this option will force a rollout of all instances.
368+ /// </summary>
369+ [JsonPropertyName("enabled")]
370+ public bool? Enabled { get; set; }
371+ }
372+
373+ /// <summary>The configuration of the monitoring infrastructure of this pooler.</summary>
374+ [global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.6.0+0fbafdb9fc339df17b265ba23ecc4a7be2359877")]
375+ [global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
365376public partial class V1PoolerSpecMonitoring
366377{
367- /// <summary>Enable or disable the `PodMonitor`</summary>
378+ /// <summary>
379+ /// Enable or disable the `PodMonitor`
380+ ///
381+ /// Deprecated: This feature will be removed in an upcoming release. If
382+ /// you need this functionality, you can create a PodMonitor manually.
383+ /// </summary>
368384 [JsonPropertyName("enablePodMonitor")]
369385 public bool? EnablePodMonitor { get; set; }
370386
371- /// <summary>The list of metric relabelings for the `PodMonitor`. Applied to samples before ingestion.</summary>
387+ /// <summary>
388+ /// The list of metric relabelings for the `PodMonitor`. Applied to samples before ingestion.
389+ ///
390+ /// Deprecated: This feature will be removed in an upcoming release. If
391+ /// you need this functionality, you can create a PodMonitor manually.
392+ /// </summary>
372393 [JsonPropertyName("podMonitorMetricRelabelings")]
373394 public IList<V1PoolerSpecMonitoringPodMonitorMetricRelabelings>? PodMonitorMetricRelabelings { get; set; }
374395
375- /// <summary>The list of relabelings for the `PodMonitor`. Applied to samples before scraping.</summary>
396+ /// <summary>
397+ /// The list of relabelings for the `PodMonitor`. Applied to samples before scraping.
398+ ///
399+ /// Deprecated: This feature will be removed in an upcoming release. If
400+ /// you need this functionality, you can create a PodMonitor manually.
401+ /// </summary>
376402 [JsonPropertyName("podMonitorRelabelings")]
377403 public IList<V1PoolerSpecMonitoringPodMonitorRelabelings>? PodMonitorRelabelings { get; set; }
404+
405+ /// <summary>
406+ /// Configure TLS communication for the metrics endpoint.
407+ /// Changing tls.enabled option will force a rollout of all instances.
408+ /// </summary>
409+ [JsonPropertyName("tls")]
410+ public V1PoolerSpecMonitoringTls? Tls { get; set; }
378411}
379412
380413/// <summary>
@@ -420,6 +453,35 @@ public partial class V1PoolerSpecPgbouncerClientTLSSecret
420453 public required string Name { get; set; }
421454}
422455
456+ /// <summary>
457+ /// ImageCatalogRef points to an entry in an ImageCatalog or ClusterImageCatalog.
458+ /// Mutually exclusive with Image.
459+ /// </summary>
460+ [global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.6.0+0fbafdb9fc339df17b265ba23ecc4a7be2359877")]
461+ [global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
462+ public partial class V1PoolerSpecPgbouncerImageCatalogRef
463+ {
464+ /// <summary>
465+ /// APIGroup is the group for the resource being referenced.
466+ /// If APIGroup is not specified, the specified Kind must be in the core API group.
467+ /// For any other third-party types, APIGroup is required.
468+ /// </summary>
469+ [JsonPropertyName("apiGroup")]
470+ public string? ApiGroup { get; set; }
471+
472+ /// <summary>Key identifies the entry within the catalog's componentImages list.</summary>
473+ [JsonPropertyName("key")]
474+ public required string Key { get; set; }
475+
476+ /// <summary>Kind is the type of resource being referenced</summary>
477+ [JsonPropertyName("kind")]
478+ public required string Kind { get; set; }
479+
480+ /// <summary>Name is the name of resource being referenced</summary>
481+ [JsonPropertyName("name")]
482+ public required string Name { get; set; }
483+ }
484+
423485/// <summary>The pool mode. Default: `session`.</summary>
424486[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.6.0+0fbafdb9fc339df17b265ba23ecc4a7be2359877")]
425487[JsonConverter(typeof(JsonStringEnumConverter<V1PoolerSpecPgbouncerPoolModeEnum>))]
@@ -497,6 +559,21 @@ public partial class V1PoolerSpecPgbouncer
497559 [JsonPropertyName("clientTLSSecret")]
498560 public V1PoolerSpecPgbouncerClientTLSSecret? ClientTLSSecret { get; set; }
499561
562+ /// <summary>
563+ /// Image is the pgbouncer container image to use. When set, it takes
564+ /// precedence over ImageCatalogRef and the operator default, but is
565+ /// overridden by an explicit image set in the pod template.
566+ /// </summary>
567+ [JsonPropertyName("image")]
568+ public string? Image { get; set; }
569+
570+ /// <summary>
571+ /// ImageCatalogRef points to an entry in an ImageCatalog or ClusterImageCatalog.
572+ /// Mutually exclusive with Image.
573+ /// </summary>
574+ [JsonPropertyName("imageCatalogRef")]
575+ public V1PoolerSpecPgbouncerImageCatalogRef? ImageCatalogRef { get; set; }
576+
500577 /// <summary>
501578 /// Additional parameters to be passed to PgBouncer - please check
502579 /// the CNPG documentation for a list of options you can configure
@@ -11600,12 +11677,7 @@ public partial class V1PoolerSpec
1160011677 [JsonPropertyName("instances")]
1160111678 public int? Instances { get; set; }
1160211679
11603- /// <summary>
11604- /// The configuration of the monitoring infrastructure of this pooler.
11605- ///
11606- /// Deprecated: This feature will be removed in an upcoming release. If
11607- /// you need this functionality, you can create a PodMonitor manually.
11608- /// </summary>
11680+ /// <summary>The configuration of the monitoring infrastructure of this pooler.</summary>
1160911681 [JsonPropertyName("monitoring")]
1161011682 public V1PoolerSpecMonitoring? Monitoring { get; set; }
1161111683
@@ -11636,6 +11708,21 @@ public partial class V1PoolerSpec
1163611708 public V1PoolerSpecTypeEnum? Type { get; set; }
1163711709}
1163811710
11711+ /// <summary>Phase summarizes the overall lifecycle state of the Pooler.</summary>
11712+ [global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.6.0+0fbafdb9fc339df17b265ba23ecc4a7be2359877")]
11713+ [JsonConverter(typeof(JsonStringEnumConverter<V1PoolerStatusPhaseEnum>))]
11714+ public enum V1PoolerStatusPhaseEnum
11715+ {
11716+ [EnumMember(Value = "active"), JsonStringEnumMemberName("active")]
11717+ Active,
11718+ [EnumMember(Value = "paused"), JsonStringEnumMemberName("paused")]
11719+ Paused,
11720+ [EnumMember(Value = "inactive"), JsonStringEnumMemberName("inactive")]
11721+ Inactive,
11722+ [EnumMember(Value = "failed"), JsonStringEnumMemberName("failed")]
11723+ Failed
11724+ }
11725+
1163911726/// <summary>The client CA secret version</summary>
1164011727[global::System.CodeDom.Compiler.GeneratedCode("KubernetesCRDModelGen", "1.6.0+0fbafdb9fc339df17b265ba23ecc4a7be2359877")]
1164111728[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
@@ -11751,10 +11838,33 @@ public partial class V1PoolerStatusSecrets
1175111838[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
1175211839public partial class V1PoolerStatus
1175311840{
11841+ /// <summary>Error is the latest admission validation error</summary>
11842+ [JsonPropertyName("error")]
11843+ public string? Error { get; set; }
11844+
11845+ /// <summary>
11846+ /// Image is the resolved pgbouncer container image that the operator is
11847+ /// using for this Pooler, including any override coming from spec.template.
11848+ /// While Phase is Active or Paused this field reflects what the Deployment
11849+ /// actually runs; while Phase is Inactive or Failed it may carry the last
11850+ /// successfully resolved value (or be empty if the Pooler has never reconciled
11851+ /// successfully).
11852+ /// </summary>
11853+ [JsonPropertyName("image")]
11854+ public string? Image { get; set; }
11855+
1175411856 /// <summary>The number of pods trying to be scheduled</summary>
1175511857 [JsonPropertyName("instances")]
1175611858 public int? Instances { get; set; }
1175711859
11860+ /// <summary>Phase summarizes the overall lifecycle state of the Pooler.</summary>
11861+ [JsonPropertyName("phase")]
11862+ public V1PoolerStatusPhaseEnum? Phase { get; set; }
11863+
11864+ /// <summary>PhaseReason is a human-readable explanation of the current Phase.</summary>
11865+ [JsonPropertyName("phaseReason")]
11866+ public string? PhaseReason { get; set; }
11867+
1175811868 /// <summary>The resource version of the config object</summary>
1175911869 [JsonPropertyName("secrets")]
1176011870 public V1PoolerStatusSecrets? Secrets { get; set; }
0 commit comments