Skip to content

Use Debian 13 for Hetzner instances - #173

Merged
alexellis merged 1 commit into
inlets:masterfrom
welteki:update-hetzner-os
Feb 25, 2026
Merged

Use Debian 13 for Hetzner instances#173
alexellis merged 1 commit into
inlets:masterfrom
welteki:update-hetzner-os

Use Debian 13 for Hetzner instances

21ef0a4
Select commit
Loading
Failed to load commit list.
reviewfn / succeeded Feb 25, 2026 in 54s

AI Code Review Results

AI Pull Request Overview

Summary

  • Updates the default OS image for Hetzner instances from ubuntu-22.04 to debian-13
  • Change affects new tunnel provisioning only; no migration needed for existing users
  • E2E tested with successful exit tunnel provisioning on Hetzner
  • No documentation or unit tests added as per checklist

Approval rating (1-10)

7 - Simple change with E2E testing, but potential risk if debian-13 image slug is invalid or unsupported by Hetzner API.

Summary per file

Summary per file
File path Summary
controller.go Changed default OS image for Hetzner from ubuntu-22.04 to debian-13

Overall Assessment

The pull request introduces a minimal change to switch the default operating system for newly provisioned Hetzner instances from Ubuntu 22.04 to Debian 13. The modification is isolated to a single line in the getHostConfig function and has been verified through end-to-end testing. However, concerns exist regarding the validity of "debian-13" as an image identifier, as Debian 13 (Trixie) may not be the current stable release or supported by Hetzner's infrastructure at this time. If the image slug is incorrect, it could lead to provisioning failures for new tunnels.

Detailed Review

Detailed Review

controller.go

  • Line 869: The OS field for Hetzner provider is updated from "ubuntu-22.04" to "debian-13". This change ensures consistency with other providers like DigitalOcean, which already uses "debian-13-x64".
  • Risk Assessment: Verify that "debian-13" is a valid image slug in Hetzner's API. Hetzner's documentation (referenced in the code comment) should be checked to confirm availability. If Debian 13 is not yet released or supported, provisioning will fail with an API error, potentially breaking new tunnel creation for Hetzner users.
  • Compatibility: Assuming Debian 13 is based on Debian 12 or similar, inlets (a Go binary) should run without issues. However, any OS-specific dependencies in the provisioning or inlets installation scripts must be compatible.
  • Testing: The PR mentions E2E testing with a successful provisioning, which mitigates immediate concerns. However, no unit tests were added to validate the OS string or handle potential API failures.
  • Alternatives: If Debian 13 is not available, consider using "debian-12" (current stable) or the latest supported Debian image from Hetzner's API.
  • Security/Performance: No apparent security or performance implications, as the change is only the base OS image.
  • Consistency: Aligns the Hetzner configuration with other cloud providers using Debian images, improving codebase uniformity.

No other files were modified, and the change does not impact existing functionality or require migrations.

AI agent details.

Agent processing time: 43.119s
Environment preparation time: 6.953s
Total time from webhook: 58.329s