Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
3aa3bb0
feat: Add package registry to eck
tehbooom Aug 20, 2025
65e6240
fix: remove kibana ref in EPR
tehbooom Aug 21, 2025
7fba84c
fix: Add EPR rbac
tehbooom Aug 21, 2025
8867801
fix: Add e2e tests for epr and kb
tehbooom Aug 22, 2025
6e768be
docs: add examples for epr
tehbooom Aug 22, 2025
d384127
fix: linting
tehbooom Aug 22, 2025
7f0201e
fix: Set minimum version for EPR which is 7.15.1
tehbooom Aug 25, 2025
8eee0bf
fix: remove references to Maps Server
tehbooom Aug 25, 2025
ba2554c
test: increase timeout for e2e
tehbooom Aug 25, 2025
38b08a7
fix: Update the minimum supported version for EPR which is 7.15.1
tehbooom Aug 25, 2025
98d088d
test: revert test timeout
tehbooom Aug 25, 2025
9b194e9
test: increase timeout to allow for EPR container download
tehbooom Aug 26, 2025
14f0d5b
fix: Update receiver name
tehbooom Aug 26, 2025
7bb171d
fix: naming of functions to be idiomatic and remove reference to ENT
tehbooom Aug 26, 2025
93f7a98
fix: no longer needed since we do not have a service account
tehbooom Aug 26, 2025
189196f
fix: remove kibana association and service account
tehbooom Aug 26, 2025
15992b1
fix: remove maps reference
tehbooom Aug 26, 2025
edf499e
fix: remove kb association
tehbooom Aug 26, 2025
f1cf49b
fix: remove maps reference
tehbooom Aug 26, 2025
98f46d3
fix: remove maps reference
tehbooom Aug 26, 2025
5a5ffa7
fix: remove startup probe for readiness probe with increase threshold…
tehbooom Aug 26, 2025
ad302cc
fix: remove reference to maps
tehbooom Aug 26, 2025
d0832d8
fix: remove reference to maps
tehbooom Aug 26, 2025
9930938
fix: cleaner node extra ca logic and added godoc
tehbooom Aug 26, 2025
f83835a
fix: deep copy for epr
tehbooom Aug 26, 2025
7546698
fix: make generate
tehbooom Aug 26, 2025
a2518e5
fix: Add epr recipes
tehbooom Aug 27, 2025
ddde519
feat: add helm chart
tehbooom Aug 27, 2025
98fd558
fix: linting
tehbooom Aug 27, 2025
ddb2341
fix: Add epr chart
tehbooom Aug 27, 2025
662cb35
fix: Add missing EPR validation webhook to operator configuration
tehbooom Aug 28, 2025
c32755b
remove weird space
naemono Aug 28, 2025
4188021
Add missing permission in rbac roles in helm chart.
naemono Aug 28, 2025
7526c1f
fix: had ref for epr builder
tehbooom Aug 28, 2025
90e3b72
fix: add epr to operatorhub
tehbooom Aug 28, 2025
0d40318
fix: add epr to api-docs
tehbooom Aug 28, 2025
9a1a9f1
fix: make generate docs
tehbooom Aug 29, 2025
5ad2812
Merge remote-tracking branch 'origin/main' into epr
barkbay Sep 16, 2025
2923f91
fix unit tests
barkbay Sep 16, 2025
04d47cf
s/9.0.0/9.1.2
barkbay Sep 16, 2025
def340a
fix: remove references to kibana
tehbooom Sep 22, 2025
eb79598
fix: Remove unused function
tehbooom Sep 22, 2025
5293ffc
fix: label name
tehbooom Sep 22, 2025
5fa0acf
fix: remove beta
tehbooom Sep 22, 2025
275755a
fix: spelling
tehbooom Sep 22, 2025
bcf264f
fix: update function name
tehbooom Sep 22, 2025
8725575
test: use smaller container image during tests
tehbooom Sep 22, 2025
08a4b3c
Merge branch 'main' into epr
tehbooom Oct 17, 2025
e292b57
update wording in config/recipes/packageregistry/README.asciidoc
naemono Nov 12, 2025
7efdcba
remove extra space in pkg/apis/kibana/v1/kibana_types.go
naemono Nov 12, 2025
a40a4d8
update stack name in pkg/apis/kibana/v1/kibana_types.go
naemono Nov 12, 2025
71639c6
adjust casing in pkg/controller/packageregistry/controller.go
naemono Nov 12, 2025
f50c414
adjust more casing in pkg/controller/packageregistry/controller.go
naemono Nov 12, 2025
42e6fee
Default to using lite image.
naemono Nov 12, 2025
ea023ee
Full rename of GVK
naemono Nov 18, 2025
bd59618
fix type in e2e tests
naemono Nov 18, 2025
205b5aa
Fix deployment name in e2e tests
naemono Nov 19, 2025
1abb1bc
Fixing type const in epr
naemono Nov 20, 2025
49b1e56
fix ownerReferences with blockOwnerDeletion on OCP
naemono Nov 20, 2025
675bb66
use more restrictive seccontext by default
naemono Nov 20, 2025
7cbbbf9
removing runasuser/runasgroup
naemono Nov 20, 2025
e2e3b3d
Merge branch 'main' into epr
naemono Nov 24, 2025
7722d1d
bump epr stack chart to 0.18.0-snapshot
naemono Dec 8, 2025
73d8893
Update recipe readme
naemono Dec 11, 2025
051a66b
Update versions in recipe, and typo in notes.
naemono Dec 11, 2025
5f4b5f4
Merge branch 'main' into epr
pkoutsovasilis Dec 16, 2025
ae5ab1e
fix: do not support external EPRs
pkoutsovasilis Dec 16, 2025
7b698c9
fix: set RunAsUser for EPR pod on k8s
pkoutsovasilis Dec 16, 2025
f7fbd68
fix: make EPR version checks to be aligned with the other components
pkoutsovasilis Dec 16, 2025
5353a6c
chore: update versions in recipe
pkoutsovasilis Dec 16, 2025
ab93e3b
fix: TestNewPodSpec_CommandOverride unit-test
pkoutsovasilis Dec 16, 2025
dc2c52d
fix: epr ubi image fabrication
pkoutsovasilis Dec 17, 2025
d925de7
fix: minimum support version for epr
pkoutsovasilis Dec 17, 2025
a039013
fix: epr e2e tests broken by 42e6fee
pkoutsovasilis Dec 17, 2025
e5443a8
fix: revert kibana crd removal of secretName patch
pkoutsovasilis Dec 17, 2025
8f49e4f
fix: reuse context for buildConfigHash
pkoutsovasilis Dec 17, 2025
86e3954
fix: godocs for GetObservedGeneration and ObservedGeneration
pkoutsovasilis Dec 17, 2025
2acfc73
fix: comment about minimum epr version in controller_test.go
pkoutsovasilis Dec 17, 2025
4f4babb
fix: restructure epr labels to re-use them in api
pkoutsovasilis Dec 17, 2025
ab208be
fix: rework isOpenShift and determineSetDefaultSecurityContext to run…
pkoutsovasilis Dec 17, 2025
16da17c
fix: make generate
pkoutsovasilis Dec 17, 2025
23956b8
fix: epr labels in k8s_client.go
pkoutsovasilis Dec 17, 2025
8194dcf
fix: use RevisionHistoryLimit of epr spec in deployment reconciliation
pkoutsovasilis Dec 17, 2025
156599b
fix: do not set runAsUser and runAsNonRoot
pkoutsovasilis Dec 18, 2025
ffe048a
fix: use default HTTPPort const in EPR_ADDRESS env var
pkoutsovasilis Dec 18, 2025
8122e2f
fix: remove redundant e2e test
pkoutsovasilis Dec 18, 2025
a50bd10
fix: introduce getPackageRegistryImage with UBI version fallback support
pkoutsovasilis Dec 18, 2025
f3873d4
fix: typo in controller_test.go
pkoutsovasilis Dec 19, 2025
8cb1707
fix: use httpCertificate returned from the reconciliation of ca and h…
pkoutsovasilis Dec 19, 2025
db19f28
fix: suffix issue for ubi supported versions
pkoutsovasilis Dec 19, 2025
51b5002
fix: replace allowed with supported
pkoutsovasilis Dec 22, 2025
5554283
fix: introduce env var assert helper funcs
pkoutsovasilis Dec 22, 2025
edfe254
fix: configRef takes precedence unit-test
pkoutsovasilis Dec 22, 2025
0d62dd7
fix: remove irrelevant version override for epr
pkoutsovasilis Dec 22, 2025
052f567
fix: reword code comment for epr
pkoutsovasilis Dec 22, 2025
7be6b69
fix: handle -SNAPSHOT suffixed versions in epr builder
pkoutsovasilis Dec 22, 2025
11bb07b
fix: check for package-registry association warning
pkoutsovasilis Dec 22, 2025
2f50bd9
fix: remove redundant unit-test
pkoutsovasilis Dec 22, 2025
57cf701
fix: properly handle status in package registry reconciliation
pkoutsovasilis Dec 22, 2025
78829aa
fix: check that epr.Status.ObservedGeneration matches b.EPR.Generation
pkoutsovasilis Dec 22, 2025
c8ffc21
fix: change TEST_TIMEOUT back to 15m
pkoutsovasilis Dec 22, 2025
25d4716
fix: TestWithEPRCertsVolume unit-test
pkoutsovasilis Dec 22, 2025
2dc4548
fix: re-introduce build tags for kibana association e2e tests
pkoutsovasilis Dec 22, 2025
14229ec
fix: make comment about ubi-based images more explicit
pkoutsovasilis Dec 22, 2025
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
6 changes: 6 additions & 0 deletions cmd/manager/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ import (
kbv1beta1 "github.com/elastic/cloud-on-k8s/v3/pkg/apis/kibana/v1beta1"
logstashv1alpha1 "github.com/elastic/cloud-on-k8s/v3/pkg/apis/logstash/v1alpha1"
emsv1alpha1 "github.com/elastic/cloud-on-k8s/v3/pkg/apis/maps/v1alpha1"
eprv1alpha1 "github.com/elastic/cloud-on-k8s/v3/pkg/apis/packageregistry/v1alpha1"
policyv1alpha1 "github.com/elastic/cloud-on-k8s/v3/pkg/apis/stackconfigpolicy/v1alpha1"
"github.com/elastic/cloud-on-k8s/v3/pkg/controller/agent"
"github.com/elastic/cloud-on-k8s/v3/pkg/controller/apmserver"
Expand Down Expand Up @@ -84,6 +85,7 @@ import (
"github.com/elastic/cloud-on-k8s/v3/pkg/controller/logstash"
lsvalidation "github.com/elastic/cloud-on-k8s/v3/pkg/controller/logstash/validation"
"github.com/elastic/cloud-on-k8s/v3/pkg/controller/maps"
"github.com/elastic/cloud-on-k8s/v3/pkg/controller/packageregistry"
"github.com/elastic/cloud-on-k8s/v3/pkg/controller/remotecluster"
"github.com/elastic/cloud-on-k8s/v3/pkg/controller/stackconfigpolicy"
"github.com/elastic/cloud-on-k8s/v3/pkg/controller/webhook"
Expand Down Expand Up @@ -914,6 +916,7 @@ func registerControllers(mgr manager.Manager, params operator.Parameters, access
{name: "LicenseTrial", registerFunc: licensetrial.Add},
{name: "Agent", registerFunc: agent.Add},
{name: "Maps", registerFunc: maps.Add},
{name: "PackageRegistry", registerFunc: packageregistry.Add},
{name: "StackConfigPolicy", registerFunc: stackconfigpolicy.Add},
{name: "Logstash", registerFunc: logstash.Add},
}
Expand All @@ -934,6 +937,7 @@ func registerControllers(mgr manager.Manager, params operator.Parameters, access
{name: "APM-KB", registerFunc: associationctl.AddApmKibana},
{name: "KB-ES", registerFunc: associationctl.AddKibanaES},
{name: "KB-ENT", registerFunc: associationctl.AddKibanaEnt},
{name: "KB-EPR", registerFunc: associationctl.AddKibanaEPR},
{name: "ENT-ES", registerFunc: associationctl.AddEntES},
{name: "BEAT-ES", registerFunc: associationctl.AddBeatES},
{name: "BEAT-KB", registerFunc: associationctl.AddBeatKibana},
Expand Down Expand Up @@ -993,6 +997,7 @@ func garbageCollectSoftOwnedSecrets(ctx context.Context, k8sClient k8s.Client) {
beatv1beta1.Kind: &beatv1beta1.Beat{},
agentv1alpha1.Kind: &agentv1alpha1.Agent{},
emsv1alpha1.Kind: &emsv1alpha1.ElasticMapsServer{},
eprv1alpha1.Kind: &eprv1alpha1.PackageRegistry{},
policyv1alpha1.Kind: &policyv1alpha1.StackConfigPolicy{},
logstashv1alpha1.Kind: &logstashv1alpha1.Logstash{},
}); err != nil {
Expand Down Expand Up @@ -1037,6 +1042,7 @@ func setupWebhook(
&kbv1.Kibana{},
&kbv1beta1.Kibana{},
&emsv1alpha1.ElasticMapsServer{},
&eprv1alpha1.PackageRegistry{},
&policyv1alpha1.StackConfigPolicy{},
}
for _, obj := range webhookObjects {
Expand Down
595 changes: 595 additions & 0 deletions config/crds/v1/all-crds.yaml

Large diffs are not rendered by default.

7 changes: 7 additions & 0 deletions config/crds/v1/patches/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -77,5 +77,12 @@ patches:
kind: CustomResourceDefinition
name: logstashes.logstash.k8s.elastic.co
path: logstash-patches.yaml
# custom patches for PackageRegistry
- target:
group: apiextensions.k8s.io
version: v1
kind: CustomResourceDefinition
name: packageregistries.packageregistry.k8s.elastic.co
path: packageregistry-patches.yaml


7 changes: 7 additions & 0 deletions config/crds/v1/patches/packageregistry-patches.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Using `kubectl apply` stores the complete CRD file as an annotation,
# which may be too big for the annotations size limit.
# One way to mitigate this problem is to remove the (huge) podTemplate properties from the CRD.
# It also avoids the problem of having any k8s-version specific field in the Pod schema,
# that would maybe not match the user's k8s version.
- op: remove
path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/podTemplate/properties
35 changes: 35 additions & 0 deletions config/crds/v1/resources/kibana.k8s.elastic.co_kibanas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -639,6 +639,37 @@ spec:
type: array
type: object
type: object
packageRegistryRef:
description: PackageRegistryRef is a reference to an Elastic Package
Registry running in the same Kubernetes cluster.
properties:
name:
description: Name of an existing Kubernetes object corresponding
to an Elastic resource managed by ECK.
type: string
namespace:
description: Namespace of the Kubernetes object. If empty, defaults
to the current namespace.
type: string
secretName:
description: |-
SecretName is the name of an existing Kubernetes secret that contains connection information for associating an
Elastic resource not managed by the operator.
The referenced secret must contain the following:
- `url`: the URL to reach the Elastic resource
- `username`: the username of the user to be authenticated to the Elastic resource
- `password`: the password of the user to be authenticated to the Elastic resource
- `ca.crt`: the CA certificate in PEM format (optional)
- `api-key`: the key to authenticate against the Elastic resource instead of a username and password (supported only for `elasticsearchRefs` in AgentSpec and in BeatSpec)
This field cannot be used in combination with the other fields name, namespace or serviceName.
type: string
serviceName:
description: |-
ServiceName is the name of an existing Kubernetes service which is used to make requests to the referenced
object. It has to be in the same namespace as the referenced resource. If left empty, the default HTTP service of
the referenced resource is used.
Comment thread
naemono marked this conversation as resolved.
type: string
type: object
podTemplate:
description: PodTemplate provides customisation options (labels, annotations,
affinity rules, resource requests, and so on) for the Kibana pods
Expand Down Expand Up @@ -9183,6 +9214,10 @@ spec:
controller has not yet processed the changes contained in the Kibana specification.
format: int64
type: integer
packageRegistryAssociationStatus:
description: PackageRegistryAssociationStatus is the status of any
auto-linking to Elastic Package Registry.
type: string
selector:
description: Selector is the label selector used to find all pods.
type: string
Expand Down
1 change: 1 addition & 0 deletions config/crds/v1/resources/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,6 @@ resources:
- beat.k8s.elastic.co_beats.yaml
- agent.k8s.elastic.co_agents.yaml
- maps.k8s.elastic.co_elasticmapsservers.yaml
- packageregistry.k8s.elastic.co_packageregistries.yaml
- stackconfigpolicy.k8s.elastic.co_stackconfigpolicies.yaml
- logstash.k8s.elastic.co_logstashes.yaml
Loading