Skip to content

Commit 4f3d426

Browse files
rebecca-freiburgcesmarvin
authored andcommitted
Merge branch 'release/v3.0.1'
2 parents 8e0a4dc + 086424d commit 4f3d426

12 files changed

Lines changed: 93 additions & 32 deletions

File tree

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
66

77
## [Unreleased]
88

9+
## [v3.0.1] - 2026-03-06
10+
11+
### Security
12+
- [#49] Fix Go stdlib CVE-2025-68121
13+
- Update `k8s-component-operator` to `1.12.1`
14+
- Update `alpine/kubectl` to `1.35.2`
15+
916
## [v3.0.0] - 2026-01-30
1017

1118
** BREAKING CHANGES **

Jenkinsfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ currentBranch = "${env.BRANCH_NAME}"
1919
registryNamespace = "k8s"
2020
registryUrl = "registry.cloudogu.com"
2121

22-
goVersion = "1.25.1"
22+
goVersion = "1.26.0"
2323
helmTargetDir = "target/k8s"
2424
helmChartDir = "${helmTargetDir}/helm"
2525

Makefile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,12 @@
22
ARTIFACT_ID=ecosystem-core
33
ARTIFACT_ID_DEFAULT_CONFIG=${ARTIFACT_ID}-default-config
44

5-
VERSION=3.0.0
6-
GOTAG?=1.25.1
5+
VERSION=3.0.1
6+
GOTAG?=1.26.0
7+
LINT_VERSION=v2.9.0
78

89
ADDITIONAL_CLEAN=clean_charts
9-
MAKEFILES_VERSION=10.2.1
10+
MAKEFILES_VERSION=10.6.0
1011

1112
IMAGE=cloudogu/${ARTIFACT_ID_DEFAULT_CONFIG}:${VERSION}
1213
IMAGE_DEV?=$(CES_REGISTRY_HOST)$(CES_REGISTRY_NAMESPACE)/$(ARTIFACT_ID_DEFAULT_CONFIG)/$(GIT_BRANCH)

build/make/build.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
ADDITIONAL_LDFLAGS?=-extldflags -static
44
LDFLAGS?=-ldflags "$(ADDITIONAL_LDFLAGS) -X main.Version=$(VERSION) -X main.CommitID=$(COMMIT_ID)"
55
GOIMAGE?=golang
6-
GOTAG?=1.24
6+
GOTAG?=1.25
77
GOOS?=linux
88
GOARCH?=amd64
99
PRE_COMPILE?=

build/make/k8s.mk

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ BINARY_YQ_4_VERSION?=v4.40.3
1111
BINARY_HELM = $(UTILITY_BIN_PATH)/helm
1212
BINARY_HELM_VERSION?=v3.13.0
1313
CONTROLLER_GEN = $(UTILITY_BIN_PATH)/controller-gen
14-
CONTROLLER_GEN_VERSION?=v0.14.0
14+
CONTROLLER_GEN_VERSION?=v0.19.0
1515

1616
# Setting SHELL to bash allows bash commands to be executed by recipes.
1717
# Options are set to exit when a recipe line exits non-zero or a piped command fails.
@@ -35,12 +35,16 @@ K3S_CLUSTER_FQDN?=k3ces.local
3535
K3S_LOCAL_REGISTRY_PORT?=30099
3636

3737
# The URL of the container-registry to use. Defaults to the registry of the local-cluster.
38-
# If RUNTIME_ENV is "remote" it is "registry.cloudogu.com/testing"
38+
# If RUNTIME_ENV is "remote" it is "registry.cloudogu.com/testing", if ENVIRONMENT is "ci" it is "registry.cloudogu.com/ci"
39+
# if run on ci (jenkins) the images must be pushed to a separate namespace in order to free space every night after the build.
3940
CES_REGISTRY_HOST?=${K3S_CLUSTER_FQDN}:${K3S_LOCAL_REGISTRY_PORT}
4041
CES_REGISTRY_NAMESPACE ?=
4142
ifeq (${RUNTIME_ENV}, remote)
4243
CES_REGISTRY_HOST=registry.cloudogu.com
4344
CES_REGISTRY_NAMESPACE=/testing
45+
ifeq ($(ENVIRONMENT), ci)
46+
CES_REGISTRY_NAMESPACE=/ci
47+
endif
4448
endif
4549
$(info CES_REGISTRY_HOST=$(CES_REGISTRY_HOST))
4650

build/make/release.sh

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,15 @@ else
4545
CURRENT_TOOL_VERSION=$(get_current_version_by_makefile)
4646
fi
4747

48+
BASE_VERSION=$(get_base_version_by_makefile)
49+
4850
NEW_RELEASE_VERSION="$(read_new_version)"
4951

5052
validate_new_version "${NEW_RELEASE_VERSION}"
5153
if [[ -n "${DRY_RUN}" ]]; then
5254
start_dry_run_release "${NEW_RELEASE_VERSION}"
5355
else
54-
start_git_flow_release "${NEW_RELEASE_VERSION}"
56+
start_git_flow_release "${NEW_RELEASE_VERSION}" "${BASE_VERSION}"
5557
fi
5658

5759
update_versions "${NEW_RELEASE_VERSION}"
@@ -60,9 +62,9 @@ update_releasenotes "${NEW_RELEASE_VERSION}"
6062
show_diff
6163

6264
if [[ -n "${DRY_RUN}" ]]; then
63-
abort_dry_run_release "${NEW_RELEASE_VERSION}"
65+
abort_dry_run_release "${NEW_RELEASE_VERSION}" "${BASE_VERSION}"
6466
else
65-
finish_release_and_push "${CURRENT_TOOL_VERSION}" "${NEW_RELEASE_VERSION}"
67+
finish_release_and_push "${CURRENT_TOOL_VERSION}" "${NEW_RELEASE_VERSION}" "${BASE_VERSION}"
6668
fi
6769

6870
echo "=====Finished Release process====="

build/make/release_functions.sh

Lines changed: 59 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@ get_current_version_by_makefile() {
2525
grep '^VERSION=[0-9[:alpha:].-]*$' Makefile | sed s/VERSION=//g
2626
}
2727

28+
get_base_version_by_makefile() {
29+
BASE_VERSION=$(grep '^BASE_VERSION=[0-9[:alpha:].-]*$' Makefile | sed s/BASE_VERSION=//g)
30+
echo "${BASE_VERSION}"
31+
}
32+
2833
get_current_version_by_dogu_json() {
2934
jq ".Version" --raw-output dogu.json
3035
}
@@ -52,24 +57,47 @@ validate_new_version() {
5257

5358
start_git_flow_release() {
5459
local NEW_RELEASE_VERSION="${1}"
60+
local BASE_RELEASE_VERSION="${2}"
61+
local BASE_DEV_BRANCH_NAME
62+
5563
# Do gitflow
5664
git flow init --defaults --force
5765

5866
local mainBranchExists
5967
mainBranchExists="$(git show-ref refs/remotes/origin/main || echo "")"
60-
if [ -n "$mainBranchExists" ]; then
61-
echo 'Using "main" branch for production releases'
62-
git flow config set master main
63-
git checkout main
64-
git pull origin main
68+
if [[ -z "$BASE_RELEASE_VERSION" ]]; then
69+
echo "BASE_RELEASE_VERSION variable is empty"
70+
if [ -n "$mainBranchExists" ]; then
71+
echo 'Using "main" branch for production releases'
72+
git flow config set master main
73+
git checkout main
74+
git pull origin main
75+
else
76+
echo 'Using "master" branch for production releases'
77+
git checkout master
78+
git pull origin master
79+
fi
80+
BASE_DEV_BRANCH_NAME="develop"
6581
else
66-
echo 'Using "master" branch for production releases'
67-
git checkout master
68-
git pull origin master
82+
echo "BASE_RELEASE_VERSION variable is not empty"
83+
if [[ ${NEW_RELEASE_VERSION} != ${BASE_RELEASE_VERSION}* ]]; then
84+
echo "ERROR: Release version (${NEW_RELEASE_VERSION}) does not start with base version (${BASE_RELEASE_VERSION})"
85+
exit 1
86+
fi
87+
88+
BASE_MAIN_BRANCH_NAME="${BASE_RELEASE_VERSION}/main"
89+
echo "Using ${BASE_MAIN_BRANCH_NAME} branch for production releases"
90+
git flow config set master ${BASE_MAIN_BRANCH_NAME}
91+
git checkout ${BASE_MAIN_BRANCH_NAME}
92+
git pull origin ${BASE_MAIN_BRANCH_NAME}
93+
BASE_DEV_BRANCH_NAME="${BASE_RELEASE_VERSION}/develop"
6994
fi
7095

71-
git checkout develop
72-
git pull origin develop
96+
git flow config set develop ${BASE_DEV_BRANCH_NAME}
97+
98+
git checkout ${BASE_DEV_BRANCH_NAME}
99+
git pull origin ${BASE_DEV_BRANCH_NAME}
100+
git flow config
73101
git flow release start v"${NEW_RELEASE_VERSION}"
74102
}
75103

@@ -81,8 +109,17 @@ start_dry_run_release() {
81109

82110
abort_dry_run_release() {
83111
local NEW_RELEASE_VERSION="${1}"
112+
local BASE_RELEASE_VERSION="${2}"
113+
114+
local BASE_DEV_BRANCH_NAME
115+
116+
if [[ -z "$BASE_RELEASE_VERSION" ]]; then
117+
BASE_DEV_BRANCH_NAME="develop"
118+
else
119+
BASE_DEV_BRANCH_NAME="${BASE_RELEASE_VERSION}/develop"
120+
fi
84121

85-
git checkout develop
122+
git checkout ${BASE_DEV_BRANCH_NAME}
86123
git branch -D dryrun/v"${NEW_RELEASE_VERSION}"
87124
}
88125

@@ -302,12 +339,22 @@ show_diff() {
302339
finish_release_and_push() {
303340
local CURRENT_VERSION="${1}"
304341
local NEW_RELEASE_VERSION="${2}"
342+
local BASE_RELEASE_VERSION="${3}"
305343

306344
# Push changes and delete release branch
307345
wait_for_ok "Upgrade from version v${CURRENT_VERSION} to version v${NEW_RELEASE_VERSION} finished. Should the changes be pushed?"
308346
git push origin release/v"${NEW_RELEASE_VERSION}"
309347

310348
echo "Switching back to develop and deleting branch release/v${NEW_RELEASE_VERSION}..."
311-
git checkout develop
349+
350+
local BASE_DEV_BRANCH_NAME
351+
352+
if [[ -z "$BASE_RELEASE_VERSION" ]]; then
353+
BASE_DEV_BRANCH_NAME="develop"
354+
else
355+
BASE_DEV_BRANCH_NAME="${BASE_RELEASE_VERSION}/develop"
356+
fi
357+
358+
git checkout ${BASE_DEV_BRANCH_NAME}
312359
git branch -D release/v"${NEW_RELEASE_VERSION}"
313360
}

build/make/static-analysis.mk

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22

33
STATIC_ANALYSIS_DIR=$(TARGET_DIR)/static-analysis
44
GOIMAGE?=golang
5-
GOTAG?=1.24
5+
GOTAG?=1.25
66
CUSTOM_GO_MOUNT?=-v /tmp:/tmp
77

88
REVIEW_DOG=$(TMP_DIR)/bin/reviewdog
99
LINT=$(TMP_DIR)/bin/golangci-lint
10-
LINT_VERSION?=v2.1.6
10+
LINT_VERSION?=v2.5.0
1111
# ignore tests and mocks
1212
LINTFLAGS=--tests=false --timeout 10m --issues-exit-code 0
1313
ADDITIONAL_LINTER=-E bodyclose -E containedctx -E contextcheck -E decorder -E dupl -E errname -E forcetypeassert -E funlen -E unparam

default-config/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
################################################################################
1010
# Create a stage for building the application.
1111

12-
ARG GO_VERSION=1.25.1
12+
ARG GO_VERSION=1.26.0
1313

1414
ARG UID=65532
1515
ARG GID=$UID

default-config/go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/cloudogu/ecosystem-core/default-config
22

3-
go 1.25.1
3+
go 1.26.0
44

55
require (
66
github.com/cloudogu/ces-commons-lib v0.2.0

0 commit comments

Comments
 (0)