Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
2e9d43d
Revendor g/g v1.107.0 and support k8s v1.31+
lotharbach Mar 7, 2025
b63aa39
Revendor g/g v1.113.0 and support k8s v1.32
lotharbach Apr 1, 2025
786510c
Update to VPA v1
lotharbach Jun 18, 2025
018cc8d
Fix VPA v1
lotharbach Jun 18, 2025
515c10d
revendor g/g v1.119.0
lotharbach Jun 18, 2025
c68d121
Update docker go
lotharbach Jun 18, 2025
e4cee5c
Allow heartbeat lease patch
lotharbach Jun 18, 2025
195aebb
Fix machineDeploymentStrategy
lotharbach Jun 18, 2025
2c28759
revendor g/g v1.122.3
lotharbach Oct 30, 2025
656651b
Re-Vendor to Gardener 1.144.1
christianhuening Jun 11, 2026
ccd01a6
set containerd to 1.7.x as there's a known regression in containers 2.2
christianhuening Jun 12, 2026
fdc2455
Merge upstream/main into odp/gardener-revendor
christianhuening Jun 18, 2026
613e2a0
Re-Vendor to Gardener 1.146.4
christianhuening Jul 17, 2026
b4caa6e
Use ServerType.Locations for machine type availability
christianhuening Jul 17, 2026
d0558fe
Update images and Go builder
christianhuening Jul 17, 2026
5929074
Add Renovate version ceilings and disable gomod automerge
christianhuening Jul 17, 2026
915979c
v0.7.0-odp.3
christianhuening Jul 17, 2026
ef517ea
Update GitHub Actions to latest and enable the github-actions Renovat…
christianhuening Jul 17, 2026
b0c2e01
bum to v0.7.0-odp.5
christianhuening Jul 17, 2026
8419a76
Populate the module cache before make generate
christianhuening Jul 17, 2026
7b1d3dd
Fix FROM/AS casing
christianhuening Jul 17, 2026
f8a7cca
update to v0.7.0-odp.6
christianhuening Jul 17, 2026
50f7fa3
use patched mcm controller from my repo
christianhuening Jul 17, 2026
fe3a1a3
Add workflow_dispatch trigger to release workflow
christianhuening Jul 18, 2026
18f90ae
refactor: rename Go module path to github.com/opendefensecloud
christianhuening Jul 19, 2026
e2794ea
build: repoint container images to ghcr.io/opendefensecloud
christianhuening Jul 19, 2026
80a7a52
chore: sync GitHub issue/PR templates from gardener hack
christianhuening Jul 19, 2026
9f0ca2d
Merge remote-tracking branch 'origin/main' into odp/gardener-revendor
christianhuening Jul 19, 2026
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: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ about: Report a bug encountered while working with this Gardener extension

---

<!-- Please ensure that you do not include company internal information. -->

**How to categorize this issue?**
<!--
Please select area, kind, and priority for this issue. This helps the community categorizing it.
Expand Down
2 changes: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/feature.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ about: Suggest an enhancement for this extension

---

<!-- Please ensure that you do not include company internal information. -->

**How to categorize this issue?**
<!--
Please select area, kind, and priority for this issue. This helps the community categorizing it.
Expand Down
2 changes: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/flaking-test.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ title: "[Flaky Test] FLAKING TEST/SUITE"

---

<!-- Please ensure that you do not include company internal information. -->

<!-- Please only use this template for submitting reports about flaky tests or jobs (pass or fail with no underlying change in code) in Gardener CI -->

**How to categorize this issue?**
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/support.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ STOP -- PLEASE READ!

GitHub is not the right place for support requests.

If you're looking for help, please post your question on the [Kubernetes Slack](http://slack.k8s.io/) ([#gardener](https://kubernetes.slack.com/messages/gardener) channel) or join our [bi-weekly meetings](https://gardener.cloud/docs/contribute/#bi-weekly-meetings).
If you're looking for help, please post your question on [Slack](https://join.slack.com/t/gardener-cloud/shared_invite/zt-33c9daems-3oOorhnqOSnldZPWqGmIBw) or join our [bi-weekly meetings](https://gardener.cloud/community/).
-->
7 changes: 5 additions & 2 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
<!-- Please ensure that you do not include company internal information. -->

**How to categorize this PR?**
<!--
Please select area, kind, and priority for this pull request. This helps the community categorizing it.
Expand All @@ -7,10 +9,11 @@ If multiple identifiers make sense you can also state the commands multiple time
/area auto-scaling
...

If the PR affects cryptography or security mechanisms (encryption, keys, ciphers, hashes, signatures, etc.), mark it as crypto relevant.
/label crypto

"/area" identifiers: audit-logging|auto-scaling|backup|compliance|control-plane-migration|control-plane|cost|delivery|dev-productivity|disaster-recovery|documentation|high-availability|logging|metering|monitoring|networking|open-source|ops-productivity|os|performance|quality|robustness|scalability|security|storage|testing|usability|user-management
"/kind" identifiers: api-change|bug|cleanup|discussion|enhancement|epic|flake|impediment|poc|post-mortem|question|regression|task|technical-debt|test

For Gardener Enhancement Proposals (GEPs), please check the following [documentation](https://github.com/gardener/gardener/tree/master/docs/proposals/README.md) before submitting this pull request.
-->
/area TODO
/kind TODO
Expand Down
58 changes: 56 additions & 2 deletions .github/renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@
"forkProcessing": "enabled",
"enabledManagers": [
"gomod",
"custom.regex"
"custom.regex",
"github-actions"
],
"prCreation": "immediate",
"recreateWhen": "always",
Expand Down Expand Up @@ -62,11 +63,64 @@
"matchManagers": [
"gomod"
],
"automerge": true,
"addLabels": [
"go module"
]
},
{
"matchManagers": [
"gomod"
],
"groupName": "gardener",
"matchPackageNames": [
"github.com/gardener/gardener",
"github.com/gardener/gardener/pkg/apis",
"github.com/gardener/gardener/hack/tools"
]
},
{
"matchManagers": [
"gomod"
],
"matchPackageNames": [
"k8s.io/api",
"k8s.io/apiextensions-apiserver",
"k8s.io/apimachinery",
"k8s.io/apiserver",
"k8s.io/client-go",
"k8s.io/code-generator",
"k8s.io/component-base",
"k8s.io/kubelet"
],
"allowedVersions": "<0.36.0"
},
{
"matchManagers": [
"gomod"
],
"matchPackageNames": [
"sigs.k8s.io/controller-runtime"
],
"allowedVersions": "<0.24.0"
},
{
"matchManagers": [
"gomod"
],
"matchPackageNames": [
"sigs.k8s.io/controller-tools"
],
"allowedVersions": "<0.21.0"
},
{
"matchManagers": [
"gomod"
],
"matchPackageNames": [
"k8s.io/autoscaler/vertical-pod-autoscaler"
],
"allowedVersions": "<1.7.0"
},
{
"matchFileNames": [
"charts/images.yaml"
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ jobs:
name: "End-to-End test"
steps:
- name: Checkout source
uses: actions/checkout@v4
uses: actions/checkout@v7.0.0
- name: install Dependencies
run: sudo apt-get update && sudo apt-get install -y apache2 git curl make jq openssh-client
- name: Setup Go
uses: actions/setup-go@v3
uses: actions/setup-go@v7.0.0
with:
go-version: ">=1.21.0"
go-version-file: go.mod
- name: Setup Gardener kubeconfig
run: |
echo "${{ secrets.GARDENER_KUBECONFIG }}" > hack/ci/secrets/gardener-kubeconfig.yaml
Expand All @@ -33,7 +33,7 @@ jobs:
run: |
bash hack/ci/01-shoot-for-seed.sh
- name: Prepare and start Gardener
uses: nick-fields/retry@v3
uses: nick-fields/retry@v4.0.0
env:
CI: false
with:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/on-pr-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
go-version: [ 1.21 ]
go-version: [ "1.26" ]

steps:
- name: Checkout commit
uses: actions/checkout@v2
uses: actions/checkout@v7.0.0
- name: Set up Go ${{ matrix.go-version }}
uses: actions/setup-go@v2
uses: actions/setup-go@v7.0.0
with:
go-version: ${{ matrix.go-version }}
- name: Execute build
Expand Down
36 changes: 22 additions & 14 deletions .github/workflows/on-release-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,29 +3,34 @@ name: go:release
on:
push:
tags: 'v*'

workflow_dispatch:

jobs:
create-release:
runs-on: ubuntu-latest
permissions:
contents: write

steps:
- name: Checkout commit
uses: actions/checkout@v3
uses: actions/checkout@v7.0.0
- name: Update VERSION file
run: |-
echo "${{ github.ref_name }}" > VERSION
- name: Setup Go
uses: actions/setup-go@v3
uses: actions/setup-go@v7.0.0
with:
go-version: ">=1.21.0"
go-version-file: go.mod
- name: Create controller-registration.yaml
run: |-
GOPATH=$(go env GOPATH)
export GOPATH

# Populate the module cache before make: the Makefile resolves
# GARDENER_HACK_DIR and GARDENER_TOOL_DIR via `go list -m -f {{.Dir}}`
# at parse time, which returns empty for modules that are not extracted.
go mod download

make generate
- name: Create Release
uses: softprops/action-gh-release@v1
uses: softprops/action-gh-release@v3.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
Expand All @@ -36,6 +41,9 @@ jobs:
example/controller-registration.yaml
go-publish:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
strategy:
matrix:
include:
Expand All @@ -44,23 +52,23 @@ jobs:

steps:
- name: Checkout commit
uses: actions/checkout@v3
uses: actions/checkout@v7.0.0
- name: Update VERSION file
run: |-
echo "${{ github.ref_name }}" > VERSION
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
uses: docker/setup-buildx-action@v4.2.0
- name: Login to GitHub Container Registry
uses: docker/login-action@v1
uses: docker/login-action@v4.4.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Publish image
uses: docker/build-push-action@v2
uses: docker/build-push-action@v7.3.0
with:
target: ${{ matrix.name }}
push: true
tags: |
ghcr.io/23technologies/${{ matrix.name }}:latest
ghcr.io/23technologies/${{ matrix.name }}:${{ github.ref_name }}
ghcr.io/${{ github.repository_owner }}/${{ matrix.name }}:latest
ghcr.io/${{ github.repository_owner }}/${{ matrix.name }}:${{ github.ref_name }}
4 changes: 2 additions & 2 deletions .github/workflows/renovate.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4.1.1
uses: actions/checkout@v7.0.0
- name: Self-hosted Renovate
uses: renovatebot/github-action@v40.1.4
uses: renovatebot/github-action@v46.1.19
with:
configurationFile: .github/renovate.json
token: ${{ secrets.RENOVATE_TOKEN }}
Expand Down
2 changes: 1 addition & 1 deletion CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# gardener-extension-provider-hcloud maintainers
* @23technologies/developers
* /developers
9 changes: 4 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
############# builder
FROM golang:1.23.0 AS builder
FROM golang:1.26.5 AS builder

ENV BINARY_PATH=/go/bin
WORKDIR /go/src/github.com/23technologies/gardener-extension-provider-hcloud
WORKDIR /go/src/github.com/opendefensecloud/gardener-extension-provider-hcloud

# cache deps before building and copying source so that we don't need to re-download as much
# and so that source changes don't invalidate our downloaded layer
Expand All @@ -16,13 +16,13 @@ ARG EFFECTIVE_VERSION
RUN make install EFFECTIVE_VERSION=$EFFECTIVE_VERSION

############# base
FROM gcr.io/distroless/static-debian11:nonroot as base
FROM gcr.io/distroless/static-debian12:nonroot AS base

WORKDIR /

############# gardener-extension-provider-hcloud
FROM base AS gardener-extension-provider-hcloud
LABEL org.opencontainers.image.source="https://github.com/23technologies/gardener-extension-provider-hcloud"
LABEL org.opencontainers.image.source="https://github.com/opendefensecloud/gardener-extension-provider-hcloud"

COPY charts /charts
COPY --from=builder /go/bin/gardener-extension-provider-hcloud /gardener-extension-provider-hcloud
Expand All @@ -33,4 +33,3 @@ FROM base AS gardener-extension-admission-hcloud

COPY --from=builder /go/bin/gardener-extension-admission-hcloud /gardener-extension-admission-hcloud
ENTRYPOINT ["/gardener-extension-admission-hcloud"]

9 changes: 5 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ GARDENER_HACK_DIR := $(shell go list -m -f "{{.Dir}}" github.com/gardener/g
EXTENSION_PREFIX := gardener-extension
NAME := provider-hcloud
ADMISSION_NAME := admission-hcloud
REGISTRY := ghcr.io/23technologies
REGISTRY := ghcr.io/opendefensecloud
IMAGE_PREFIX := $(REGISTRY)/gardener-extension-provider-hcloud
REPO_ROOT := $(shell dirname $(realpath $(lastword ${MAKEFILE_LIST})))
HACK_DIR := ${REPO_ROOT}/hack
KUBECONFIG := dev/kubeconfig.yaml
MANAGER_CONFIG_FILE := example/00-componentconfig.yaml
PROJECT_NAME := 23technologies
PROJECT_NAME := opendefensecloud
VERSION := $(shell cat "${REPO_ROOT}/VERSION")
EFFECTIVE_VERSION := $(VERSION)-$(shell git rev-parse HEAD)
LD_FLAGS := "-w $(shell bash $(GARDENER_HACK_DIR)/get-build-ld-flags.sh k8s.io/component-base $(REPO_ROOT)/VERSION $(EXTENSION_PREFIX))"
Expand Down Expand Up @@ -141,8 +141,9 @@ check: $(GOIMPORTS) $(GOLANGCI_LINT)
@REPO_ROOT=$(REPO_ROOT) bash $(GARDENER_HACK_DIR)/check-charts.sh ./charts

.PHONY: generate
generate: $(VGOPATH) $(CONTROLLER_GEN) $(GEN_CRD_API_REFERENCE_DOCS) $(HELM) $(MOCKGEN) $(YQ)
@REPO_ROOT=$(REPO_ROOT) VGOPATH=$(VGOPATH) GARDENER_HACK_DIR=$(GARDENER_HACK_DIR) bash $(GARDENER_HACK_DIR)/generate-sequential.sh ./charts/... ./cmd/... ./example/... ./pkg/...
generate: $(CONTROLLER_GEN) $(GEN_CRD_API_REFERENCE_DOCS) $(HELM) $(MOCKGEN) $(YQ)
@go mod download
@REPO_ROOT=$(REPO_ROOT) GARDENER_HACK_DIR=$(GARDENER_HACK_DIR) bash $(GARDENER_HACK_DIR)/generate-sequential.sh ./charts/... ./cmd/... ./example/... ./pkg/...
$(MAKE) format

.PHONY: format
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ This way, we can keep Gardener core clean and independent.

This controller implements Gardener's extension contract for the Hetzner cloud provider.

The latest release's `ControllerRegistration` resource that can be used to register this controller to Gardener can be found [here](https://github.com/23technologies/gardener-extension-provider-hcloud/releases/latest/download/controller-registration.yaml).
The latest release's `ControllerRegistration` resource that can be used to register this controller to Gardener can be found [here](https://github.com/opendefensecloud/gardener-extension-provider-hcloud/releases/latest/download/controller-registration.yaml).

Please find more information regarding the extensibility concepts and a detailed proposal [here](https://github.com/gardener/gardener/blob/master/docs/proposals/01-extensibility.md).

Expand Down Expand Up @@ -42,7 +42,7 @@ Static code checks and tests can be executed by running `VERIFY=true make all`.

## Feedback and Support

Feedback and contributions are always welcome. Please report bugs or suggestions as [GitHub issues](https://github.com/23technologies/gardener-extension-provider-hcloud/issues) or join our [Slack channel #gardener](https://kubernetes.slack.com/messages/gardener) (please invite yourself to the Kubernetes workspace [here](http://slack.k8s.io)).
Feedback and contributions are always welcome. Please report bugs or suggestions as [GitHub issues](https://github.com/opendefensecloud/gardener-extension-provider-hcloud/issues) or join our [Slack channel #gardener](https://kubernetes.slack.com/messages/gardener) (please invite yourself to the Kubernetes workspace [here](http://slack.k8s.io)).

## Learn more!

Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v0.0.0-dev
v0.7.0-odp.7
2 changes: 1 addition & 1 deletion charts/gardener-extension-admission-hcloud/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ global:
user:
name: ""
image:
repository: ghcr.io/23technologies/gardener-extension-provider-hcloud/admission
repository: ghcr.io/opendefensecloud/gardener-extension-admission-hcloud
tag: latest
pullPolicy: IfNotPresent
replicaCount: 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ rules:
- get
- watch
- update
- patch
- apiGroups:
- ""
- apps
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{{- if .Values.vpa.enabled}}
apiVersion: "autoscaling.k8s.io/v1beta2"
apiVersion: "autoscaling.k8s.io/v1"
kind: VerticalPodAutoscaler
metadata:
name: {{ include "name" . }}-vpa
Expand Down
2 changes: 1 addition & 1 deletion charts/gardener-extension-provider-hcloud/values.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
image:
repository: ghcr.io/23technologies/gardener-extension-provider-hcloud
repository: ghcr.io/opendefensecloud/gardener-extension-provider-hcloud
tag: latest
pullPolicy: IfNotPresent

Expand Down
Loading