Skip to content

Commit 564b45c

Browse files
authored
Merge branch 'main' into fix/operator-disable-prom-annotations-5043
2 parents 1ca314b + 8507a63 commit 564b45c

169 files changed

Lines changed: 5612 additions & 6336 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.chloggen/crds_wip.yaml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: enhancement
3+
4+
# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action)
5+
component: auto-instrumentation
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: Allow to run the mutating webhook using static configuration, without the need for CRDs.
9+
10+
# One or more tracking issues related to the change
11+
issues: [4201]
12+
13+
# (Optional) One or more lines of additional information to render under the primary note.
14+
# These lines will be padded with 2 spaces and then inserted directly into the document.
15+
# Use pipe (|) for multiline entries.
16+
subtext: |
17+
With this change, you can deploy the manager as a mutating webhook without setting up a v1alpha1.Instrumentation custom resource
18+
or the v1alpha1.Instrumentation CRD.
19+
20+
Instead, you can now set up instrumentation by configuring the manager via its config file with these settings:
21+
```yaml
22+
ignore-missing-collector-crds: true
23+
enable-instrumentation-crds: false # Ignore that the CRD is not registered.
24+
enable-multi-instrumentation: false
25+
instrumentations: # Static configuration for our instrumentation
26+
spec:
27+
exporter:
28+
endpoint: http://collector.default.svc:4318
29+
propagators:
30+
- tracecontext
31+
- baggage
32+
- b3
33+
java:
34+
image: "java-autoinstrumentation:dev"
35+
```
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2-
change_type: enhancement
2+
change_type: bug_fix
33

44
# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action)
5-
component: target allocator
5+
component: collector
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Introduce kustomizaton manifests for standalone deployment
8+
note: Remove unnecessary RBAC permissions from the events receiver.
99

1010
# One or more tracking issues related to the change
11-
issues: [4945]
11+
issues: [5073]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.
Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,16 @@
11
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2-
change_type: enhancement
2+
change_type: bug_fix
33

44
# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action)
5-
component: operator
5+
component: collector
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Split kubebuilder RBAC markers and restrict pod permissions to get/list/watch only
8+
note: Fix when configuring a gRPC port for the `jaeger_query` extension, the `collector-extension` Service only generates an HTTP port and is missing the gRPC port.
99

1010
# One or more tracking issues related to the change
11-
issues: [3156]
11+
issues: [4912]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.
1515
# Use pipe (|) for multiline entries.
16-
subtext: |
17-
The operator does not create, update, patch, or delete Pod objects directly;
18-
pods are managed by Deployment, DaemonSet, and StatefulSet controllers.
19-
Also reduced targetallocators/finalizers to only the `update` verb.
16+
subtext:
Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,17 @@
11
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2-
change_type: breaking
2+
change_type: bug_fix
33

44
# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action)
5-
component: auto-instrumentation
5+
component: collector
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Update default Java auto-instrumentation version from 1.33.6 to 2.27.0
8+
note: Explicitly set without_type_suffix, without_units, and without_scope_info to false on the operator-injected Prometheus telemetry reader.
99

1010
# One or more tracking issues related to the change
11-
issues: [4996]
11+
issues: [5075]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.
1515
# Use pipe (|) for multiline entries.
1616
subtext: |
17-
This is a breaking change due to HTTP semantic convention changes between versions.
18-
Existing Instrumentation CRs using a 1.x.x version will NOT be automatically upgraded.
19-
To upgrade, manually update the image in your Instrumentation CR after reviewing the migration guide.
20-
See https://github.com/open-telemetry/opentelemetry-operator/issues/2542 for details.
17+
Preserves historical metric names. Without this, users upgrading to a collector containing open-telemetry/opentelemetry-collector#15027 would see operator-managed collector metric names silently change shape. Added alpha feature gate operator.collector.usedefaulttelemetryshape (off by default) to opt into collector defaults instead. The gate will be promoted to beta (on by default) in a future release.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: breaking
3+
4+
# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action)
5+
component: api
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: Move config parsing and CRD metrics from apis to internal package
9+
10+
# One or more tracking issues related to the change
11+
issues: [4362]
12+
13+
# (Optional) One or more lines of additional information to render under the primary note.
14+
# These lines will be padded with 2 spaces and then inserted directly into the document.
15+
# Use pipe (|) for multiline entries.
16+
subtext: |
17+
- Methods on `*Config` (package `apis/v1beta1`) converted to standalone functions in `internal/otelconfig`, now taking `*v1beta1.Config` as the first parameter:
18+
- GetEnabledComponents, GetReceiverPorts, GetExporterPorts, GetExtensionPorts, GetReceiverAndExporterPorts, GetAllPorts, GetEnvironmentVariables, GetAllRbacRules, ApplyDefaults, GetLivenessProbe, GetReadinessProbe, GetStartupProbe, Yaml, NullObjects
19+
- Methods on `*Service` converted to functions in `internal/otelconfig`:
20+
- MetricsEndpoint, GetTelemetry
21+
- ApplyDefaults → renamed to ServiceApplyDefaults
22+
- Method on `*Telemetry` converted to function:
23+
- ToAnyConfig → renamed to TelemetryToAnyConfig
24+
- Functions moved from `apis/v1beta1` to `internal/metrics` with renames:
25+
- BootstrapMetrics → Bootstrap
26+
- NewMetrics(prv, ctx, cl) → New(ctx, prv, cl) (parameter reorder: ctx now first)
27+
- Types moved out of `apis/v1beta1`:
28+
- MetricsConfig, Telemetry → internal/otelconfig
29+
- Metrics → internal/metrics

.chloggen/secrets-access-namespaces.yaml

Lines changed: 0 additions & 13 deletions
This file was deleted.

.chloggen/fix_nginx-instrumentation-arguments.yaml renamed to .chloggen/skip-services-sidecar-mode.yaml

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,15 @@
22
change_type: bug_fix
33

44
# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action)
5-
component: auto-instrumentation
5+
component: collector
66

77
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8-
note: Validate `spec.apacheHttpd.configPath` and `spec.nginx.configFile` more strictly for Instrumentations
8+
note: Skip provisioning Services, Ingress, NetworkPolicy, and HPA for sidecar mode collectors since the operator does not control the Pod lifecycle in that mode. PodMonitors are still provisioned when metrics are enabled.
99

1010
# One or more tracking issues related to the change
11-
issues: [4925]
11+
issues: [4934]
1212

1313
# (Optional) One or more lines of additional information to render under the primary note.
1414
# These lines will be padded with 2 spaces and then inserted directly into the document.
1515
# Use pipe (|) for multiline entries.
16-
subtext: |
17-
Values from `Instrumentation.spec.apacheHttpd.configPath` and `Instrumentation.spec.nginx.configFile`
18-
are now passed to init container scripts as positional arguments instead of being concatenated into
19-
the shell command string, so they are no longer parsed by the shell. They're also restricted to usual Unix
20-
path characters and limited to 256 characters.
16+
subtext:

.github/dependabot.yml

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,5 @@
11
version: 2
22
updates:
3-
- package-ecosystem: gomod
4-
directory: /
5-
schedule:
6-
interval: weekly
7-
# Create a group of dependencies to be updated together in one pull request
8-
groups:
9-
golang-org-x:
10-
patterns:
11-
- "golang.org/x/*"
12-
prometheus:
13-
patterns:
14-
- "github.com/prometheus-operator/prometheus-operator"
15-
- "github.com/prometheus-operator/prometheus-operator/*"
16-
- "github.com/prometheus/prometheus"
17-
- "github.com/prometheus/prometheus/*"
18-
- "github.com/prometheus/client_go"
19-
- "github.com/prometheus/client_go/*"
20-
kubernetes:
21-
patterns:
22-
- "k8s.io/*"
23-
- "sigs.k8s.io/*"
24-
otel:
25-
patterns:
26-
- "go.opentelemetry.io/otel"
27-
- "go.opentelemetry.io/otel/*"
28-
293
- package-ecosystem: github-actions
304
directory: /
315
schedule:

.github/workflows/continuous-integration.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,15 +89,15 @@ jobs:
8989
go-version: "~1.26.3"
9090

9191
- name: Initialize CodeQL
92-
uses: github/codeql-action/init@68bde559dea0fdcac2102bfdf6230c5f70eb485e # v3.29.5
92+
uses: github/codeql-action/init@9e0d7b8d25671d64c341c19c0152d693099fb5ba # v3.29.5
9393
with:
9494
languages: go
9595

9696
- name: Autobuild
97-
uses: github/codeql-action/autobuild@68bde559dea0fdcac2102bfdf6230c5f70eb485e # v3.29.5
97+
uses: github/codeql-action/autobuild@9e0d7b8d25671d64c341c19c0152d693099fb5ba # v3.29.5
9898

9999
- name: Perform CodeQL Analysis
100-
uses: github/codeql-action/analyze@68bde559dea0fdcac2102bfdf6230c5f70eb485e # v3.29.5
100+
uses: github/codeql-action/analyze@9e0d7b8d25671d64c341c19c0152d693099fb5ba # v3.29.5
101101

102102
govulncheck:
103103
name: Govulncheck

.github/workflows/e2e-reusable.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ jobs:
7171
- e2e-autoscale
7272
- e2e-instrumentation-default
7373
- e2e-instrumentation
74+
- e2e-no-crds
7475
- e2e-opampbridge
7576
- e2e-pdb
7677
- e2e-prometheuscr
@@ -102,6 +103,8 @@ jobs:
102103
setup: "add-rbac-permissions-to-operator prepare-e2e"
103104
- group: e2e-ta-standalone
104105
setup: "prepare-e2e-ta-standalone"
106+
- group: e2e-no-crds
107+
setup: "prepare-e2e-no-crds"
105108

106109
steps:
107110
- name: Check out code into the Go module directory

0 commit comments

Comments
 (0)