Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM registry.access.redhat.com/ubi9/go-toolset:1.25.7-1772728670 AS builder
FROM registry.access.redhat.com/ubi9/go-toolset:1.25.8-1775724628 AS builder
USER 0
ENV GOSUMDB=off

Expand Down Expand Up @@ -30,7 +30,7 @@ RUN CGO_ENABLED=1 GOOS=linux GO111MODULE=on go build -o manager main.go

# Use distroless as minimal base image to package the manager binary
# Refer to https://github.com/GoogleContainerTools/distroless for more details
FROM registry.access.redhat.com/ubi9/ubi-minimal:9.7-1773939694
FROM registry.access.redhat.com/ubi9/ubi-minimal:9.7-1775623882
WORKDIR /
COPY --from=builder /workspace/manager .
COPY --from=builder /workspace/manifest.yaml .
Expand Down
2 changes: 1 addition & 1 deletion config/crd/bases/cloud.redhat.com_clowdapprefs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.20.0
controller-gen.kubebuilder.io/version: v0.20.1
name: clowdapprefs.cloud.redhat.com
spec:
group: cloud.redhat.com
Expand Down
50 changes: 43 additions & 7 deletions config/crd/bases/cloud.redhat.com_clowdapps.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.20.0
controller-gen.kubebuilder.io/version: v0.20.1
name: clowdapps.cloud.redhat.com
spec:
group: cloud.redhat.com
Expand Down Expand Up @@ -227,8 +227,8 @@ spec:
and scale-down and scale-up tolerances of 5% and 1% respectively, scaling will be
triggered when the actual consumption falls below 95Mi or exceeds 101Mi.

This is an alpha field and requires enabling the HPAConfigurableTolerance
feature gate.
This is an beta field and requires the HPAConfigurableTolerance feature
gate to be enabled.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
Expand Down Expand Up @@ -303,8 +303,8 @@ spec:
and scale-down and scale-up tolerances of 5% and 1% respectively, scaling will be
triggered when the actual consumption falls below 95Mi or exceeds 101Mi.

This is an alpha field and requires enabling the HPAConfigurableTolerance
feature gate.
This is an beta field and requires the HPAConfigurableTolerance feature
gate to be enabled.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
Expand Down Expand Up @@ -2296,7 +2296,7 @@ spec:
resources:
description: |-
resources represents the minimum resources the volume should have.
If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
Users are allowed to specify resource requirements
that are lower than previous value but must still be higher than capacity recorded in the
status field of the claim.
More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
Expand Down Expand Up @@ -3187,6 +3187,24 @@ spec:
description: Kubelet's generated CSRs
will be addressed to this signer.
type: string
userAnnotations:
additionalProperties:
type: string
description: |-
userAnnotations allow pod authors to pass additional information to
the signer implementation. Kubernetes does not restrict or validate this
metadata in any way.

These values are copied verbatim into the `spec.unverifiedUserAnnotations` field of
the PodCertificateRequest objects that Kubelet creates.

Entries are subject to the same validation as object metadata annotations,
with the addition that all keys must be domain-prefixed. No restrictions
are placed on values, except an overall size limitation on the entire field.

Signers should document the keys and values they support. Signers should
deny requests that contain keys they do not recognize.
type: object
required:
- keyType
- signerName
Expand Down Expand Up @@ -5561,7 +5579,7 @@ spec:
resources:
description: |-
resources represents the minimum resources the volume should have.
If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements
Users are allowed to specify resource requirements
that are lower than previous value but must still be higher than capacity recorded in the
status field of the claim.
More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
Expand Down Expand Up @@ -6452,6 +6470,24 @@ spec:
description: Kubelet's generated CSRs
will be addressed to this signer.
type: string
userAnnotations:
additionalProperties:
type: string
description: |-
userAnnotations allow pod authors to pass additional information to
the signer implementation. Kubernetes does not restrict or validate this
metadata in any way.

These values are copied verbatim into the `spec.unverifiedUserAnnotations` field of
the PodCertificateRequest objects that Kubelet creates.

Entries are subject to the same validation as object metadata annotations,
with the addition that all keys must be domain-prefixed. No restrictions
are placed on values, except an overall size limitation on the entire field.

Signers should document the keys and values they support. Signers should
deny requests that contain keys they do not recognize.
type: object
required:
- keyType
- signerName
Expand Down
6 changes: 4 additions & 2 deletions config/crd/bases/cloud.redhat.com_clowdenvironments.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.20.0
controller-gen.kubebuilder.io/version: v0.20.1
name: clowdenvironments.cloud.redhat.com
spec:
group: cloud.redhat.com
Expand Down Expand Up @@ -207,8 +207,10 @@ spec:
description: JVM Options
properties:
-XX:
additionalProperties:
type: string
description: A map of -XX options to the JVM.
x-kubernetes-preserve-unknown-fields: true
type: object
-Xms:
description: -Xms option to to the JVM.
type: string
Expand Down
2 changes: 1 addition & 1 deletion config/crd/bases/cloud.redhat.com_clowdjobinvocations.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.20.0
controller-gen.kubebuilder.io/version: v0.20.1
name: clowdjobinvocations.cloud.redhat.com
spec:
group: cloud.redhat.com
Expand Down
3 changes: 2 additions & 1 deletion controllers/cloud.redhat.com/clowderconfig/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"encoding/json"
"fmt"
"os"
"path/filepath"
)

// ClowderConfig is the struct for the Clowder config.
Expand Down Expand Up @@ -72,7 +73,7 @@ func getConfig() ClowderConfig {

fmt.Printf("Loading config from: %s\n", configPath)

jsonData, err := os.ReadFile(configPath)
jsonData, err := os.ReadFile(filepath.Clean(configPath))

if err != nil {
fmt.Printf("Config file not found\n")
Expand Down
27 changes: 11 additions & 16 deletions controllers/cloud.redhat.com/providers/kafka/strimzi.go
Original file line number Diff line number Diff line change
Expand Up @@ -296,13 +296,8 @@ func (s *strimziProvider) configureKafkaCluster() error {
kafLimits = *s.Env.Spec.Providers.Kafka.Cluster.Resources.Limits
}

var klabels apiextensions.JSON

err = klabels.UnmarshalJSON([]byte(`{
"service" : "strimziKafka"
}`))
if err != nil {
return fmt.Errorf("could not unmarshal klabels: %w", err)
klabels := map[string]string{
"service": "strimziKafka",
}

var useFinalizersEnv []strimzi.KafkaSpecEntityOperatorTemplateTopicOperatorContainerEnvElem
Expand All @@ -327,26 +322,26 @@ func (s *strimziProvider) configureKafkaCluster() error {
Kafka: strimzi.KafkaSpecKafka{
Config: &kafConfig,
Version: &version,
Replicas: replicas,
Replicas: &replicas,
Resources: &strimzi.KafkaSpecKafkaResources{
Requests: &kafRequests,
Limits: &kafLimits,
},
Template: &strimzi.KafkaSpecKafkaTemplate{
PerPodService: &strimzi.KafkaSpecKafkaTemplatePerPodService{
Metadata: &strimzi.KafkaSpecKafkaTemplatePerPodServiceMetadata{
Labels: &klabels,
Labels: klabels,
},
},
Pod: &strimzi.KafkaSpecKafkaTemplatePod{
ImagePullSecrets: []strimzi.KafkaSpecKafkaTemplatePodImagePullSecretsElem{},
Metadata: &strimzi.KafkaSpecKafkaTemplatePodMetadata{
Labels: &klabels,
Labels: klabels,
},
},
},
},
Zookeeper: strimzi.KafkaSpecZookeeper{
Zookeeper: &strimzi.KafkaSpecZookeeper{
Replicas: replicas,
Resources: &strimzi.KafkaSpecZookeeperResources{
Requests: &zRequests,
Expand All @@ -355,13 +350,13 @@ func (s *strimziProvider) configureKafkaCluster() error {
Template: &strimzi.KafkaSpecZookeeperTemplate{
NodesService: &strimzi.KafkaSpecZookeeperTemplateNodesService{
Metadata: &strimzi.KafkaSpecZookeeperTemplateNodesServiceMetadata{
Labels: &klabels,
Labels: klabels,
},
},
Pod: &strimzi.KafkaSpecZookeeperTemplatePod{
ImagePullSecrets: []strimzi.KafkaSpecZookeeperTemplatePodImagePullSecretsElem{},
Metadata: &strimzi.KafkaSpecZookeeperTemplatePodMetadata{
Labels: &klabels,
Labels: klabels,
},
},
},
Expand All @@ -370,7 +365,7 @@ func (s *strimziProvider) configureKafkaCluster() error {
Template: &strimzi.KafkaSpecEntityOperatorTemplate{
Pod: &strimzi.KafkaSpecEntityOperatorTemplatePod{
Metadata: &strimzi.KafkaSpecEntityOperatorTemplatePodMetadata{
Labels: &klabels,
Labels: klabels,
},
ImagePullSecrets: []strimzi.KafkaSpecEntityOperatorTemplatePodImagePullSecretsElem{},
},
Expand Down Expand Up @@ -477,7 +472,7 @@ func (s *strimziProvider) configureKafkaCluster() error {
}

if s.Env.Spec.Providers.Kafka.PVC {
k.Spec.Kafka.Storage = strimzi.KafkaSpecKafkaStorage{
k.Spec.Kafka.Storage = &strimzi.KafkaSpecKafkaStorage{
Type: strimzi.KafkaSpecKafkaStorageTypePersistentClaim,
Size: &storageSize,
DeleteClaim: &deleteClaim,
Expand All @@ -502,7 +497,7 @@ func (s *strimziProvider) configureKafkaCluster() error {
DeleteClaim: &deleteClaim,
}
} else {
k.Spec.Kafka.Storage = strimzi.KafkaSpecKafkaStorage{
k.Spec.Kafka.Storage = &strimzi.KafkaSpecKafkaStorage{
Type: strimzi.KafkaSpecKafkaStorageTypeEphemeral,
}
k.Spec.Zookeeper.Storage = strimzi.KafkaSpecZookeeperStorage{
Expand Down
2 changes: 1 addition & 1 deletion controllers/cloud.redhat.com/version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v0.100.0-413-g1904f7a8
v0.100.0-434-geb3a4bf6
45 changes: 18 additions & 27 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,31 +1,31 @@
module github.com/RedHatInsights/clowder

go 1.25.7
go 1.25.8

require (
github.com/RedHatInsights/crc-caddy-plugin v0.7.2
github.com/RedHatInsights/cyndi-operator v0.1.13
github.com/RedHatInsights/go-difflib v1.0.0
github.com/RedHatInsights/rhc-osdk-utils v0.14.0
github.com/RedHatInsights/strimzi-client-go v0.38.0
github.com/RedHatInsights/rhc-osdk-utils v0.15.1
github.com/RedHatInsights/strimzi-client-go v0.40.0
github.com/caddyserver/caddy/v2 v2.11.2
github.com/cert-manager/cert-manager v1.20.0
github.com/cert-manager/cert-manager v1.20.1
github.com/go-logr/logr v1.4.3
github.com/go-logr/zapr v1.3.0
github.com/kedacore/keda/v2 v2.19.0
github.com/lib/pq v1.12.0
github.com/minio/minio-go/v7 v7.0.99
github.com/lib/pq v1.12.3
github.com/minio/minio-go/v7 v7.0.100
github.com/onsi/ginkgo/v2 v2.28.1
github.com/onsi/gomega v1.39.1
github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.90.0
github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.90.1
github.com/prometheus/client_golang v1.23.2
github.com/stretchr/testify v1.11.1
go.uber.org/zap v1.27.1
k8s.io/api v0.35.3
k8s.io/apiextensions-apiserver v0.35.3
k8s.io/apimachinery v0.36.0-alpha.2
k8s.io/client-go v11.0.0+incompatible
sigs.k8s.io/cluster-api v1.12.4
k8s.io/client-go v1.5.2
sigs.k8s.io/cluster-api v1.12.5
sigs.k8s.io/controller-runtime v0.23.3
)

Expand Down Expand Up @@ -71,8 +71,8 @@ require (
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
github.com/go-errors/errors v1.5.1 // indirect
github.com/go-ini/ini v1.67.1 // indirect
github.com/go-jose/go-jose/v3 v3.0.4 // indirect
github.com/go-jose/go-jose/v4 v4.1.3 // indirect
github.com/go-jose/go-jose/v3 v3.0.5 // indirect
github.com/go-jose/go-jose/v4 v4.1.4 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-openapi/jsonpointer v0.22.5 // indirect
github.com/go-openapi/jsonreference v0.21.5 // indirect
Expand Down Expand Up @@ -142,16 +142,15 @@ require (
github.com/quic-go/qpack v0.6.0 // indirect
github.com/quic-go/quic-go v0.59.0 // indirect
github.com/redhatinsights/crcauthlib v0.6.0 // indirect
github.com/redhatinsights/platform-go-middlewares v0.20.0 // indirect
github.com/redhatinsights/platform-go-middlewares/v2 v2.0.0 // indirect
github.com/redhatinsights/platform-go-middlewares/v2 v2.1.0 // indirect
github.com/rs/xid v1.6.0 // indirect
github.com/russross/blackfriday/v2 v2.1.0 // indirect
github.com/sergi/go-diff v1.4.0 // indirect
github.com/shopspring/decimal v1.4.0 // indirect
github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect
github.com/sirupsen/logrus v1.9.4 // indirect
github.com/slackhq/nebula v1.10.3 // indirect
github.com/smallstep/certificates v0.30.1 // indirect
github.com/smallstep/certificates v0.30.2 // indirect
github.com/smallstep/cli-utils v0.12.2 // indirect
github.com/smallstep/linkedca v0.25.0 // indirect
github.com/smallstep/nosql v0.8.0 // indirect
Expand Down Expand Up @@ -230,16 +229,8 @@ tool (
sigs.k8s.io/kustomize/kustomize/v5
)

replace k8s.io/api => k8s.io/api v0.35.3

replace k8s.io/apimachinery => k8s.io/apimachinery v0.35.3

replace k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.35.3

replace k8s.io/client-go => k8s.io/client-go v0.35.3

replace sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.22.4

replace knative.dev/pkg => knative.dev/pkg v0.0.0-20260319144801-8c68e18a5cc7

replace github.com/go-ini/ini => gopkg.in/ini.v1 v1.67.1
replace (
github.com/go-ini/ini => gopkg.in/ini.v1 v1.67.1
k8s.io/client-go => k8s.io/client-go v0.35.3
sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.22.4
)
Loading
Loading