Skip to content

Releases: Octops/gameserver-ingress-controller

v0.5.0

27 Mar 12:46
b32839b

Choose a tag to compare

What's Changed

New: --enable-gateway-api flag

Fixes a startup crash for users not using the Gateway API backend. The controller previously always created a Gateway API informer, which failed fatally when httproutes.gateway.networking.k8s.io CRD was not installed — breaking all ingress-only deployments after upgrading to v0.4.0.

The new flag controls the Gateway API backend at startup:

Value Behaviour
auto (default) Probe the cluster at startup. Enable if the HTTPRoute CRD is present, warn and disable if absent. Safe for all existing deployments — no action required.
true Always enable. Fail hard at startup if the CRD is missing.
false Always disable. No informer or client created.

If a game server uses octops.io/router-backend: gateway while the backend is disabled, the controller logs a clear, actionable error for that specific game server.

Gateway API backend (introduced in this release)

  • Opt in per Fleet/GameServer with octops.io/router-backend: gateway
  • Creates one HTTPRoute per game server attached to a shared pre-provisioned Gateway
  • Supports both domain and path routing modes
  • TLS managed on the Gateway listener — avoids Let's Encrypt rate limits at scale
  • See README for setup instructions

Upgrade Notes

  • The default --enable-gateway-api=auto is a safe drop-in for all existing deployments. No flag change required.
  • If your cluster does not have Gateway API CRDs installed and you want to be explicit, add --enable-gateway-api=false to the controller args.
  • Docker image: octops/gameserver-ingress-controller:0.5.0

Full Changelog

v0.4.0...v0.5.0

v0.4.0

27 Mar 11:35

Choose a tag to compare

What's Changed

Upgrades

  • Upgraded Agones to v1.56.0
  • Upgraded controller-runtime to v0.23.3
  • Upgraded Go to 1.26.1
  • Updated GitHub Actions to non-deprecated versions

Deploy

kubectl apply -f https://raw.githubusercontent.com/Octops/gameserver-ingress-controller/main/deploy/install.yaml

Docker image: octops/gameserver-ingress-controller:0.4.0

v0.3.0

15 May 17:50
a6807fb

Choose a tag to compare

What is new

  • Support ingressClassName #47

v0.2.9

04 Jan 17:22
3e8900c

Choose a tag to compare

What

Image Tag: octops/gameserver-ingress-controller:0.2.9

v0.2.8

30 Sep 12:14
53a482c

Choose a tag to compare

What changed

Added the max-concurrent-reconciles flag (#58)
The previous default was 1 and it is now 10. Users can now set the concurrency according to their needs. This is particularly important for users running large game fleets that might trigger thousands of updates.

v0.2.7

22 Jul 15:16
cf37080

Choose a tag to compare

What is new

Dependencies Updates

  • Go 1.20
  • Agones 1.33
  • K8S 1.27.4
  • Controller Runtime 0.15.0

Docker Image Released

  • docker pull octops/gameserver-ingress-controller:0.2.7

v0.2.6

25 Feb 12:06
1e0403e

Choose a tag to compare

What is new

  • Do not add the TLS section to Ingress if terminate TLS is false #50
  • Manifests updates

v0.2.5

26 Jan 22:13
cb49f1a

Choose a tag to compare

What is new

  • The service created by the controller is now a headless service. That reduces the load on the kubernetes cluster and network components when deploying fleet bigger than 5K game servers
  • Reconciler is less verbose and it will log when new ingress resource is created/updated

v0.2.4

15 Jan 11:49
ce93b8e

Choose a tag to compare

What is new

The controller now supports multiple domains for both routing modes. That means the game server can be accessed by triggering requests to any of the configured domains.

This configuration must be part of the Fleet annotation as the example below:

annotations:
  # Domain Mode
  octops.io/gameserver-ingress-domain: "example.com,example.gg"
  # Path Mode
  octops.io/gameserver-ingress-fqdn: "www.example.com,www.example.gg"

v0.2.3

10 Dec 18:23
3dda5c1

Choose a tag to compare

  • Update Agones to 1.28
  • Update Go to 1.19