Skip to content

Commit 48806c9

Browse files
authored
Merge branch 'main' into Fix-Prevent-mounting-secrets-to-collector-when-TA-is-not-deployed-and-mTLS-feature-gate-is-enabled
2 parents ce550b3 + f26a319 commit 48806c9

File tree

90 files changed

+23469
-577
lines changed

Some content is hidden

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

90 files changed

+23469
-577
lines changed

.chloggen/3350-ta-matchlabels.yaml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
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: target allocator
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: "Support camelcase matchLabels and matchExpressions in target allocator config"
9+
10+
# One or more tracking issues related to the change
11+
issues: [3350]
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:

.chloggen/feat_enable-ta-crd.yaml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: new_component
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: target allocator
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: Introduce TargetAllocator CRD
9+
10+
# One or more tracking issues related to the change
11+
issues: [2422]
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: See the [CRD changelog](./docs/crd-changelog.md) for more information.

.github/workflows/changelog.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
- name: Setup Go
3434
uses: actions/setup-go@v5
3535
with:
36-
go-version: "~1.23.4"
36+
go-version: "~1.23.5"
3737

3838
- name: Ensure no changes to the CHANGELOG
3939
run: |

.github/workflows/continuous-integration.yaml

+6-3
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
uses: actions/setup-go@v5
2323
id: setup-go
2424
with:
25-
go-version: "~1.23.4"
25+
go-version: "~1.23.5"
2626

2727
- name: Cache tools
2828
uses: actions/cache@v4
@@ -46,7 +46,7 @@ jobs:
4646
- name: Set up Go
4747
uses: actions/setup-go@v5
4848
with:
49-
go-version: "~1.23.4"
49+
go-version: "~1.23.5"
5050

5151
- name: Cache tools
5252
uses: actions/cache@v4
@@ -79,7 +79,7 @@ jobs:
7979
- name: Set up Go
8080
uses: actions/setup-go@v5
8181
with:
82-
go-version: "~1.23.4"
82+
go-version: "~1.23.5"
8383

8484
- name: Initialize CodeQL
8585
uses: github/codeql-action/init@v3
@@ -91,3 +91,6 @@ jobs:
9191

9292
- name: Perform CodeQL Analysis
9393
uses: github/codeql-action/analyze@v3
94+
95+
- name: Govulncheck
96+
uses: golang/govulncheck-action@v1

.github/workflows/e2e.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
uses: actions/setup-go@v5
6262
id: setup-go
6363
with:
64-
go-version: "~1.23.4"
64+
go-version: "~1.23.5"
6565
- name: Cache tools
6666
uses: actions/cache@v4
6767
with:

.github/workflows/release.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
- name: Set up Go
3737
uses: actions/setup-go@v5
3838
with:
39-
go-version: "~1.23.4"
39+
go-version: "~1.23.5"
4040

4141
- name: "generate release resources"
4242
run: make release-artifacts IMG_PREFIX="ghcr.io/open-telemetry/opentelemetry-operator" VERSION=${DESIRED_VERSION}

.github/workflows/scorecard.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
uses: actions/setup-go@v5
2727
id: setup-go
2828
with:
29-
go-version: "~1.23.4"
29+
go-version: "~1.23.5"
3030

3131
- name: Check out code into the Go module directory
3232
uses: actions/checkout@v4

.github/workflows/shellcheck.yaml

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: shellcheck
2+
on:
3+
push:
4+
branches:
5+
- main
6+
pull_request:
7+
permissions: {}
8+
9+
jobs:
10+
shellcheck:
11+
name: shellcheck
12+
runs-on: ubuntu-24.04
13+
env:
14+
VERSION: v0.10.0
15+
steps:
16+
- uses: actions/checkout@v4
17+
- name: shellcheck ci scripts
18+
uses: ludeeus/[email protected]
19+
env:
20+
SHELLCHECK_OPTS: -x -e SC2059 -e SC2086
21+
with:
22+
scandir: ".ci"
23+
severity: warning
24+
version: ${{ env.VERSION }}
25+
- name: shellcheck hack scripts
26+
uses: ludeeus/[email protected]
27+
env:
28+
SHELLCHECK_OPTS: -x -e SC2059 -e SC2086
29+
with:
30+
scandir: "hack"
31+
severity: warning
32+
version: ${{ env.VERSION }}

CHANGELOG.md

+23
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,29 @@
22

33
<!-- next version -->
44

5+
## 0.117.0
6+
7+
### 🛑 Breaking changes 🛑
8+
9+
- `target allocator`: change metric `opentelemetry_allocator_targets_remaining` type from counter to gauge (#3578)
10+
11+
### 💡 Enhancements 💡
12+
13+
- `auto-instrumentation`: add Python instrumentation of aiokafka, click (#3611)
14+
- `operator`: Add support for Kubernetes `1.32` (#3544)
15+
16+
### Components
17+
18+
* [OpenTelemetry Collector - v0.117.0](https://github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.117.0)
19+
* [OpenTelemetry Contrib - v0.117.0](https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.117.0)
20+
* [Java auto-instrumentation - v1.33.6](https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/tag/v1.33.6)
21+
* [.NET auto-instrumentation - v1.2.0](https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/releases/tag/v1.2.0)
22+
* [Node.JS - v0.53.0](https://github.com/open-telemetry/opentelemetry-js/releases/tag/experimental%2Fv0.53.0)
23+
* [Python - v0.50b0](https://github.com/open-telemetry/opentelemetry-python-contrib/releases/tag/v0.50b0)
24+
* [Go - v0.19.0-alpha](https://github.com/open-telemetry/opentelemetry-go-instrumentation/releases/tag/v0.19.0-alpha)
25+
* [ApacheHTTPD - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4)
26+
* [Nginx - 1.0.4](https://github.com/open-telemetry/opentelemetry-cpp-contrib/releases/tag/webserver%2Fv1.0.4)
27+
528
## 0.116.0
629

730
### 💡 Enhancements 💡

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Get CA certificates from alpine package repo
2-
FROM alpine:3.20 as certificates
2+
FROM alpine:3.21 as certificates
33

44
RUN apk --no-cache add ca-certificates
55

Makefile

+3-3
Original file line numberDiff line numberDiff line change
@@ -492,11 +492,11 @@ GOLANGCI_LINT ?= $(LOCALBIN)/golangci-lint
492492
CHAINSAW ?= $(LOCALBIN)/chainsaw
493493

494494
# renovate: datasource=go depName=sigs.k8s.io/kustomize/kustomize/v5
495-
KUSTOMIZE_VERSION ?= v5.5.0
495+
KUSTOMIZE_VERSION ?= v5.6.0
496496
# renovate: datasource=go depName=sigs.k8s.io/controller-tools/cmd/controller-gen
497-
CONTROLLER_TOOLS_VERSION ?= v0.17.0
497+
CONTROLLER_TOOLS_VERSION ?= v0.17.1
498498
# renovate: datasource=go depName=github.com/golangci/golangci-lint/cmd/golangci-lint
499-
GOLANGCI_LINT_VERSION ?= v1.63.3
499+
GOLANGCI_LINT_VERSION ?= v1.63.4
500500
# renovate: datasource=go depName=sigs.k8s.io/kind
501501
KIND_VERSION ?= v0.26.0
502502
# renovate: datasource=go depName=github.com/kyverno/chainsaw

PROJECT

+12
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,16 @@ resources:
4242
defaulting: true
4343
validation: true
4444
webhookVersion: v1
45+
- api:
46+
crdVersion: v1
47+
namespaced: true
48+
controller: true
49+
domain: opentelemetry.io
50+
kind: TargetAllocator
51+
path: github.com/open-telemetry/opentelemetry-operator/apis/v1alpha1
52+
version: v1alpha1
53+
webhooks:
54+
defaulting: true
55+
validation: true
56+
webhookVersion: v1
4557
version: "3"

README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -743,7 +743,7 @@ metadata:
743743
# this is just an example, you can create any resource attributes you need
744744
resource.opentelemetry.io/service.name: "my-service"
745745
resource.opentelemetry.io/service.version: "1.0.0"
746-
resource.opentelemetry.io/environment: "production"
746+
resource.opentelemetry.io/deployment.environment.name: "production"
747747
spec:
748748
containers:
749749
- name: main-container
@@ -810,7 +810,7 @@ Choose the first value found:
810810

811811
- `pod.annotation[resource.opentelemetry.io/service.name]`
812812
- `if (config[useLabelsForResourceAttributes]) pod.label[app.kubernetes.io/name]`
813-
- `k8s.depleyment.name`
813+
- `k8s.deployment.name`
814814
- `k8s.replicaset.name`
815815
- `k8s.statefulset.name`
816816
- `k8s.daemonset.name`
@@ -843,7 +843,7 @@ In addition to the [core responsibilities](https://github.com/open-telemetry/com
843843
Approvers ([@open-telemetry/operator-approvers](https://github.com/orgs/open-telemetry/teams/operator-approvers)):
844844

845845
- [Tyler Helmuth](https://github.com/TylerHelmuth), Honeycomb
846-
- [Yuri Oliveira Sa](https://github.com/yuriolisa), Red Hat
846+
- [Yuri Oliveira Sa](https://github.com/yuriolisa), OllyGarden
847847
- [Israel Blancas](https://github.com/iblancasa), Red Hat
848848

849849
Emeritus Approvers:

RELEASE.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Steps to release a new version of the OpenTelemetry Operator:
1111
> [!WARNING]
1212
> DO NOT BUMP JAVA PAST `1.X.X` AND DO NOT BUMP .NET PAST `1.2.0`. Upgrades past these versions will introduce breaking HTTP semantic convention changes.
1313
1. Check if the compatible OpenShift versions are updated in the `Makefile`.
14-
1. Update the bundle by running `make bundle VERSION=$VERSION`.
14+
1. Update the bundle by running `make bundle reset VERSION=$VERSION`.
1515
1. Change the compatibility matrix in the [compatibility doc](./docs/compatibility.md) file, using the OpenTelemetry Operator version to be released and the current latest Kubernetes version as the latest supported version. Remove the oldest entry.
1616
1. Update release schedule table, by moving the current release manager to the end of the table with updated release version.
1717
1. Add the changes to the changelog by running `make chlog-update VERSION=$VERSION`.
@@ -44,10 +44,10 @@ The operator should be released within a week after the [OpenTelemetry collector
4444

4545
| Version | Release manager |
4646
|----------|-----------------|
47-
| v0.117.0 | @iblancasa |
48-
| v0.118.0 | @frzifus |
49-
| v0.119.0 | @yuriolisa |
50-
| v0.120.0 | @pavolloffay |
51-
| v0.121.0 | @swiatekm |
47+
| v0.118.0 | @iblancasa |
48+
| v0.119.0 | @frzifus |
49+
| v0.120.0 | @yuriolisa |
50+
| v0.121.0 | @pavolloffay |
5251
| v0.122.0 | @TylerHelmuth |
5352
| v0.123.0 | @jaronoff97 |
53+
| v0.124.0 | @swiatekm |

apis/v1alpha1/targetallocator_types.go

+8-4
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,13 @@ func init() {
2424
SchemeBuilder.Register(&TargetAllocator{}, &TargetAllocatorList{})
2525
}
2626

27-
//+kubebuilder:object:root=true
28-
//+kubebuilder:storageversion
29-
//+kubebuilder:subresource:status
27+
// +kubebuilder:object:root=true
28+
// +kubebuilder:subresource:status
29+
// +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"
30+
// +kubebuilder:printcolumn:name="Image",type="string",JSONPath=".status.image"
31+
// +kubebuilder:printcolumn:name="Management",type="string",JSONPath=".spec.managementState",description="Management State"
32+
// +operator-sdk:csv:customresourcedefinitions:displayName="Target Allocator"
33+
// +operator-sdk:csv:customresourcedefinitions:resources={{Pod,v1},{Deployment,apps/v1},{ConfigMaps,v1},{Service,v1},{ServiceAccount,v1},{PodDisruptionBudget,policy/v1}}
3034

3135
// TargetAllocator is the Schema for the targetallocators API.
3236
type TargetAllocator struct {
@@ -37,7 +41,7 @@ type TargetAllocator struct {
3741
Status TargetAllocatorStatus `json:"status,omitempty"`
3842
}
3943

40-
//+kubebuilder:object:root=true
44+
// +kubebuilder:object:root=true
4145

4246
// TargetAllocatorList contains a list of TargetAllocator.
4347
type TargetAllocatorList struct {

apis/v1alpha1/targetallocator_webhook.go

+3-4
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,9 @@ var (
3535
_ admission.CustomDefaulter = &TargetAllocatorWebhook{}
3636
)
3737

38-
// TODO: Uncomment this webhook after enabling the TargetAllocator controller
39-
// //+kubebuilder:webhook:path=/mutate-opentelemetry-io-v1beta1-targetallocator,mutating=true,failurePolicy=fail,groups=opentelemetry.io,resources=targetallocators,verbs=create;update,versions=v1beta1,name=mtargetallocatorbeta.kb.io,sideEffects=none,admissionReviewVersions=v1
40-
// //+kubebuilder:webhook:verbs=create;update,path=/validate-opentelemetry-io-v1beta1-targetallocator,mutating=false,failurePolicy=fail,groups=opentelemetry.io,resources=targetallocators,versions=v1beta1,name=vtargetallocatorcreateupdatebeta.kb.io,sideEffects=none,admissionReviewVersions=v1
41-
// //+kubebuilder:webhook:verbs=delete,path=/validate-opentelemetry-io-v1beta1-targetallocator,mutating=false,failurePolicy=ignore,groups=opentelemetry.io,resources=targetallocators,versions=v1beta1,name=vtargetallocatordeletebeta.kb.io,sideEffects=none,admissionReviewVersions=v1
38+
// +kubebuilder:webhook:path=/mutate-opentelemetry-io-v1beta1-targetallocator,mutating=true,failurePolicy=fail,groups=opentelemetry.io,resources=targetallocators,verbs=create;update,versions=v1beta1,name=mtargetallocatorbeta.kb.io,sideEffects=none,admissionReviewVersions=v1
39+
// +kubebuilder:webhook:verbs=create;update,path=/validate-opentelemetry-io-v1beta1-targetallocator,mutating=false,failurePolicy=fail,groups=opentelemetry.io,resources=targetallocators,versions=v1beta1,name=vtargetallocatorcreateupdatebeta.kb.io,sideEffects=none,admissionReviewVersions=v1
40+
// +kubebuilder:webhook:verbs=delete,path=/validate-opentelemetry-io-v1beta1-targetallocator,mutating=false,failurePolicy=ignore,groups=opentelemetry.io,resources=targetallocators,versions=v1beta1,name=vtargetallocatordeletebeta.kb.io,sideEffects=none,admissionReviewVersions=v1
4241
// +kubebuilder:object:generate=false
4342

4443
type TargetAllocatorWebhook struct {

autoinstrumentation/java/version.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.11.0
1+
2.12.0

autoinstrumentation/python/requirements.txt

+2
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ opentelemetry-propagator-ot-trace==0.50b0
1515
opentelemetry-instrumentation-aio-pika==0.50b0
1616
opentelemetry-instrumentation-aiohttp-client==0.50b0
1717
opentelemetry-instrumentation-aiohttp-server==0.50b0
18+
opentelemetry-instrumentation-aiokafka==0.50.b0
1819
opentelemetry-instrumentation-aiopg==0.50b0
1920
opentelemetry-instrumentation-asgi==0.50b0
2021
opentelemetry-instrumentation-asyncio==0.50b0
@@ -25,6 +26,7 @@ opentelemetry-instrumentation-boto3sqs==0.50b0
2526
opentelemetry-instrumentation-botocore==0.50b0
2627
opentelemetry-instrumentation-cassandra==0.50b0
2728
opentelemetry-instrumentation-celery==0.50b0
29+
opentelemetry-instrumentation-click==0.50b0
2830
opentelemetry-instrumentation-confluent-kafka==0.50b0
2931
opentelemetry-instrumentation-dbapi==0.50b0
3032
opentelemetry-instrumentation-django==0.50b0

0 commit comments

Comments
 (0)