ccluster-py 0.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. ccluster/__init__.py +19 -0
  2. ccluster/catalogs/__init__.py +65 -0
  3. ccluster/catalogs/cluster_base/__init__.py +41 -0
  4. ccluster/catalogs/cluster_base/argo_rollouts/__init__.py +37 -0
  5. ccluster/catalogs/cluster_base/argo_rollouts/values.py +79 -0
  6. ccluster/catalogs/cluster_base/cert_manager/__init__.py +37 -0
  7. ccluster/catalogs/cluster_base/cert_manager/values.py +85 -0
  8. ccluster/catalogs/cluster_base/external_dns/__init__.py +39 -0
  9. ccluster/catalogs/cluster_base/external_dns/values.py +115 -0
  10. ccluster/catalogs/cluster_base/final_stack/__init__.py +31 -0
  11. ccluster/catalogs/cluster_base/final_stack/values.py +41 -0
  12. ccluster/catalogs/cluster_base/fluent_bit/__init__.py +37 -0
  13. ccluster/catalogs/cluster_base/fluent_bit/values.py +85 -0
  14. ccluster/catalogs/cluster_base/gpu_operator/__init__.py +39 -0
  15. ccluster/catalogs/cluster_base/gpu_operator/values.py +118 -0
  16. ccluster/catalogs/cluster_base/ingress_nginx/__init__.py +41 -0
  17. ccluster/catalogs/cluster_base/ingress_nginx/values.py +115 -0
  18. ccluster/catalogs/cluster_base/istio/__init__.py +45 -0
  19. ccluster/catalogs/cluster_base/istio/values.py +158 -0
  20. ccluster/catalogs/cluster_base/keda/__init__.py +37 -0
  21. ccluster/catalogs/cluster_base/keda/values.py +74 -0
  22. ccluster/catalogs/cluster_base/kube_prometheus_stack/__init__.py +41 -0
  23. ccluster/catalogs/cluster_base/kube_prometheus_stack/values.py +124 -0
  24. ccluster/catalogs/cluster_base/longhorn/__init__.py +33 -0
  25. ccluster/catalogs/cluster_base/longhorn/values.py +46 -0
  26. ccluster/catalogs/cluster_base/metrics_server/__init__.py +33 -0
  27. ccluster/catalogs/cluster_base/metrics_server/values.py +50 -0
  28. ccluster/catalogs/cluster_base/network_operator/__init__.py +33 -0
  29. ccluster/catalogs/cluster_base/network_operator/values.py +50 -0
  30. ccluster/catalogs/cluster_base/opentelemetry_collector/__init__.py +35 -0
  31. ccluster/catalogs/cluster_base/opentelemetry_collector/values.py +78 -0
  32. ccluster/catalogs/cluster_base/prometheus_adapter/__init__.py +37 -0
  33. ccluster/catalogs/cluster_base/prometheus_adapter/values.py +75 -0
  34. ccluster/catalogs/cluster_base/spire/__init__.py +45 -0
  35. ccluster/catalogs/cluster_base/spire/values.py +155 -0
  36. ccluster/catalogs/cluster_base/spire_crds/__init__.py +33 -0
  37. ccluster/catalogs/cluster_base/spire_crds/values.py +50 -0
  38. ccluster/catalogs/cluster_base/teleport_kube_agent/__init__.py +37 -0
  39. ccluster/catalogs/cluster_base/teleport_kube_agent/values.py +125 -0
  40. ccluster/py.typed +0 -0
  41. ccluster/v1alpha1/__init__.py +47 -0
  42. ccluster/v1alpha1/cclcomponentset.py +269 -0
  43. ccluster/v1alpha1/cclinfraplane.py +222 -0
  44. ccluster_py-0.0.1.dist-info/METADATA +84 -0
  45. ccluster_py-0.0.1.dist-info/RECORD +46 -0
  46. ccluster_py-0.0.1.dist-info/WHEEL +4 -0
ccluster/__init__.py ADDED
@@ -0,0 +1,19 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ """Pydantic models for the ccluster.nvidia.com API and the catalog's chart values.
16
+
17
+ Everything under ccluster.v1alpha1 and ccluster.catalogs.cluster_base is generated by
18
+ `make python-generate` from the CRDs and the catalog's Go packages; see python/README.md.
19
+ """
@@ -0,0 +1,65 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ """The Helm chart catalog, as typed values.
16
+
17
+ Each chart under ccluster.catalogs.cluster_base has a Values model and a CHART path,
18
+ generated from the Go package beside the chart. entry() turns one of those into the
19
+ ComponentEntry fields of a CCLComponentSet component, as catalogs.Entry does in Go.
20
+ """
21
+
22
+ from typing import Any
23
+
24
+ from pydantic import BaseModel
25
+
26
+ from ccluster.v1alpha1 import ComponentSpec, LocalObjectReference
27
+
28
+ __all__ = ["component", "entry"]
29
+
30
+
31
+ def entry(chart: str, namespace: str, values: BaseModel | None) -> dict[str, Any]:
32
+ """Return the chart, namespace and values fields of a component.
33
+
34
+ values is dumped by alias with None fields left out, which is the shape Helm
35
+ expects and the shape the Go catalog produces. An empty result is dropped rather
36
+ than stored: the operator omits the Application's helm block when values is unset,
37
+ and an empty object would defeat that. The required values of a chart (only
38
+ teleport-kube-agent has any) are checked when its Values is constructed.
39
+ """
40
+ out: dict[str, Any] = {"chart": chart, "namespace": namespace}
41
+ if values is not None:
42
+ dumped = values.model_dump(by_alias=True, exclude_none=True)
43
+ if dumped:
44
+ out["values"] = dumped
45
+ return out
46
+
47
+
48
+ def component(
49
+ name: str,
50
+ infra_plane: str,
51
+ chart: str,
52
+ namespace: str,
53
+ values: BaseModel | None = None,
54
+ ) -> ComponentSpec:
55
+ """Build one CCLComponentSet component from a chart's typed values.
56
+
57
+ chart is the module's CHART constant. The component's name and the infra plane it
58
+ is deployed to are the caller's, as is the namespace it installs into: none of
59
+ those are facts about the chart.
60
+ """
61
+ return ComponentSpec(
62
+ name=name,
63
+ infra_plane_ref=LocalObjectReference(name=infra_plane),
64
+ **entry(chart, namespace, values),
65
+ )
@@ -0,0 +1,41 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ """The cluster_base catalog: one subpackage per chart, each with a Values
18
+ model and its CHART path."""
19
+
20
+ from . import argo_rollouts, cert_manager, external_dns, final_stack, fluent_bit, gpu_operator, ingress_nginx, istio, keda, kube_prometheus_stack, longhorn, metrics_server, network_operator, opentelemetry_collector, prometheus_adapter, spire, spire_crds, teleport_kube_agent
21
+
22
+ __all__ = [
23
+ "argo_rollouts",
24
+ "cert_manager",
25
+ "external_dns",
26
+ "final_stack",
27
+ "fluent_bit",
28
+ "gpu_operator",
29
+ "ingress_nginx",
30
+ "istio",
31
+ "keda",
32
+ "kube_prometheus_stack",
33
+ "longhorn",
34
+ "metrics_server",
35
+ "network_operator",
36
+ "opentelemetry_collector",
37
+ "prometheus_adapter",
38
+ "spire",
39
+ "spire_crds",
40
+ "teleport_kube_agent",
41
+ ]
@@ -0,0 +1,37 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ """Values of the catalogs/cluster_base/argo_rollouts chart, generated from its Go package."""
18
+
19
+ from typing import Final
20
+
21
+ from .values import (
22
+ ChartValues,
23
+ Controller,
24
+ Dashboard,
25
+ Values,
26
+ )
27
+
28
+ __all__ = [
29
+ "CHART",
30
+ "ChartValues",
31
+ "Controller",
32
+ "Dashboard",
33
+ "Values",
34
+ ]
35
+
36
+ # CHART is the chart's directory, relative to the root of the catalog repository.
37
+ CHART: Final = "catalogs/cluster_base/argo_rollouts"
@@ -0,0 +1,79 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ from __future__ import annotations
18
+
19
+ from typing import Annotated
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field
22
+
23
+
24
+ class Controller(BaseModel):
25
+ """
26
+ Controller configures the rollouts controller.
27
+ """
28
+
29
+ model_config = ConfigDict(
30
+ extra="forbid",
31
+ populate_by_name=True,
32
+ )
33
+ replicas: int | None = None
34
+ """
35
+ Replicas is the controller replica count. The chart ships 2.
36
+ """
37
+
38
+
39
+ class Dashboard(BaseModel):
40
+ """
41
+ Dashboard configures the rollouts dashboard.
42
+ """
43
+
44
+ model_config = ConfigDict(
45
+ extra="forbid",
46
+ populate_by_name=True,
47
+ )
48
+ enabled: bool | None = None
49
+ """
50
+ Enabled turns the dashboard on. The chart ships it off.
51
+ """
52
+
53
+
54
+ class ChartValues(BaseModel):
55
+ """
56
+ ChartValues are the upstream argo-rollouts values worth setting per cluster.
57
+ Anything not set here comes from catalogs/cluster_base/argo_rollouts/values.yaml.
58
+ """
59
+
60
+ model_config = ConfigDict(
61
+ extra="forbid",
62
+ populate_by_name=True,
63
+ )
64
+ controller: Controller | None = None
65
+ dashboard: Dashboard | None = None
66
+
67
+
68
+ class Values(BaseModel):
69
+ """
70
+ Values is the top-level values document for catalogs/cluster_base/argo_rollouts.
71
+ Its single key is the upstream chart's alias, because this chart wraps it as a
72
+ dependency — which is the only reason the nesting exists.
73
+ """
74
+
75
+ model_config = ConfigDict(
76
+ extra="forbid",
77
+ populate_by_name=True,
78
+ )
79
+ argo_rollouts: Annotated[ChartValues | None, Field(alias="argo-rollouts")] = None
@@ -0,0 +1,37 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ """Values of the catalogs/cluster_base/cert_manager chart, generated from its Go package."""
18
+
19
+ from typing import Final
20
+
21
+ from .values import (
22
+ ChartValues,
23
+ PrometheusValues,
24
+ Toggle,
25
+ Values,
26
+ )
27
+
28
+ __all__ = [
29
+ "CHART",
30
+ "ChartValues",
31
+ "PrometheusValues",
32
+ "Toggle",
33
+ "Values",
34
+ ]
35
+
36
+ # CHART is the chart's directory, relative to the root of the catalog repository.
37
+ CHART: Final = "catalogs/cluster_base/cert_manager"
@@ -0,0 +1,85 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ from __future__ import annotations
18
+
19
+ from typing import Annotated
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field
22
+
23
+
24
+ class Toggle(BaseModel):
25
+ """
26
+ Toggle is a subchart's enable flag.
27
+ """
28
+
29
+ model_config = ConfigDict(
30
+ extra="forbid",
31
+ populate_by_name=True,
32
+ )
33
+ enabled: bool | None = None
34
+ """
35
+ Enabled turns the feature on.
36
+ """
37
+
38
+
39
+ class PrometheusValues(BaseModel):
40
+ """
41
+ PrometheusValues configures cert-manager's metrics scraping.
42
+ """
43
+
44
+ model_config = ConfigDict(
45
+ extra="forbid",
46
+ populate_by_name=True,
47
+ )
48
+ enabled: bool | None = None
49
+ servicemonitor: Toggle | None = None
50
+ """
51
+ ServiceMonitor is spelled lower-case in this chart, unlike every other
52
+ chart in the catalog.
53
+ """
54
+
55
+
56
+ class ChartValues(BaseModel):
57
+ """
58
+ ChartValues are the upstream cert-manager values worth setting per cluster.
59
+ """
60
+
61
+ model_config = ConfigDict(
62
+ extra="forbid",
63
+ populate_by_name=True,
64
+ )
65
+ replica_count: Annotated[int | None, Field(alias="replicaCount")] = None
66
+ """
67
+ ReplicaCount is the controller replica count. The chart ships 2.
68
+ """
69
+ prometheus: PrometheusValues | None = None
70
+ """
71
+ Prometheus scraping is shipped off, because the ServiceMonitor CRD only
72
+ exists once kube-prometheus-stack is deployed. Enable it after that.
73
+ """
74
+
75
+
76
+ class Values(BaseModel):
77
+ """
78
+ Values is the top-level values document for catalogs/cluster_base/cert_manager.
79
+ """
80
+
81
+ model_config = ConfigDict(
82
+ extra="forbid",
83
+ populate_by_name=True,
84
+ )
85
+ cert_manager: Annotated[ChartValues | None, Field(alias="cert-manager")] = None
@@ -0,0 +1,39 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ """Values of the catalogs/cluster_base/external_dns chart, generated from its Go package."""
18
+
19
+ from typing import Final
20
+
21
+ from .values import (
22
+ ChartValues,
23
+ Provider,
24
+ ServiceAccount,
25
+ Toggle,
26
+ Values,
27
+ )
28
+
29
+ __all__ = [
30
+ "CHART",
31
+ "ChartValues",
32
+ "Provider",
33
+ "ServiceAccount",
34
+ "Toggle",
35
+ "Values",
36
+ ]
37
+
38
+ # CHART is the chart's directory, relative to the root of the catalog repository.
39
+ CHART: Final = "catalogs/cluster_base/external_dns"
@@ -0,0 +1,115 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ from __future__ import annotations
18
+
19
+ from typing import Annotated
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field
22
+
23
+
24
+ class Provider(BaseModel):
25
+ """
26
+ Provider is the DNS provider external-dns talks to.
27
+ """
28
+
29
+ model_config = ConfigDict(
30
+ extra="forbid",
31
+ populate_by_name=True,
32
+ )
33
+ name: str | None = None
34
+
35
+
36
+ class ServiceAccount(BaseModel):
37
+ """
38
+ ServiceAccount configures the identity external-dns runs as.
39
+ """
40
+
41
+ model_config = ConfigDict(
42
+ extra="forbid",
43
+ populate_by_name=True,
44
+ )
45
+ create: bool | None = None
46
+ """
47
+ Create is shipped true for standalone testing. Set it false and
48
+ pre-create the account, with IRSA for instance, in production.
49
+ """
50
+ name: str | None = None
51
+
52
+
53
+ class Toggle(BaseModel):
54
+ """
55
+ Toggle is a subchart's enable flag.
56
+ """
57
+
58
+ model_config = ConfigDict(
59
+ extra="forbid",
60
+ populate_by_name=True,
61
+ )
62
+ enabled: bool | None = None
63
+ """
64
+ Enabled turns the feature on.
65
+ """
66
+
67
+
68
+ class ChartValues(BaseModel):
69
+ """
70
+ ChartValues are the upstream external-dns values worth setting per cluster.
71
+ """
72
+
73
+ model_config = ConfigDict(
74
+ extra="forbid",
75
+ populate_by_name=True,
76
+ )
77
+ provider: Provider | None = None
78
+ """
79
+ Provider is the DNS provider. The chart ships aws; switch it and supply
80
+ the matching credentials through the service account.
81
+ """
82
+ domain_filters: Annotated[list[str] | None, Field(alias="domainFilters")] = None
83
+ """
84
+ DomainFilters constrains external-dns to these zones. Unset, it manages
85
+ every zone the credentials can reach.
86
+ """
87
+ txt_owner_id: Annotated[str | None, Field(alias="txtOwnerId")] = None
88
+ """
89
+ TxtOwnerID identifies this instance's TXT ownership records. Two
90
+ clusters sharing a zone must not share it.
91
+ """
92
+ extra_args: Annotated[list[str] | None, Field(alias="extraArgs")] = None
93
+ """
94
+ ExtraArgs is where --zone-id-filter goes to constrain Route53 changes
95
+ to a single hosted zone.
96
+ """
97
+ service_account: Annotated[ServiceAccount | None, Field(alias="serviceAccount")] = (
98
+ None
99
+ )
100
+ service_monitor: Annotated[Toggle | None, Field(alias="serviceMonitor")] = None
101
+ """
102
+ ServiceMonitor requires the kube-prometheus-stack CRDs.
103
+ """
104
+
105
+
106
+ class Values(BaseModel):
107
+ """
108
+ Values is the top-level values document for catalogs/cluster_base/external_dns.
109
+ """
110
+
111
+ model_config = ConfigDict(
112
+ extra="forbid",
113
+ populate_by_name=True,
114
+ )
115
+ external_dns: Annotated[ChartValues | None, Field(alias="external-dns")] = None
@@ -0,0 +1,31 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ """Values of the catalogs/cluster_base/final_stack chart, generated from its Go package."""
18
+
19
+ from typing import Final
20
+
21
+ from .values import (
22
+ Values,
23
+ )
24
+
25
+ __all__ = [
26
+ "CHART",
27
+ "Values",
28
+ ]
29
+
30
+ # CHART is the chart's directory, relative to the root of the catalog repository.
31
+ CHART: Final = "catalogs/cluster_base/final_stack"
@@ -0,0 +1,41 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ from __future__ import annotations
18
+
19
+ from pydantic import BaseModel, ConfigDict
20
+
21
+
22
+ class Values(BaseModel):
23
+ """
24
+ Values is the top-level values document for catalogs/cluster_base/final_stack.
25
+
26
+ It is empty, and that is a known gap rather than a chart with nothing to configure.
27
+ This chart wraps no upstream dependency and has no chart-level values: its templates
28
+ consume only .Values.global.cluster.domain, which every one of its five resources
29
+ interpolates — the cluster issuers, the OIDC discovery Ingress, and the four
30
+ ClusterSPIFFEIDs.
31
+
32
+ Global values are not modelled by this catalog yet. Until they are, this component
33
+ renders against the chart's own defaults and the resources it produces will carry
34
+ the placeholder domain, so a caller that needs a real one has to set
35
+ global.cluster.domain on the CCLComponentSet component's values by hand.
36
+ """
37
+
38
+ model_config = ConfigDict(
39
+ extra="forbid",
40
+ populate_by_name=True,
41
+ )
@@ -0,0 +1,37 @@
1
+ # Copyright 2026 NVIDIA CORPORATION & AFFILIATES.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Code generated by `make python-generate`. DO NOT EDIT.
16
+
17
+ """Values of the catalogs/cluster_base/fluent_bit chart, generated from its Go package."""
18
+
19
+ from typing import Final
20
+
21
+ from .values import (
22
+ ChartValues,
23
+ Config,
24
+ ServiceAccount,
25
+ Values,
26
+ )
27
+
28
+ __all__ = [
29
+ "CHART",
30
+ "ChartValues",
31
+ "Config",
32
+ "ServiceAccount",
33
+ "Values",
34
+ ]
35
+
36
+ # CHART is the chart's directory, relative to the root of the catalog repository.
37
+ CHART: Final = "catalogs/cluster_base/fluent_bit"