Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 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
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
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -425,7 +425,7 @@ E2E_STACK_VERSION ?= 9.1.2
# regexp to filter tests to run
export TESTS_MATCH ?= "^Test"
export E2E_JSON ?= false
TEST_TIMEOUT ?= 15m
TEST_TIMEOUT ?= 20m
E2E_SKIP_CLEANUP ?= false
E2E_DEPLOY_CHAOS_JOB ?= false
# go build constraints potentially restricting the tests to run
Expand Down
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.
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