Skip to content

Commit 250b650

Browse files
authored
Merge pull request #7 from SAP/feat/otel
(WIP) feat: otel support for all metrics - removed dyntclient lite
2 parents dcb16dc + 2023474 commit 250b650

25 files changed

+396
-266
lines changed

Makefile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -343,14 +343,14 @@ crossplane-install:
343343

344344
# Install the Kubernetes provider using kubectl
345345
crossplane-provider-install:
346-
kubectl apply -f crossplane/provider.yaml -n $(CROSSPLANE_NAMESPACE)
346+
kubectl apply -f examples/crossplane/provider.yaml -n $(CROSSPLANE_NAMESPACE)
347347
kubectl wait --for=condition=Healthy provider/provider-helm --timeout=1m
348-
kubectl apply -f crossplane/provider-config.yaml -n $(CROSSPLANE_NAMESPACE)
348+
kubectl apply -f examples/crossplane/provider-config.yaml -n $(CROSSPLANE_NAMESPACE)
349349

350350

351351

352352
.PHONY: install-k8s-provider
353353

354354
.PHONY: helm-provider-sample
355355
crossplane-provider-sample:
356-
kubectl apply -f crossplane/release.yaml -n $(CROSSPLANE_NAMESPACE)
356+
kubectl apply -f examples/crossplane/release.yaml -n $(CROSSPLANE_NAMESPACE)

api/v1beta1/common_types.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package v1beta1
2+
3+
const (
4+
// StatusTrue indicates the metric resource is considered ready/active.
5+
StatusTrue = "True"
6+
// StatusFalse indicates the metric resource is not ready/active.
7+
StatusFalse = "False"
8+
)

examples/basic_metric.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ spec:
88
kind: Release
99
group: helm.crossplane.io
1010
version: v1beta1
11-
frequency: 1 # in minutes
11+
checkInterval: "1m" # in minutes
1212
---
1313
apiVersion: metrics.cloud.sap/v1alpha1
1414
kind: Metric
@@ -20,7 +20,7 @@ spec:
2020
kind: Pod
2121
group: ""
2222
version: v1
23-
frequency: 1 # in minutes
23+
checkInterval: "1m" # in minutes
2424
---
2525
#apiVersion: metrics.cloud.sap/v1alpha1
2626
#kind: Metric
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
apiVersion: helm.crossplane.io/v1beta1
2+
kind: ProviderConfig
3+
metadata:
4+
name: helm-provider
5+
spec:
6+
credentials:
7+
source: InjectedIdentity

examples/crossplane/provider.yaml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
apiVersion: pkg.crossplane.io/v1
2+
kind: Provider
3+
metadata:
4+
name: provider-helm
5+
spec:
6+
package: xpkg.upbound.io/crossplane-contrib/provider-helm:v0.17.0
7+
runtimeConfigRef:
8+
apiVersion: pkg.crossplane.io/v1beta1
9+
kind: DeploymentRuntimeConfig
10+
name: provider-helm
11+
---
12+
apiVersion: pkg.crossplane.io/v1beta1
13+
kind: DeploymentRuntimeConfig
14+
metadata:
15+
name: provider-helm
16+
spec:
17+
serviceAccountTemplate:
18+
metadata:
19+
name: provider-helm
20+
---
21+
apiVersion: rbac.authorization.k8s.io/v1
22+
kind: ClusterRoleBinding
23+
metadata:
24+
name: provider-helm-cluster-admin
25+
subjects:
26+
- kind: ServiceAccount
27+
name: provider-helm
28+
namespace: crossplane-system
29+
roleRef:
30+
kind: ClusterRole
31+
name: cluster-admin
32+
apiGroup: rbac.authorization.k8s.io
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
apiVersion: v1
2+
kind: Namespace
3+
metadata:
4+
name: wordpress2
5+
---
6+
apiVersion: helm.crossplane.io/v1beta1
7+
kind: Release
8+
metadata:
9+
name: wordpress-oci-example
10+
spec:
11+
# rollbackLimit: 3
12+
forProvider:
13+
chart:
14+
name: wordpress
15+
repository: "oci://localhost:5000/helm-charts"
16+
version: 15.2.5
17+
# pullSecretRef:
18+
# name: oci-creds
19+
# namespace: default
20+
# url: "oci://localhost:5000/helm-charts/wordpress:9.3.19"
21+
namespace: wordpress2
22+
# insecureSkipTLSVerify: true
23+
# skipCreateNamespace: true
24+
# wait: true
25+
# skipCRDs: true
26+
values:
27+
service:
28+
type: ClusterIP
29+
set:
30+
- name: param1
31+
value: value2
32+
# valuesFrom:
33+
# - configMapKeyRef:
34+
# key: values.yaml
35+
# name: default-vals
36+
# namespace: wordpress
37+
# optional: false
38+
# - secretKeyRef:
39+
# key: svalues.yaml
40+
# name: svals
41+
# namespace: wordpress
42+
# optional: false
43+
# connectionDetails:
44+
# - apiVersion: v1
45+
# kind: Service
46+
# name: wordpress-example
47+
# namespace: wordpress
48+
# fieldPath: spec.clusterIP
49+
# #fieldPath: status.loadBalancer.ingress[0].ip
50+
# toConnectionSecretKey: ip
51+
# - apiVersion: v1
52+
# kind: Service
53+
# name: wordpress-example
54+
# namespace: wordpress
55+
# fieldPath: spec.ports[0].port
56+
# toConnectionSecretKey: port
57+
# - apiVersion: v1
58+
# kind: Secret
59+
# name: wordpress-example
60+
# namespace: wordpress
61+
# fieldPath: data.wordpress-password
62+
# toConnectionSecretKey: password
63+
# - apiVersion: v1
64+
# kind: Secret
65+
# name: manual-api-secret
66+
# namespace: wordpress
67+
# fieldPath: data.api-key
68+
# toConnectionSecretKey: api-key
69+
# # this secret created manually (not via Helm chart), so skip 'part of helm release' check
70+
# skipPartOfReleaseCheck: true
71+
# writeConnectionSecretToRef:
72+
# name: wordpress-credentials
73+
# namespace: crossplane-system
74+
providerConfigRef:
75+
name: helm-provider

examples/crossplane/release.yaml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
apiVersion: helm.crossplane.io/v1beta1
2+
kind: Release
3+
metadata:
4+
name: wordpress-example
5+
spec:
6+
# rollbackLimit: 3
7+
forProvider:
8+
chart:
9+
name: wordpress
10+
repository: https://charts.bitnami.com/bitnami
11+
version: 15.2.5 ## To use development versions, set ">0.0.0-0"
12+
# pullSecretRef:
13+
# name: museum-creds
14+
# namespace: default
15+
# url: "https://charts.bitnami.com/bitnami/wordpress-9.3.19.tgz"
16+
namespace: wordpress
17+
# insecureSkipTLSVerify: true
18+
# skipCreateNamespace: true
19+
# wait: true
20+
# skipCRDs: true
21+
values:
22+
service:
23+
type: ClusterIP
24+
set:
25+
- name: param1
26+
value: value2
27+
# valuesFrom:
28+
# - configMapKeyRef:
29+
# key: values.yaml
30+
# name: default-vals
31+
# namespace: wordpress
32+
# optional: false
33+
# - secretKeyRef:
34+
# key: svalues.yaml
35+
# name: svals
36+
# namespace: wordpress
37+
# optional: false
38+
# connectionDetails:
39+
# - apiVersion: v1
40+
# kind: Service
41+
# name: wordpress-example
42+
# namespace: wordpress
43+
# fieldPath: spec.clusterIP
44+
# #fieldPath: status.loadBalancer.ingress[0].ip
45+
# toConnectionSecretKey: ip
46+
# - apiVersion: v1
47+
# kind: Service
48+
# name: wordpress-example
49+
# namespace: wordpress
50+
# fieldPath: spec.ports[0].port
51+
# toConnectionSecretKey: port
52+
# - apiVersion: v1
53+
# kind: Secret
54+
# name: wordpress-example
55+
# namespace: wordpress
56+
# fieldPath: data.wordpress-password
57+
# toConnectionSecretKey: password
58+
# - apiVersion: v1
59+
# kind: Secret
60+
# name: manual-api-secret
61+
# namespace: wordpress
62+
# fieldPath: data.api-key
63+
# toConnectionSecretKey: api-key
64+
# # this secret created manually (not via Helm chart), so skip 'part of helm release' check
65+
# skipPartOfReleaseCheck: true
66+
# writeConnectionSecretToRef:
67+
# name: wordpress-credentials
68+
# namespace: crossplane-system
69+
providerConfigRef:
70+
name: helm-provider

examples/dev-core/metric.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@ spec:
88
kind: LandscaperDeployment
99
group: landscaper-service.gardener.cloud
1010
version: v1alpha1
11-
frequency: 1 # in minutes
11+
checkInterval: "1m" # in minutes
1212
---

examples/fed-managed-resoruces/crossplane-managed.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
spec:
66
name: xfed-managed
77
description: crossplane managed resources
8-
frequency: 1 # in minutes
8+
checkInterval: "1m" # in minutes
99
federateCaRef:
1010
name: federate-ca-sample
1111
namespace: default

examples/federated-resources/crdsdeletion.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ spec:
1010
resource: customresourcedefinitions
1111
version: v1
1212
fieldSelector: "metadata.deletionTimestamp"
13-
frequency: 1 # in minutes
13+
checkInterval: "1m" # in minutes
1414
projections:
1515
- name: deletion
1616
fieldPath: "metadata.deletionTimestamp"

0 commit comments

Comments
 (0)